LED显示屏的扫描算法 第10页
31
3.4.8.2总线式软扫描
总线式软扫描是利用处理器的SRAM总线接口,将写控制线WR用作上屏时钟,将地
址线进行适当的译码,作为上屏时钟的使能,即将显示屏映射到地址的某一段上。这样的系
统具有一路时钟多路数据,有效的数据宽度可选,即可以选择数据总线中的连续或分散的几
位作为并行的数据线。这种扫描方式的局限性在于:虽然看上去可以达到很高的扫描频率,
但是处理器在访问外部SRAM时也要占用总线,所以实际上屏的平均速度要打折扣。设计
时主要考虑以下两个方面的因素:
1.上屏时钟:要用WR的最高频率作为上屏时钟的频率,即按照WR最窄的电平宽度计
算频率,这个频率要小于m
ax
f。
2.场频要求:这种扫描方法的上屏时钟不是均匀的。需要通过软件仿真知道扫描一帧的时
间,这个时间的最大值要满足场频限制条件。
3.4.8.3全控软扫描
全控软扫描将所有的屏体驱动信号都由GPIO产生,全控软扫描的优势在于扫描小尺寸
屏时可以最大限度的控制成本,只要有若干GPIO就可以了,甚至不需要使用总线型单片机。
所有的信号控制都由单片机程序完成,适合做简单的静态或动态图像显示。
实验室曾经开发了一款用于交通导航的显示屏,其尺寸为96×96象素,4线扫描,采
用一个51单片机全控软扫描,可以显示各种交通导航信息,还支持亮度调节和闪烁显示。
全控软扫的限制条件依然是上屏时钟和场频。
3.4.9扫描线数之间的换算关系
扫描系统在适应不同的屏体时,可以只改变与扫描线数有关的部分。如何实现这种设计
呢,这个接口应该是什么样的形式呢?
一般的方法是,在设计时选取能够实现的最高的线数,然后通过简单的变换以实现低线
数的扫描。按照这样的方法,使扫描线数从高到低的变化是容易的,因为在设计之初就考虑
到了,而使线数从低到高则不容易。例如一般都按照16线设计,这样可以很容易的就扫描
8线,4线屏体。而有些屏体使用16线已经无法设计出来,如果其可以用4线实现,那么其
就有可能替换为2线或静态的屏体。分析上屏时钟公式的表达:
Fsf
f≥f≥W?C?s?F?N
max
可知某些设计中,只有C和s取到足够小才能满足设计要求。
只有例如,如果只有当C=1,s=4的情况下才能满足要求
max
f<f,那么此时就无法用
16线的屏体设计。有以下几个问题要考虑:
帧缓存的问题:对于帧缓存,总是希望帧缓存的容量能被充分利用,如不希望16线的
扫描逻辑改为8线之后扫描的屏体尺寸减半,或是改为4线的逻辑之后屏体尺寸变为原
来的四分之一。就是说一个理想的扫描控制逻辑应该能保证可以扫描的各种屏体尺寸相
同。另外帧缓存的速度要求也必须能满足。
场频问题:不能因为屏体的变化而使场频变化,即使变化也要满足要求,下面的讨论假
设场频不变。东南大学硕士学位论文
32
上屏时钟:不能因为屏体的变化而变化,即使变化也要满足要求。
以下讨论中主要应用下面两个公式:
上屏时钟公式F
sf
f≥W?C?s?F?N
和总象素公式CHWWCWs
tpFdpc
=?=???
线数的改变受上屏时钟公式和总象素公式的约束。即改造前后的参数要同时满足这两个
公式。首先要求总象素不变:在一般情况下能保证FW不变,s与
dpc
C?W成反比。可以改
变的参数为C和
dpc
W,分3种情况讨论。
1.
dpc
W不变,改变C:
由总象素公式可知若d
pc
W不变,则C?s的值不变,则上屏时钟也不变。s变小C将变
大。这种方案中只要使用少量逻辑将原来的分时时钟再一次分路,是其数量倍增,同时数据
线的数量保持不变。
2.C不变,改变
dpc
W:
一方面上屏时钟可以减小,当s变小时,数据的宽度要成倍增加。数据宽度增加可以通
过几组锁存器将串行数据并行化,而且锁存器同时也可以用于驱动输出。问题在于这样改变
可能需要增加一部分寄存器逻辑将数据首先并行转串行,可能会遇到CPLD逻辑资源不够的
情况或者重新组织帧缓存的数据格式,使数据处理复杂化,帧缓存的数据结构不直观等等。
3.C和
dpc
W都改变
不是不可以实现,只是会使数据变换更加复杂,并不可取。
由讨论可知,第一种方法实现较为方便,更实用一些。这里举一个应用第一种方法的例
子,实验室的16线异步屏控制板因需要希望扫描4线异步屏。在设计时是按照16线的要求
设计的:C=4,W=4,W=W,s=16
dpcF
,改造方法为:使s=4,C=16其它参数保持不
变,使用一片CPLD7032,将时钟线从4路分时为16路。分时控制是由ABCD(行选线)
中的CD两条线控制的,AB两条线仍旧是行选线,同时扫描地址即帧缓存读取地址发生的
逻辑也做了改变,但工作量很小。
应用这种方式设计,需要的接口数据为:一组数据线和一组时钟线,其宽度是按照高线
数屏体设计得到的t
d
W和C;一组屏体控制信号,包括STR,RES,行选;若干附加信号线。
另外在不限制改造前后的尺寸必须相同的情况下,设计可以更灵活,但也一定要满足上
屏时钟和场频等参数的要求。还要考虑到的因素是,s变小后,屏的亮度更高,当亮度更高
时,极限闪烁频率会增加,可能会使原本不闪烁图像变得闪烁。所以在设计之初要对场频留
有一定的空间,或是适当提高工作频率来改善闪烁。
3.4.10单色系统扫描灰度图像
由上述的灰度产生机理可知,任何一个扫描单色屏的控制板,都可以不改动硬件只改变第二章LED显示屏系统概述
33
CPLD逻辑和软件的情况下扫描灰度图像,只不过是扫描的图像尺寸有所变化。此部分讨论
在硬件不变和屏体结构不变的情况下,由扫描单色图像到扫描灰度图像的改变过程中,对显
示屏的设计参数的影响。考虑的因素主要有以下几个:
1.FPGA资源:
无论如何,改造其它都满足的情况下,如果FPGA的资源不够都不可能将改造进行到底。
此时的选择是,要么是降低改造的标准,要么是选择引脚兼容的更大容量的FPGA或是
CPLD。
2.存储器容量:
根据总象素公式CHWWCWs
tpFdpc
=?=???和总容量公式
CCNn/8HWNn8WCWsNn8
tmtpcocoFdpcco
=??=???=?????,可见改造后的
每帧图像的容量不能超过存储器的物理容量。也意味着,随着单色改造灰度,扫描图像的尺
寸一定会变小。由于屏体结构不变,则改变的尺寸最终作用到
F
W上。以
F
W′表示改造之后
F
W,则有:
FF
W′?n≤W(45)
3.场频限制:
场频对显示效果影响重大,考察
Fsf
WCsN
fF
???≤
(46)
式46中可以改变的参数为
F
W、
sf
N和f。可见上屏时钟的增大可以使场频提高,当f
不变时,要保证场频不减小,需要满足:
FsfF
W′?N≤W(47)
而Nxn
nx
sf
=+2??1≥,则如果满足式47,则一定满足式45。可见
sf
N直接决定了
改造前后扫描的屏的尺寸的变化,有:
sf
F
F
N
WW
′≤
4.上屏时钟:
上文分析可知,上屏时钟的提高对场频提高是有好处的,下面讨论如何才能使上屏时钟
提高。首先无论如何提高,频率都要小于等于m
ax
f,这是保证屏体工作的首要条件。分别
讨论硬扫描和软扫描。
①硬扫描:
根据峰值速度公式
td
M
m
fW
WT
?≤
,如果存储器峰值速度在原来的设计中还有余量的话,东南大学硕士学位论文
34
可以考虑提高系统时钟,以提高上屏时钟。如储器速度也已经到极限,而上屏时钟还有余量
的话,可以考虑更换引脚兼容但速度更快的帧缓存,这样可以进一步提高上屏时钟。
②软扫描:
可以改变处理器频率或改变接口参数设置来提高上屏时钟。
实际应用中,n和x都要选择合适的数,以使存储器的数据格式合理,数据寻址方便,
数据格式变化简单。颜色的位分离可以由上位机预处理完成,而扫描部分时只处理取数据和
产生灰度。
3.4.11其它扫描方式
3.4.11.1多路数据SPI软扫描
在上面章节讨论的软扫描方法中提到了,软扫描的SPI扫描方式受到了SPI总线数据线
宽度的限制,在实现多基色和数据宽度大于1的结构中,必须在芯片外部附加逻辑,使软扫
描控制方式和特技算法更为复杂。我们更希望有一路时钟多路数据的SPI接口的芯片,当然
此时的SPI接口也不再是标准意义上的SPI接口。
另外限制软扫描的因素在于SPI串行时钟的频率,我们总是希望有尽可能高的频率以使
其可以扫描更大的屏体。
市场上没有这种功能的处理器,但我们可以使用软核处理器来实现这样的功能。如
Altera公司的Nios软核处理器。使用软核处理器,就可实现多路数据的SPI接口了。
3.4.11.2 LED专用扫描芯片
现在市场上出现了若干种LED显示屏专用扫描芯片,其可以同时实现屏体恒流源驱动
和灰度的产生,在这种系统中扫描部分不需要做位面分离,对扫描子系统的设计带来了很大
的便利,但屏体不能采用上述的标准驱动模块而需要重新设计。这是行业发展的新方向。
3.5扫描算法的应用
本节介绍了若干扫描参数的选择原则和实际设计过程中的其它一些影响因素。最后一小
节给出了设计LED显示屏扫描部分的基本过程和方法,即扫描算法。
3.5.1灰度等级和色彩校正
【6】【7】【13】
人眼视觉系统对亮度的感知并不是线性的,所以当系统产生线性的亮度时,人眼不能感
知到想象中的线性亮度。在某种亮度为L的背景之中,有个刺激光的区域,不断增加这个区
域的亮度,当人眼恰好可以感受到这个区域与背景亮度之间的差别时,称这个最小亮度差为
亮度分辨域值ΔL。出当背景亮度L高到某个程度以上时,ΔLL的值大约保持一定,即在
L的某个范围之内,该比值ω为一定值,且有ΔLL=ω,若将由ΔL的变化所产生的明暗第二章LED显示屏系统概述
感觉的变化设为ΔQ,则有L
dL
dQΔ
Q=Δ,对Q积分得到:
LQ
Q 0lgω
Δ=
(48)
由式48可知,若ω为一定值的范围内,明暗感觉Q与亮度L的对数成正比,将其称为
韦伯-费希纳法则。其成立的条件为刺激光面积为2°,提示时间为1s以上的场合,大约与
亮度为30~1000cd/m的普通显示器的画面亮度范围相一致。
由以上理论我们所指的256级灰度是指人眼的明暗感觉Q的分级,在CRT监视器中都
有一个称为γ校正的环节,用来作为256级线性灰度到明暗感觉的校正。LED显示屏中并
不能通过这种方法来校正,如果图像没有经过色彩校正,那么到高灰度级时,将很难分辨亮
度的差别,而感觉低灰度时亮度变化过快。
LED显示屏实现γ校正的一般做法是:提高灰度等级,然后再按照人眼视觉的要求,
在所有灰度中选择256个亮度级别来实现这种校正的。
实际情况中,每种基色的LED管都有不同的特性,如非线性和亮度,需要分别校正。对
于某一基色,设源灰度为
S
C,校正后的图像灰度为
D
C,则有:
γ
DS
C=K?C(49)
参数K可以用一种设置下的满亮度
f
C对应于灰度255而计算出来,即:
γ
f
255=K?C(50)
为了实现最大亮度,fC要尽量取灰度的最大值,如4096级灰度,就取4095,但要是
各个基色的满亮度相等,如果不相等,则需要取其中最小的值作为fC。另外某些LED显示
屏要能根据环境的亮度来调整显示的亮度,来保证合适的对比度,对于这样的显示屏,可以
另外取几级满亮度,根据不同情况使用不同的校正数据。对于不同基色的LED单管,需要
用不同的γ值来校正,对于红色一般取γ=2.8;绿色取γ=1.8~2.0。色彩校正对于同步
屏一般用硬件查表方式实现,对于异步屏既可以通过查找表实现也可以通过PC端对数据预
处理实现。
设计显示屏时,灰度级数也是选择的参数的之一。在设计全彩色显示屏时,用户对图像
的质量要求很高,通常是以电脑显示器的画面为标准的,所以256级(n=8)线性灰度是
不够的,一般要取到n=10(1024级)到n=12(4096级)才合适。在设计双基色灰度屏
时,因为缺少了一个原色并且这种屏的造价也较低,所以用户对这种屏的显示效果没有过高
的期望,这里一般选择256级(n=8)线性灰度,经过γ校正后,会损失20几个灰度级
别,但这样校正的效果还是很好的。如果制作以显示文字图形等简单信息的显示屏,采用无
灰度屏即可;但如果能在只增加少量成本的情况下,增加灰度显示功能将使产品更具竞争性,
在这种情况下可以根据硬件的实际情况实现更少的灰度等级,如64级(n=6)灰度也可