双RAM技术的LED显示屏控制系统设计

发布者:shengju最新更新时间:2013-11-11 来源: eefocus关键字:双RAM技术  LED  刷新频率 手机看文章 扫描二维码
随时随地手机看文章

  引言

  长条的LED显示屏在生活中应用得很多,这种显示屏的控制电路简单,扫描线有限,显示信息量也不是很大。当显示信息量比较大时,若采用一般的长屏显示屏,显示信息过慢,即使采用超长屏的显示屏,其数据输出速率也很低,而且显示屏的刷新频率也不一定能满足显示需求。矩形显示屏显示的信息量大,并且可以按需要扩展显示屏的高度,不存在频率上的限制,能够弥补长条显示屏显示信息时存在的不足。本设计使用双RAM技术来组织用于控制矩形显示屏的控制系统数据,提高了信息垂直循环显示时的存储器效率,大幅度降低了对数据存储器的占用率,并且对刷新频率的要求也不是很高。

  1 显示数据组织

  需要显示的区域小于或等于实际显示区域时,采用静态显示即可。但大多时候需要显示的区域大于或等于实际显示区域,如图1所示。为了简化问题的分析,本文将显示区域高度设置为LED显示屏高度的4倍,宽度等于LED显示屏宽度。设显示屏的高度为Lh,宽度为Lw,则显示区域高度Dh=4Lh,宽度Dw=Lw。本文以单色显示作为描述对象,且Bw=Bn=8(Bw为扫描线条数,Bn为输出数据宽度),如图1所示。

 

  对于一个LED显示屏,宽度Lw和高度Lh确定后,显示屏单元板的排列方式也就确定了。单元板相邻的两条扫描线之间的距离为Sw,显示屏有Bw条扫描线,分别是Y0,Y1,…,YBw-1。每Sw行对应一位显示数据,显示屏上的每一个点对应于存储器中某个字节的某一位。Bw条扫描线分别指向:Y0=O,Y1=Sw,…,BBw-1=(Bw-1)Sw。用静态显示数据组织方法分别对显示块A、B、C、D组织显示数据。首先对显示块A的显示信息进行组织(X为列号):

  ①X=0,即当前扫描线各行与第O列相交各点的显示数据按D0,D1,…,DBw-1的顺序存储在存储器的第一个存储单元中。

  ②X值增加1,当前扫描线各行与X值对应列相交各点的显示数据存储在存储器的下一个存储单元中。直至将X=O至X=Dw-1的Dw个数据按顺序全部存储在存储器中。

  ③Bw条扫描线向下移动一行,重复第①至②步,直到Y0移动到Sw-1行时。

  ④数据组织结束。

  显示区域B、C、D分别按照A的数据组织方式去组织显示数据。组织后的显示数据块按A、B、C、D的顺序存储在RAM0里,然后将RAM0中的显示数据块A、B、C、D按B、C、D、A的顺序拷贝到RAMl中,任何两个相邻显示块的显示数据在两块RAM中都有相同的地址存储区域。RAM0和RAMl的显示数据与存储器的对应关系如图2所示。

 

  如图2所示,扫描组1从Y0=0到Y0=Sw-1,对应显示块A,数据已组织存放在存储器中,可以直接输出显示数据;扫描组2从Y0=Lh到Y0=Lh+ Sw-1,对应显示块B也已经组织好,可以直接输出。但是扫描组3,它的位置非同一般,它的扫描线分别对应着两个块A和B;第O,1,…Bw-1条扫描线分别对应显示块A扫描组1的1,2,…,Bw-2;而第Bw-1条扫描线就对应显示块B扫描组2的第O条扫描线。如果要在显示屏上显示扫描组3对应的这一屏数据,就一定要同时使用到扫描组1的第1,2,…,Bw-1条扫描线和扫描组2的第O条扫描线组织的显示数据作为输出数据。由于显示块A和B的显示数据是分别组织的,这时就要取RAM0的D0,D2,…,DBw-1和RAMl的D0位作为输出到显示屏的Bw位数据,这就需要在两块RAM同时输出的2Bw位中选择需要的Bw位作为输出数据,并且这Bw位数据是连续的。[page]

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

 

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

 

  一块显示区域分为Sw个区,则YL所在的分区记作:

 

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

       NL=YL/(Bw·Sw),这里记i=NL/Sw(0≤i≤7),表示显示信息跨越两个数据块时需要选择的数据位数。存储器输出16位数据[D0,D1,…,D15]后,从Di位控制选择连续的8位数据[Di,Di+1,…,D7,…,D7+i]输出到显示屏。当数据从一个字节的Di位开始输出16位时,如[Di,Di+1,…,D7,…,D15,D0,…,Di-1],前面8位在当前显示是多余的几位数据,后面8位数据[D8+i,…,D15,D0,…,Di-1]正好是要输出到显示屏的8位数据。当这16位数据串行输出到一个8位的移位寄存器中时,移位寄存器刚好可以容纳高8位数据,并将其输出显示。之后各列数据的输出情况同样如此,不需要额外的指令或电路来对输出数据进行选择输出。只是在每行第一列数据输出前,通过单片机模拟i个时钟脉冲输出到存储器,让输出数据产生错位,使数据从Di位开始输出。另外,当显示信息刚好是A、B、C、D块中的某一块时,无须产生模拟脉冲对数据进行选择,而是直接将数据输出显示。通过分析可知,SPI模块刚好具有这个功能,通过单片机额外模拟i个时钟脉冲,输出到串行存储器的时钟信号端,可以使数据错位,从指定的某一位Di开始输出。当显示信息跨越Sw-1区间时,如果一场显示还没有完毕,内存地址应返回到YL所在块的起始地址,并从起始地址开始输出显示数据,单片机模拟的脉冲数i也相应发生变化。

  2 LED显示屏控制系统设计

  LED显示屏控制电路。为了提高数据输出效率,采用RAMtron公司的带SPI功能模块的VRS51L3074单片机。VRS51L3074的时钟频率为40 M-Hz,指令周期短,处理速度快,效率高;工作电压在3.3 V左右,但是可以兼容5 V。SST25VF016B是一款具有SPI接口的8引脚串行Flash。7 4LSl64为移位寄存器。

  2.1 VRS51L3074的SPI功能模块

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

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

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

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

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

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

  向串行Flash输入控制信号和数据地址后,启动串行Flash传输数据,在SPI时钟驱动下输出显示数据,并且可以用单片机模拟串行Flash时钟信号控制任意位数据输出。

  2.2 数据选择控制电路

  LED显示屏控制系统如图3所示,VRS51L3074单片机内部自带精确的40 MHz振荡器,不需要外部晶振电路提供系统时钟。数据显示采用内存为16 Mb的SST25VF016B。双RAM技术输出显示数据的时候,是将两块RAM中相同地址的两个数据同时输出,所以,将两块RAM的显示数据存放在一块串行存储器中时,偶地址单元应存储RAM0的数据,奇地址单元存储RAMl的数据,数据输出时每次输出16位数据。串行存储器和单片机的工作电压都在3.3 V左右,但是VRS51L3074可以兼容5V,简化了控制电路。控制信号和显示数据在输出到寄存器74LS164和显示屏的时候,需要用74LVC07进行电平转换。

 

  控制系统控制显示数据输出的流程为:

  ①将扫描线行地址通过P2端口的低4位送给LED显示屏。[page]

  ②通过显示数据在显示区域中的位置,计算显示数据在存储器中的地址,并计算出数据选择的位数i。

  ③通过单片机P3.0口模拟移位脉冲,输出到串行Flash时钟信号,移位脉冲数由数据选择位数i决定。使输出数据产生错位,正确地选择输出显示数据。

  ④启动SPI读取显示数据,SPI传输字长设置为16位。模拟脉冲已经输出到串行Flash使数据产生了错位,输出16位数据[Di,Di+1,…,D7,…,D15,D0,…,Di-1],输出到显示屏的数据[D8+i,…,D15,D0,…,Di-1]在高8位,经过移位刚好可以存放在移位寄存器中。每行第一个数据输出后,此行各列数据都直接输出。

  ⑤16位数据输出完毕后,通过P3.1脚产生一个SCK脉冲,将移位寄存器74LSl64中的数据输出移入到单元板的串行移位寄存器74HC595中。

  ⑥重复第④至⑤步,直到一行数据全部输出完毕后,由P3.2产生一个RCK脉冲,读取的一行数据将输出显示,然后扫描线下移一行。

  ⑦重复第①至⑥步。

  此电路有这样几个特点:显示数据从串行Flash输出后,不经单片机的处理,直接以DMA方式输出到移位寄存器74LSl64,同时实现串并转换,既节省数据处理时间,又提高显示效率。在每场数据输出之前,通过信息在显示区域中的地址计算数据选择位数i,并通过P3.O端口模拟i个脉冲输出到串行Flash,移出i位数据,数据产生错位,使输出显示的数据在16位输出数据的高8位,可以直接存放在移位寄存器中,输出到显示屏。以后同行各列的显示数据输出时,无需再进行数据选择位的判断,直接将显示数据从存储器中输出到显示屏。

  存储器效率分析如表1所列。

 

  由表1可知,采用双RAM技术输出显示大大提高了存储器效率,降低了显示数据存储器的占用。当显示信息量较大时,动态数据组织使用的存储器比较多、利用率低,而采用双RAM技术正好解决了这个问题。一块RAM(静态显示时)的存储器效率是100%,双RAM的效率是50%。当有N块RAM时,效率为(N-1)/N。

  针对图3所示控制电路,按照数据输出控制流程编写了程序代码。随机显示一屏信息,显示数据已按顺序存储在串行Flash中。

  结语

  本控制系统利用串行Flash输出数据时的特点,大大地减少了数据处理的时间,将显示数据以DMA方式输出到显示屏,不但提高了显示效率,而且弥补了长条显示屏在显示信息上的不足。双RAM技术大大提高了垂直移动时的存储器使用效率,所有的数据块都是按静态显示方式组织数据,所以每一块RAM的显示数据效率都是100%,双RAM的效率为50%。本文将显示数据存放在一块Flash中,效率也为50%,相比动态显示组织方式,降低了垂直移动时显示数据存储器的占用率,提高了存储效率。此外,还可以双RAM技术为基础,扩展出多RAM方式,提高显示的高度,增加每屏显示信息,进一步提高存储效率。本系统仍有改进的空间,譬如以双RAM组织显示数据后直接用两个RAM来存放不同的数据,控制显示数据直接输出,以提高输出速率。

