LED 扫描算法整理
LED 扫描算法整理
整理时间 2011-10-24
1
LED 扫描算法整理
1 LED 显示屏基本常识
点阵式的 LED 显示屏能灵活显示各种形式的信息,对它的研究更具有普遍意义,所以本
文讨论的是点阵式 LED 显示屏的扫描原理和图像质量。
LED 显示屏分类为同步 LED 显示屏和异步 LED 显示屏,区别是看显示屏是否可以同步显
示计算机的 VGA 信号、DVI 信号或是电视的 RF 信号、AV 的视频信号。
扫描:LED 显示屏多数是采用扫描点亮方式工作的,即任意时刻并不是所有的 LED 都点
亮,而只是按行点亮一部分,各个点亮行交替的频率很快,以使人眼视觉分辨不出这种闪烁,
呈现在眼前的就是一副稳定的图像。通常是按照行来分割屏体的,有的屏体在完成一副完整
图像的显示需要在时间上分 16 次完成,而有的则分为 4 次完成,也有分 2 次的,甚至有不
分的,所有象素同时点亮,这时扫描就没有意义,就成为静态锁存形式的屏了。
灰度:常用的灰度实现方法是占空比方式。这一点的依据来源于 HVS(人眼视觉系统)
的特性:人眼视觉对于光的刺激从感觉上会有一段残留时间,在该段时间内,若有别的光刺
激到达视野内的其他场所,从感觉上会产生与前面的光线同时到达的效果,假如后续的光刺
激到达同样的场所,其感觉的强度会被叠加(被积分)。
占空比:将 LED 管恒流驱动,如果在上述时间间隔内,以宽度不同的一系列脉冲控制
LED 发光,人眼感觉到的光强就是这一系列光刺激强度的和。LED 所具有的快速响应特性可
以使脉冲频率高达数十兆赫兹。因此控制 LED 点亮所占的时间比,即可控制人眼感受到的亮
度。例如用 1MHz,占空比为 25%,峰值电流为 100mA 的脉冲去驱动 LED,与用 25mA 的直流
驱动相比其感受到的亮度是相同的。
2
LED 扫描算法整理
2 LED 屏体部分的原理
2.1 LED 阵列
屏体的控制电路使每个象素都独立可控;但是实际的屏体是由数量巨大的 LED 单管组成
的阵列,所以阵列的驱动设计还需要考虑其它一些因素,比如总是希望具有接口简单、时序
简单、易于级联等特性。图 2.1 表示了阵列中一行 LED 控制的原理。
图 2.1 一行 LED 控制原理
可以看出每个 LED 单管都是独立可控的,当开关闭合时,电流流经限流电阻、LED、开
关到地,从而 LED 点亮;开关断开时,LED 熄灭。LED 阵列就由相应的开关阵列控制,控制
信号由虚框中的控制逻辑产生。控制逻辑依据接口信号的意义,独立控制各个 LED。开关阵
列可以采用各种形式,一般用电子开关(三极管或 MOS 管),甚至可以是控制逻辑中的一部
分。接口信号可以是串行逻辑或是并行逻辑。串行逻辑不但接口简单,而且容易级联,组成
更大的阵列,所以使用更为广泛。
2.2 单元板背板电路
单元板背板有标准的尺寸,串行接口,可以级联,并采用了扫描点亮方式。
按照不同的线数进行分类,将若干行 LED 组成一组,每次点亮一行,使用时将各个行顺
序点亮的,如果以 16 行为一个循环,则这种屏体就是 16 线屏体,同理如果是 4 行一个循环,
就称为 4 线屏体。背板的数据接口采用串行方式,内部设置串行、并行两组寄存器,通过时
钟将数据串行输入模块,通过锁存信号将串行数据存入并行寄存器的同时更新屏体显示(详
见 MBI 5024 Datasheet)。下面列举了 4 线三基色单元板背板的形式和接口,如图 2.2:
3
LED 扫描算法整理
图 2.2 4 线三基色单元板背板的形式和接口
背板的接口信号有串行时钟信号 CLK,数据信号 D,锁存信号 STR,行选择信号 A、B 和
模块有效信号 RES。表 1.1 简要介绍了接口信号的作用。
表 1.1 单元板背板接口信号
其原理可以用图 2.3 来说明,数据线 DATA 代表其中一种基色的数据如红色,另外的两
路基色与前者具有相同的结构,其中除数据信号外,其它所有信号都与下图中的信号并联,
而 3 片 74139 也可以只用一片。
4
LED 扫描算法整理
图 2.3 背板信号
若干说明:
1.串行数据通路是使用一连串的 74595 来实现的,74595 具有串行输入输出,内部有两
组寄存器,分别用来存储串行和并行数据,符合对串行结构屏体的要求。当然实际的芯片可
以不是 74595 而是其它性能更好的 LED 专用驱动芯片,具有非常好的恒流性能,但原理却是
相同的。
2.行选是通过 74138 或 74139 等译码器来实现。模块的使能接到了译码器的使能端,无
效时,所有行管都截止,屏体 LED 熄灭。
3.为了支持级联,信号进入模块后首先由 74245 隔离(图中未画出),然后分为两路,
一路用于驱动本模块显示电路,另一路用于级联,这样可以使各个信号的延时减小,使模块
的级联数增加。
根据驱动芯片数量判断扫描线数:还可以看出对于同样的 16 行 LED,如果使用 16 线屏
体,需要横向一组 74595,而使用 4 线屏体,则需要 4 组 74595,可见线数越小,屏体结构
越复杂。例如双基色 16 线模块两层 PCB 就足够了,而常用的 3 基色 4 线屏体要 4 层 PCB 板
才能布通。
另外一点,考察驱动模块正常工作时的亮度,在单位时间内 16 线的屏体的每行只能点
亮 1/16 的时间,而 4 线的屏体却点亮 1/4 的时间,因此从宏观的效果上来看,16 线屏体的
亮度要小于 4 线屏体亮度。所以线数越少,相对同样的 LED 构成的屏体,亮度越高。
5
LED 扫描算法整理
2.3 单元板级联组成箱体
屏体是使用单元板组装成的,在水平方向单元板级联;在垂直方向,单元板并联。级联
的单元板对外部只有一组接口。整个屏体的接口就是垂直方向上的一组接口。例如要构造
192×64 的显示屏,其屏体可以采用 32×16 的 16 线单元板以图 2.4 所示的方式构造,注意
图示是屏体的背面,正面是 LED 点阵。
图 2.4 单元板级联成 LED 箱体
2.3 接收卡
单元板构成了屏体,而接收卡则产生用于驱动屏体的信号,来使屏体显示需要的图像。
仍然以上一节的屏体为例,如果将纵向 4 组信号线中除了数据线外其它线都并联到一起,则
屏体的控制信号为:
CLK:上屏时钟
DATA0~DATA3:与时钟同步的 4 根数据线
STR:锁存
RES:使能
ABCD:行选信号
控制可以按下面的时序进行:
1.通过 192 个时钟上升沿将数据串行输入屏体
2.禁止 RES,熄灭屏体
3.通过锁存信号将串行数据存入并行寄存器
4.同时切换行选信号 ABCD,使数据显示到新的一行
5.使能 RES,点亮屏体,此时新的一行点亮,原来一行熄灭
6.重复过程 1~5,当行选到第 16 后,下一次选择第一行
整个过程可以用图 2.5 来表示:
6
LED 扫描算法整理
图 2.5 背板信号
另外还可以其它方式控制,如将纵向 4 组信号中的前两组的时钟并联到一起,后两组的
时钟并联到一起,再将除数据外的所有其它信号并联在一起。分别将第 1、第 3 组和第 2、
第 4 组的数据并联成为两路数据。则屏体控制信号为:
CLK0,CLK1:两路时钟
DATA0~DATA1:可以分别与两路时钟同步,哪路时钟起作用,数据就输入相应的组
STR,RES,ABCD
这样扫描方式也有了相应的变化:
1.CLK1 保持不变(恒高或恒低),CLK0 的 192 个时钟上升沿将数据串行输入屏体的
第 1、第 2 组,之后 CLK0 保持不变
2.CLK0 保持不变(恒高或恒低),CLK1 的 192 个时钟上升沿将数据串行输入屏体的
第 3、第 4 组,之后 CLK1 保持不变
3.禁止 RES,熄灭屏体
4.通过锁存信号将串行数据存入并行寄存器
5.同时切换行选信号 ABCD,使数据显示到新的一行
6.使能 RES,点亮屏体,此时新的一行点亮,原来一行熄灭
7.重复过程 1~6,当行选到第 16 后,下一次选择第一行
从上面的方案看出同样的屏体扫描方式却可以不同的扫描方式,时钟的增加换来了数据
的成倍减少。这里有着固有的联系,文章下面的部分将分析并阐述这些关系。
2.3 转接卡
转接板是将控制板发出的信号分成若干个支流的卡板 也叫做分线板,一般情况下,根
据 LED 电子屏本身模组纵向数量决定的,也就是说,您的 LED 电子屏若是两排以上(含两排)
都要使用转接板,但是也有的 LED 显示屏控制卡厂家在生产卡的时候,在卡本身上就带 8
个分线柱(最多)。
7
LED 扫描算法整理
3 灰度的产生
常用的灰度实现方式采用占空比方式。举一个例子说明这个问题。例如实现
256 级灰度显示,对于 4 线屏体,可以采用下面两种扫描方法实现灰度:
方法 1:将每帧时间分成 8 段,每个时间段都要扫描一遍屏体,各个段的时间长度按照
1:2:4:8:16:32:64:128 来安排。要显示某级灰度的数据,只需要在相应的时间段内点亮 LED,
如第 22 级灰度即可在第 2,3,5 时间段点亮 LED,连续扫描后即可得到稳定的带灰度图像。
这样的扫描方式称为行优先扫描,就是先扫行再扫灰度。对于一个灰度级为 n,线数为 s 的
屏。
方法 1:
1.顺序扫描第 1 级灰度级的第 1 线到第 s 线
2.顺序扫描第 2 级灰度级的第 1 线到第 s 线
3.。。。
4.顺序扫描第 n 级灰度的第 1 线到第 s 线
具体扫描每一级灰度的过程如下:
1.各时钟先后将数据串行移入对应的屏体
2.通过锁存信号将串行数据存入并行寄存器
3.同时切换行选信号,使数据显示到新的一线
4.重复过程 1~3,直到最后一线
5.扫描下一级灰度
方法 2:
将每帧时间分为 4 段,每段时间内扫描屏体的一线。每段时间内再亮时间按照
1:2:4:8:16:32:64:128 来安排,在每线过程中一次将所有灰度扫描下一线,这种扫描方式
称为灰度优先扫描,一般的过程如下:
1.顺序扫描第 1 线的第 1 级灰度到第 n 级灰度
2.顺序扫描第 2 线的第 1 级灰度到第 n 级灰度
3.。。。
4.顺序扫描第 s 线的第 1 级灰度到第 n 级灰度
具体扫描每一线的过程如下:
1.各时钟先后将第一级灰度的数据串行移入对应的屏体
2.通过锁存信号将串行数据存入并行寄存器
3.各时钟先后将第 2 级灰度的数据串行移入对应的屏体
4.通过锁存信号将串行数据存入并行寄存器
5.重复过程 3~4,直到最后一级灰度
6.切换行,扫描下一线
控制每行 LED 的点亮时间有两种方法:一是通过控制 STR 信号的时间间隔来实现,两次
STR 之间的间隔时间就是一行 LED 的点亮时间,下文中以 STRt 表示这个时间;其二可以通
过控制 RES 信号来实现,任何时候无效 RES 可以使模块熄灭,下文中以 RES
t 表示 RES 的有效时间。由此可以看出 STR 时序和 RES 时序是扫描方法的两个重要参数。
8