LED显示屏高灰度扫描控制的FPGA实现
扫描二维码
随时随地手机看文章
摘要:本文在分析LED显示屏的显示扫描控制方法的基础上,提出了用并行结构实现高灰度扫描控制的方案,设计了基于FPGA的8位并行输入LED扫描控制芯片,并结合外围电路、显示面板及计算机构成了LED大屏幕显示系统,实现了LED显示屏的256级灰度显示,在简化系统硬件结构的前提下取得了清晰稳定的画面显示。
1介绍
LED(lightemittingdiode)显示屏由发光二极管阵列构成。发光二极管(LED)是一种电流控制器件,具有亮度高、体积小、单色性好、响应速度快、驱动简单、寿命长等优点,能胜任各种场合实时性、多样性、动态性的信息发布任务,因此得到了广泛的应用。LED大屏幕是通过一定的控制方式,用于显示文字、图像、行情等各种信息以及电视、录像信号,并由LED器件阵列组成的显示屏幕。LED大屏幕作为现代信息发布的重要媒体,正受到社会各界尤其是商业界、广告界的极大重视,被广泛应用于工业、交通、商业、广告、金融、体育比赛、模拟军事演习、电子景观等领域。
本论文介绍了一种8位并行输入LED显示驱动芯片,在大屏幕LED显示系统中实现了从白到黑的多色彩的256级灰度显示,画面稳定清晰,取得了良好的视觉效果。
2大屏幕LED的系统构成
考虑到LED电气特性以及机械安装等实际应用的要求,无论是室内LED电子显示系统或是室外LED电子显示屏,在结构上都采用了标准单元块的形式,即采用16×16、16×32、24×24或32×32个显示象素灯管构成一个单元块。每一个单元块形成自身独立的电子扫描功能、控制功能、存储功能,并以此构成一个独立的子系统;然后,再由各个标准源以及通讯驱动部件后就构成了全点阵LED大屏幕电子显示系统,外加一定的计算机控制部件、带有数字化分量输出的多媒体卡或DVI卡及电源记忆通讯驱动部件后就构成了全点阵LED大屏幕电子显示系统。该系统的结构框图如图1所示。
其中的核心部分是LED扫描控制芯片,这个也是本文所要讨论的重点。该芯片为8位并行输入的LED显示驱动结构,可驱动16×8的LED屏体,应用在LED大屏幕上可以通过多片级联来实现LED大屏幕的显示。
图1LED大屏幕系统结构框图
3LED扫描方法和控制芯片的研究
1、灰度扫描方法的研究
对高灰度级LED大屏幕显示而言,灰度的分层(灰度扫描)方法是视频控制器设计的关键,由于LED的发光亮度与扫描周期内的发光时间近似成正比,所以灰度等级的实现通常是由控制LED的发光时间与扫描周期的比值,即采用调制占空比来实现的。
(1)灰度扫描约束公式
设显示灰度等级数为N,由于灰度级为1的像素在屏体的对应点亮时间为td,因而灰度线性调制后灰度级为i的数据显示时间为itd,灰度级最高的数据显示时间为(N一l)×td.通常的考虑是在td内完成对存储器一行数据的一次读出,同时以td为周期将读出的一行数据打人到屏体进行灰度显示。由于共有N个灰度级数,帧扫描周期为:
T=n×td×m(1)
屏体显示效率:η=(N一l)×td×m/T=(N一l)/N(2)
设视频数据输人速率为VI,存储器读出速率为Vo,由于必须在td内完成存储单元内一行数据的一次读出,故有:Vo/Vi>=h/(td×n)(3)
设λ为存储器读出与输人速率的比值,即λ=Vo/Vi,将(l)式代人(3)式中,有:λ>=h×N×m/(T×n)(4)
为保证图像的稳定显示,扫描帧频必须足够高,设F>=F0(即T<=T0,T0=1/F0),F0为人眼可接受的扫描帧频(F0>=60),代入(4)式得:
λ>=h×N×m/(T0×n)(5)
代入(1)式得:td=T0/(N×m)(6)
式(5)和(6)即为灰度扫描约束公式。
(2)256灰度级全屏扫描
对于256灰度级全屏扫描,高的灰度级数、高扫描帧频与低的存储器读出速率是相互矛盾的。要获得高的灰度级数,就必须提高存储器读出速率,或者降低帧扫描频率,当灰度级数较高时,以目前的集成电路实现水平难以达到三者的兼顾。解决的方法之一是大量采用并行结构,但扫描频率每减小一倍成本就增加将近一倍,而且电路的复杂程度也有所增加;另一种方法是适当牺牲屏体显示效率以求得帧频与速率的折中,这种方法经实践验证是可行的。
设计中考虑到帧频与LED屏体显示效率的折中,采用λ=l,td=h/16,即存储器读出速率等于数据输人速率,显示基本时间单位为1/16倍行周期。灰度扫描通过对灰度数据按位分时显示的方法实现,即计算机屏幕图像以每像素24bit输出(红、绿、蓝各8bit)时,通过给每种颜色sbit字节的不同位分配不同的显示时间达到灰度显示的目的。比如,最低位(第8位)对应1/16行显示时间,第7位对应1/8行显示时间,?,第2位对应4行显示时间,最高位对应8行显示时间。屏体数据更新时间以行周期为单位,最低位对应更新时间为1行时间,其中显示1/l6行时间,其余15/16行时间里,由控制电路产生消隐信号进行消隐,其余位类同。
2、LED扫描控制芯片
通过数据比较之后,本论文采用了恒流源驱动方式,设计了一款可以实现从白到黑的256级灰度显示的控制单元。该显示控制芯片具有与时钟同步的8位并行输入端口,内含16个8位的移位寄存器和16个8位的数据锁存器,可以对8位并行数据进行移位并锁存。图2为该扫描和显示控制芯片的电路图。
图2.扫描和显示控制芯片电路图
当电路开始工作时,8位并行数据在移位时钟脉冲的作用下打入芯片的移位寄存器模块中,其内部含有16个移位寄存器,故移位16次后,数据将从该芯片的DOUT0~DOUT7输出到下一芯片;同时将移位所得的16个8位数据输入到锁存器中锁存。这时只要输出控制信号为低,并给出同名行的行选通信号同时使输出开放,各列即可开始输出恒流,同时8位计数器开始对灰度级时钟进行计数,当计数值与该列所存储的灰度值相等时,该列的恒流输出结束,从而实现相应LED的显示时间控制,即占空比控制。若采用10个该显示控制单元级联驱动LED显示屏,则一直并行移位160次就可完成第一行数据的传输。[!--empirenews.page--]
运用VerilogHDL编写代码并用Modelsim仿真软件对该电路代码进行编译仿真,得出了如图3、图4所示得时序图。
图3灰度控制单元时序图
图4亮度控制单元时序图
通过时序图我们可以看到在控制端:
enable、rsel、bc_ena、latch等控制端的控制下,可以按照不同的需求来实现对不同灰度和亮度的实现。在灰度控制单元中,数据在经过了16个脉冲之后移位传输至输出端输出,并且实现了8列或者16列输出的可调;在亮度控制单元中,通过调整enable、bc_ena、latch的值实现了输出数据的可调,从而准确的实现了亮度的控制功能。
根据各部分同名行的全部传输时间等于该同名行的显示时间,可以得到行周期和点(列)周期的值,即行周期=帧周期/扫描方式的行数,点周期=行周期/(每行点数×部分数)。若帧频为120Hz,则帧周期为1/120s=8.33ms,根据扫描方式为1/16可将80行分为5个16行,每行160列,这样,行周期即为520.6μs;点周期为650.75ns;点频为1.54×106Hz.
4结论
本文讨论了LED大屏幕视频控制器中的灰度扫描方法,本文提出了256灰度级扫描时的实现方案,作者的创新点在于并设计了一款从暗到亮的256级灰度显示的LED显示控制芯片,在本设计中帧频可达120Hz,行周期为520.6μs,点周期为650.75ns;点频为1.54×106Hz.该芯片可以通过多块级联来驱动LED大屏幕,有着较好的应用前景。