关键字:双RAM技术  LED  刷新频率 引用地址:双RAM技术的LED显示屏控制系统设计

上一篇:AD9850实现嵌入式信号源设计
下一篇:一种用于定位的低功耗有源RFID标签的设计方案

推荐阅读最新更新时间:2024-03-16 13:30

浅谈51单片机2个外部中断的应用案例
;51单片机的P1口上接有8只LED。 ;在外部中断0输入引脚P3.2接有一只按钮开关K1。 ;在外部中断1输入引脚P3.3接有一只按钮开关K2。 ;要求K1和K2都未按下时,P1口的8只LED呈流水灯显示, ;仅K1(P3.2)按下时,左右4只LED交替闪烁。 ;仅按下K2(P3.3)时,P1口的8只LED全部闪亮。 ;两个外中断的优先级相同。 ;============================================= ;用 PROTSUE 仿真界面如下: ;下列程序,可以满足要求。 ORG 0000H SJMP MAIN ORG 0003H SJMP X0_INT ORG 0013H SJMP X1_IN
[单片机]
浅谈51单片机2个外部中断的应用案例
Melexis多通道RGB-LED 驱动芯片,打造汽车智能内饰照明
全球微电子工程公司 Melexis 宣布推出多通道 RGB-LED 驱动芯片 MLX81116。MLX81116 支持 MeLiBu™ 高速通信 IP,可实现智能动态汽车照明理念,全球领先的汽车制造商正利用该技术来增强最新车型的安全性能。 越来越多的汽车制造商希望将动态照明引入车内,用以传达重要的驾驶辅助提示和车辆状态信息。当前的设计思路采用 RGB-LED 灯条通过颜色混光、颜色变化和序列闪烁等功能与驾驶员进行通信,关键的挑战是整个灯条中的所有 LED 之间要保持一致的颜色并确保它们同时变化。MLX81116 通过其独特的高速通信接口 IP MeLiBu™ 解决了这一问题。MaLiBu™ 可分别控制灯条中的每一个 LE
[嵌入式]
Melexis多通道RGB-<font color='red'>LED</font> 驱动芯片,打造汽车智能内饰照明
美国国家半导体LED驱动器可简化区域照明设计
二零一一年六月七日 -- 中国讯 -- 美国国家半导体公司(National Semiconductor Corp.)(美国纽约证券交易所上市代码:NSM)宣布推出全新高集成度线性LED驱动器LM3466,可简化街灯等大功率大型照明灯具的设计。仅需几个无源组件,LM3466便能提供一个完整系统,可实现在现有任一款的AC/DC恒流源基础上驱动每个LED灯串。 现今的LED驱动器通常需要多个组件,才能正确地驱动一个LED灯串,而为了维持多个LED灯串间的电流相同,常会令设计变得更为复杂。通过集成MOSFET并采用独特的控制方法,美国国家半导体LM3466能够解决上述问题。它的高集成度令设计人员仅用一片LM3466、一个电阻及
[电源管理]
LED路灯的研发现状
LED 作为路灯的光源,它和传统路灯光源比较有许多优点。其一,LED 是一种半导体二极管,它的寿命非常长。当光通量衰减到80%时,其寿命达到了25000 小时。而金属卤化物灯的寿命在6000~12000 小时,高压钠灯的寿命是12000 小时。其二,LED 的基本结构是一块电致发光的半导体材料,放置在一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以LED 的抗震性能好。其三、白光LED 的光色比高压钠灯好。在中间视觉水平下,人眼在高色温环境里比低色温环境更容易辨别事物。白光LED 的显色性也比高压钠灯好很多,高压钠灯的显色指数只有20 右左,而白光LED 可以达到65~80。其四、LED 能实现较完美的调
[电源管理]
51单片机控制P2口8位LED灯左移C语言程序
此 程序控制 P2.0~P2.7口8个LED(P2.0~P2.7)灯逐个依次点这,又从(P2.7~P2.0)这样的顺序一直到全部被点亮。 #include reg52.h //头文件 void delay(unsigned int x)//延时函数 { while(x--); } void main(void) { unsigned char i;//定义一个无符号字型局部变量i取值范围0~255 delay(50000); P2=0xfe; for(i=0;i 8;i++)//加入for循环,表明for循环大括号中程序循环执行8次 { delay(50000);//调用延时函数,更
[单片机]
LED区域照明驱动电源的方案解析
要在街道和区域照明应用中采用 LED 来替代HID并产生同等的光输出,就要求采用大阵列的LED。要驱动这些大阵列的LED,设计人员可以选择不同的方案。另外,不同LED串的亮度需要保持一致,如果某个LED发生开路故障,可能造成整串LED关闭的后果,故需要顾及为LED串提供保护的方案。高压钠灯(HPS)等高强度气体放电灯(HID)具有光强度高、寿命长等特点,广泛应用于诸如街道照明、停车场及公园等公共场合的区域照明应用。另一方面,高亮度白光发光二极管(LED)在性能和成本等方面持续改进,非常适合区域照明应用,并且提供一些HID所不具备的优势,如方向性更好、色彩质量更佳、环保,并且其开启和关闭能够更方便地控制,便于自动检测环境光从而改变亮
[电源管理]
<font color='red'>LED</font>区域照明驱动电源的方案解析
科鑫光电超大号led超薄灯杆屏亮相危地马拉共和国
具有无箱体超薄结构、屏体360度可折叠、高亮度IP68全防水等几大特性的可折叠巨幕屏产品系列是科鑫光电四大应用产品系列之一。也是拥有发明专利技术最多,未来极有可能全面替代现有常规led显示屏的一个极具结构特色与拥有广泛应用价值的产品品类。科鑫光电,创鑫科技,中国科鑫!智能、创新、研发型led屏应用产品制造商,十年led显示屏应用产品技术研发、生产制造经验!四大产品系列:可折叠巨幕屏系列、常规屏系列、民用级消费类系列及智能控屏系统系列,全面满足您的定制化led大屏幕显示应用解决方案需求。 可折叠巨幕屏系列产品正是由于其可折叠、无箱体这一结构特性,使得该系列产品具有非常好的应用可塑性,可广泛应用于各种场景、各种功能性需求的大
[电源管理]
科鑫光电超大号<font color='red'>led</font>超薄灯杆屏亮相危地马拉共和国
led显示屏灰度等级标准是多少
LED显示屏灰度是LED显示屏的重要参数之一,LED显示屏灰度就是LED的色阶或灰阶,是指LED显示屏亮度的明暗程度,LED显示屏灰度等级是指LED显示屏同一级亮度中从最暗到最亮之间能区别的亮度级数。 LED显示屏灰度等级决定LED显示屏的色彩,一般而言灰度越高,显示的色彩越丰富,画面也越细腻,更易表现丰富的细节。 LED显示屏灰度有无灰度、8级、 16级、32级、64级、128级、256级、1024级等,国内LED显示屏主要采用8位处理系统,国际品牌LED显示屏主要采用10位处理系统。 1、8位处理系统,也即256(2的8次方)级灰度,简单理解就是从黑到白共有256种亮度变化。 2、10位处理系统,也即1024(2的10
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved