微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 双RAM技术在LED显示屏控制系统的应用

双RAM技术在LED显示屏控制系统的应用

时间:03-15 来源:3721RD 点击:

  显示步骤(在此,只考虑垂直移动显示效果):双RAM技术将显示数据输出的时候,是将两块RAM中相同地址的两个数据同时输出。所以,如果设置RAM0为主存储器,RAM1为从存储器,则将两块RAM的显示数据存在一块串行存储器中的时候,偶地址单元应存储RAM0的数据,奇地址单元存储RAM1的数据,由于数据宽度为8,所以每次输出16位数据。如果显示区域中以( )点为显示起始点,在LED屏上显示一屏显示信息,则其数据选择控制位只与 、扫描线和扫描宽度 有关[3]。显示区域的起始行坐标为 ,一块显示区域有 行,则 所在的块为:

  

  这里讨论 在实际显示区域的坐标没有多大意义,只须注意 在当前显示块的相对坐标, 就是 在当前显示块的相对纵坐标,则相对坐标为( )。动态显示的基础是静态显示,静态显示以从特定行显示一屏为特征,当显示屏从第 行开始显示信息时,因为一块显示区域有 个数据,则 所在块显示数据的起始地址为:

  

  一块显示区域分为 个区,如图2所示,则 所在的分区记作:

  

  一区存放有 个显示数据,所以 所在分区地址与所在块起始地址之间的相对偏移地址为 。所以,只要知道了显示信息的起始行坐标,就能得到显示数据在存储器中的存储地址。

  因为 ,记 ,表示显示信息跨越两个数据块时,需要选择的数据位数。存储器输出16位数据 后,从 位控制选择连续的8位数据 输出到显示屏。当数据从一个字节的 位开始输出16位时,如 ,前面8位在当前显示是多余的几位数据,后面8位数据 正好是要输出到显示屏的8位数据,当这16位数据串行输出到一个8位的移位寄存器中时,移位寄存器刚好可以容纳高8位数据,并将其输出显示。之后各列数据的输出情况同样如此,不需要额外的指令或电路来对输出数据进行选择输出。

只是在每行第一列数据输出前,通过单片机模拟i个时钟脉冲输出到存储器,让输出数据产生错位,使数据从 位开始输出。另外有一种情况,当显示信息刚好是A、B、C、D块中的某一块时,无须产生模拟脉冲对数据进行选择,而是直接将数据输出显示。通过分析可知,SPI模块刚好具有这个功能,通过单片机额外模拟 个时钟脉冲,输出到串行存储器的时钟信号端,可以使数据错位,从指定的某一位 开始输出。当显示信息跨越 区间时,此时如果一场显示还没有完毕,内存地址应返回到 所在块的起始地址,并从起始地址开始输出显示数据,单片机模拟的脉冲数 也相应发生变化[4]。

  2 LED显示屏控制系统设计

  为了简化电路,提高数据输出效率,本控制系统采用RAMTRON(瑞创)公司的带SPI功能模块的VRS51L3074单片机,如图3所示。VRS51L3074单片机的时钟频率为40MHz,指令周期短,处理速度快,效率可以与ARM处理器媲美,但是ARM处理器的价格要高得多。VRS51L3074单片机工作电压在3.3V左右,但是可以兼容5V[5]。

  

  图3 LED显示屏控制电路

  2.1 VRS51L3074的SPI功能模块

  SPI 是英文Serial Peripheral Interface的缩写,中文意思是串行外围设备接口,SPI是Motorola公司推出的一种同步串行通讯方式,是一种四线同步总线,因其硬件功能很强,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(用于单向传输时,也就是半双工方式)。也是所有基于SPI的设备共有的,它们是SDI(数据输入),SDO(数据输出),SCLK(时钟),CS(片选)。

  VRS51L3074单片机的SPI时钟频率可以在 范围内调整,SPI时钟频率最高可以达到20MHz[6]。当VRS51L3074作为SPI主机时,可以对SPI运行控制、配置和状态监控以及其他的一些工作环境进行设置:

  配置寄存器SPICONFIG:主要对片选信号控制模式、SPI中断进行设置。

  状态寄存器SPISTATUS:主要用于对SPI运行状态的监控。

  传输字长寄存器SPISIZE:设置传输字长,本文设置为16位,即每次输出16位数据。

  控制寄存器SPICTRL:对SPI时钟速率、时钟相位/极性、片选信号,以及SPI时钟频率进行设置。

  数据寄存器SPIRXTX0~ SPIRXTX3:用于对SPI接口32位收发缓冲器的访问,对数据寄存器执行写操作是将数据送入发送缓冲器中,对数据寄存器执行读操作是从接收缓冲器中取出收到的数据。SPI接口的发送和接收缓冲器都采用双缓冲结构,从硬件上减少数据冲突并提高数据传输效率。在主模式下对SPIRXTX0寄存器执行写入操作将启动SPI传输。当传输字各行长大于8时,应最后向SPIRXTX0寄存器写入。

向串行FLASH输入控制信号和数据地址后,启动串行FLASH传输数

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top