发明内容
本发明提出一种灰度显示驱动方法及灰度显示驱动装置,以进一步减少余数位驱动产生的闪烁。
根据本发明的第一方面,提供一种用于LED显示屏的灰度显示驱动方法,包括:将一帧分成m个子帧;逐子帧驱动LED,其中,m=A*B,A为大于0的奇数,B为大于0的偶数。
优选地,B=2η,其中η为大于0的整数。
优选地,A为质数或至少两个质数的乘积。
优选地,m为选自24、30、60、120、240、420、480之一的整数。
优选地,在每个子帧中,所述LED逐位驱动,其中根据子帧位数值序列的位数值点亮或熄灭,并且持续与子帧位权重序列的相应位权重对应的有效显示时间。
优选地,在每个帧的m个子帧中,至少一个子帧位为余数位,所述余数位的子帧包括位数值为第一数值的第一组子帧和位数值为第二数值的第二组子帧,第一数值与第二数值不同。
优选地,所述第一组子帧中的子帧均匀分布。
优选地,在当前帧和前后帧中,第一组子帧的任意两个相邻子帧之间分布大致相同数量的第二组子帧的子帧。
根据本发明的第二方面,提供另一种用于LED显示屏的灰度显示驱动方法,包括:将H位灰度数据D[0:(H-1)]分为低有效位D[0:n-1]和高有效位D[n:(H-1)],其中将低有效位D[0:n-1]一起作为余数位,其中H和n分别为自然数且H大于n;将高有效位D[n:(H-1)]和余数位的权重分散到m个子帧中,形成与所述m个子帧对应的m个子帧位权重序列,其中m为自然数,在当前帧的不同子帧中,所述高有效位的子帧位数值彼此相等取值,所述余数位的子帧位数值彼此独立取值;将高有效位D[n:(H-1)]和低有效位D[0:n-1]的数值分散到所述m个子帧中,形成与所述m个子帧对应的m个子帧位数值序列,以及将每一个子帧位数值序列组合成一个子帧数据;以及将所述子帧数据提供给LED进行显示,所述LED的灰度等于高有效位驱动的LED点亮时间和余数位驱动的LED点亮时间的累积,其中,所述子帧数m=A*B,A为大于0的奇数,B为大于0的偶数。
优选地,所述余数位的子帧包括位数值为第一数值的第一组子帧和位数值为第二数值的第二组子帧,第一数值与第二数值不同。
优选地,所述第一组子帧中的子帧均匀分布。
优选地,在当前帧和前后帧中,第一组子帧的任意两个相邻子帧之间分布大致相同数量的第二组子帧的子帧。
优选地,B=2η,其中η为大于0的整数。
优选地,A为质数或至少两个质数的乘积。
优选地,m为选自24、30、60、120、240、420、480之一的整数。
优选地,所述子帧位权重为2i*T,其中i为大于等于0的整数。
优选地,T为每个子帧中的最小有效显示时间。
优选地,所述LED根据所述子帧位数值点亮或熄灭,并且持续与相应的所述子帧位权重相对应的有效显示时间。
根据本发明的第三方面,提供一种用于LED显示屏的灰度显示驱动装置,包括:子帧数存储模块,用于存储预先设定子帧数;灰度级计算模块,获取视频信号中的显示数据,计算出校正后的灰度数据,所述灰度数据包括高有效位表示的灰度值和余数位表示的灰度值;余数位构建模块,获取系统时钟周期,根据余数位表示的灰度值设置余数位在每一个子帧中的子帧位权重以及计算余数位在每一个子帧中的子帧位数值,在当前帧的不同子帧中,所述高有效位的子帧位数值彼此相等取值,所述余数位的子帧位数值彼此独立取值;子帧数据生成模块,将高有效位的子帧位权重和余数位的子帧位权重依次组合为多个子帧位权重序列,以及将高有效位的子帧位数值和余数位的子帧位数值依次组合为多个子帧位数值序列,以及将每一个子帧数值序列组合成一个子帧数据;以及子帧信号输出模块,根据所述多个子帧位权重序列和所述多个子帧位数值序列,逐个子帧地输出灰度驱动信号,以驱动LED显示屏的LED,所述LED的灰度等于高有效位驱动的LED点亮时间和余数位驱动的LED点亮时间的累积,其中,所述子帧数存储模块存储的子帧数为m=A*B,A为大于0的奇数,B为大于0的偶数。
优选地,所述余数位构建模块将所述余数位的子帧分为位数值为第一数值的第一组子帧和位数值为第二数值的第二组子帧,第一数值与第二数值不同。
优选地,所述第一组子帧中的子帧均匀分布。
优选地,所述余数位构建模块均匀分布所述第一组子帧和所述第二组子帧,使得第一组子帧的任意两个相邻子帧之间分布大致相同数量的第二组子帧的子帧。
优选地,B=2η,其中η为大于0的整数。
优选地,A为质数或至少两个质数的乘积。
优选地,m为选自24、30、60、120、240、420、480之一的整数。
在本发明的灰度显示驱动方法及装置中,LED的灰度等于高有效位数据驱动的LED点亮时间和余数位驱动的LED点亮时间的累积。与现有技术中子帧数为2η的常规做法不同,在本发明中采用的子帧数是奇数和偶数之积,从而可以兼顾余数位为奇数和偶数时的子帧驱动均匀性。该灰度显示驱动方法及装置可以在提高显示器的刷新率的同时提高余数位的子帧位驱动的均匀性,从而减少屏幕闪烁。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
图1为一种常规的LED显示屏的示意性框图。LED显示屏包括LED显示控制器和N个串接的LED单元板1至LED单元板N,其中N是大于等于1的整数。每一个LED单元板包括A个LED驱动电路,每个LED驱动电路用于驱动B个LED,其中A和B分别是大于等于1的整数。因此,该LED显示屏可以驱动总共N*A*B个LED。
LED显示控制器向LED单元板1提供数据信号DATA,并且分别向LED单元板1至LED单元板N提供一组控制信号,包括时钟信号CLK和锁存信号LAT。第一LED单元板1上的第一LED驱动电路从LED显示控制器接收数据信号DATA,并且将数据信号DATA输出至该单元板上的下一个LED驱动电路。每一个LED驱动电路根据数据信号DATA产生输出信号,例如逐位对应的输出信号。LED按照逐位分时显示的方式点亮或熄灭。
在常规的LED显示屏中,位数据的权重一般采用2n来表示。以16位灰度数据为例,将灰度数据记为D[0:15]。假设灰度数据最低有效位对应有效显示时间的权重W[0]为1,则每一个位数据D[i]对应有效显示时间的权重W[i]为2i-1,如表1所示:
表1、在现有技术中16位灰度数据不同位的权重
数据位 |
D[0] |
D[1] |
D[2] |
D[3] |
D[4] |
D[5] |
D[6] |
D[7] |
…… |
D[15] |
权重W |
1 |
2 |
4 |
8 |
16 |
32 |
64 |
128 |
…… |
32768 |
灰度数据最低有效位对应的有效显示时间为T。根据位数据的权重,每一个位灰度数据对应的有效显示时间如表2所示:
表2、在现有技术中16位灰度数据不同位对应的有效显示时间
数据位 |
D[0] |
D[1] |
D[2] |
D[3] |
D[4] |
D[5] |
D[6] |
D[7] |
…… |
D[15] |
有效时间 |
T |
2T |
4T |
8T |
16T |
32T |
64T |
128T |
…… |
32768T |
在现有技术中(中国专利号ZL201010607462.1),为了提高显示图像的刷新率,可以将一帧图像分成数个子帧,逐个子帧进行显示。每一个子帧的持续时间长度越短,则刷新率指标越高,可以将高权重的位数据对应的有效显示时间平均分配在不同的子帧中。在表3中,以16位灰度为例,将16位灰度数据D[0:15]分为D[4:15]和D[0:3],分成16个子帧进行扫描显示。将高有效位D[4:15]和低有效位D[0:3]的权重平均地分散到每个子帧中。将低有效位D[0:3]一起表示为余数位R。
在本申请中,高有效位是指在当前帧的不同子帧中相等取值的数据位,余数位是指在当前帧的不同子帧中独立取值的数据位。由于余数位在不同子帧中独立取值,因此余数位的有效点亮时间可以在一定范围内变化。
表3、根据现有技术的16位灰度数据的子帧打散方案
在依次显示每个子帧时,余数位R的数值决定了余数位权重是否有效。例如,当余数位R=1时,在16个子帧中的一个子帧中,余数位权重Rn将有效。当余数位R=2时,在16个子帧中的两个子帧中,余数位权重Rn将有效。类似地,利用16个余数位R即可表示D[0:3]的16个不同的余数位权重。
如表3所示,根据现有技术的子帧打散方案,子帧数为2η,其中η为大于0的整数。仅有一部分数值的余数能够平均分布在子帧中。以16个子帧为例,如果余数位R=2,则将权重有效的子帧设置为第1子帧和第9子帧,位权重有效的相邻子帧之间彼此间隔的无效子帧的数量为8。如果余数位R=3,则无法做到均匀分布。此外,在余数位R=5、7、9、11、13等数值时,均存在上述无法分布均匀分布的问题。
图2为根据本发明的实施例的灰度显示驱动方法的示意性流程图。
在步骤S101,将灰度数据分为多个高有效位和多个低有效位,其中将多个低有效位一起作为余数位。例如,所述灰度数据包括余数位R[0:k]和高有效位D[0:n]。
在步骤S102,将高有效位和余数位的权重分散到多个子帧中,形成与所述多个子帧对应的多个子帧位权重序列。在该实例中,子帧数m=A*B,A为大于0的奇数,B为大于0的偶数。在一个优选的实施例中,B=2η,其中η为大于0的整数。在另一个优选的实施例中,子帧数m为3或30的倍数,例如选自24、30、60、120、240、420、480之一。在该实例中,子帧位权重为2i*T,其中i为大于等于0的整数。T为每个子帧中的最小有效显示时间。
在步骤S103,将高有效位和低有效位的数值分散到所述m个子帧中,形成与所述多个子帧对应的多个子帧位数值序列,以及将每一个子帧位数值序列组合成一个子帧数据。
在步骤S104,将所述子帧数据提供给LED进行显示,所述LED的灰度等于高有效位驱动的LED点亮时间和余数位驱动的LED点亮时间的累积。在该实例中,根据所述多个子帧位权重序列和所述多个多个子帧位数值序列,逐子帧驱动LED显示屏的LED。
根据余数位R[0:k]、高有效位D[0:n]和有效显示时间逐个子帧显示,其中高有效位D[0:n]在所有子帧中同时点亮或不点亮,抽取R[0:k]个子帧点亮其余数位。即,在有效位驱动期间,对应于该有效位的LED或者始终点亮,或者始终熄灭。然而,在余数位驱动期间,根据余数位的数值,在权重有效的一些子帧中,LED点亮,在权重无效的另一些子帧中,LED熄灭。余数位驱动的LED点亮时间的累积大致等于余数位表示的灰度值。
以17位灰度数据D[0:16]为例,该灰度数据D[0:16]包括余数位R[0:5]和高有效位D[0:10],然后分散到60个子帧中,如表4所示。
对于高有效位D[0:10],D[0]在每个子帧中的有效显示时间为T,D[1]在每个子帧中的有效显示时间为2T,D[2]在每个子帧中的有效显示时间为4T,D[3]在每个子帧中的有效显示时间为8T,…D[10]在每个子帧中的有效显示时间为210T。
在灰度数据的显示过程中,根据高有效位D[0:10]中的每个数据位的数值,60个子帧中对应的有效显示时间全部点亮或熄灭。例如,若D[5]=1,则每个子帧中均点亮对应的有效显示时间32*T;若D[5]=0,则每个子帧中,对应的有效显示时间不点亮。
根据余数位R[0:5]的值选择点亮子帧的余数位。若R[0:5]=0,所有子帧的余数位不点亮;若R[0:5]=1,在60个子帧中选择一个子帧点亮其余数位,例如点亮第30个子帧;若R[0:5]=2,在60个子帧中选择二个子帧点亮其余数位,例如点亮第20个子帧和第50个子帧;若R[0:5]=3,在60个子帧中选择三个子帧点亮其余数位,例如点亮第20个子帧、第40个子帧、第60个子帧;若R[0:5]=5,在60个子帧中选择五个子帧点亮其余数位,例如点亮第12个子帧、第24个子帧、第36个子帧、第48个子帧、第60个子帧。以上子帧打散方案均能满足被选取的子帧均匀分布。本实施例的灰度显示驱动方法可以提供122881个灰度级别。
表4、根据本发明的灰度数据的子帧打散方案
上述的灰度显示驱动方法可以应用于图1所示的LED显示系统。灰度显示驱动装置将有效位和余数位分散到多个子帧中,得到每个子帧的灰度显示驱动数据。
将子帧数据作为数据信号DATA提供给单元板上的LED驱动电路。LED的灰度等于有效位驱动的LED点亮时间和余数位驱动的LED点亮时间的累积。LED驱动电路根据子帧数据产生逐位对应的输出信号,使得LED按照逐位分时显示的方式点亮或熄灭。或者,LED驱动电路根据子帧数据产生PWM信号,进一步利用PWM信号驱动开关晶体管,使得LED按照PWM控制的方式点亮或熄灭。
图3为根据本发明的实施例的用于LED显示屏的灰度显示驱动装置100的示意性框图。在该实施例中,将一个灰度数据分成60个子帧分时显示。该灰度显示驱动装置100例如是图1所示的LED显示控制器的一部分,用于执行图2所示的灰度显示驱动方法,向LED单元板提供逐位分时显示所需的数据信号DATA。
灰度显示驱动装置100包括灰度级计算模块101、余数位构建模块102、子帧数据生成模块103、子帧信号输出模块104和子帧数存储模块105。
子帧数存储模块105用于存储预先设定子帧数。在该实例中,子帧数m=A*B,A为大于0的奇数,B为大于0的偶数。在一个优选的实施例中,B=2η,其中η为大于0的整数。在另一个优选的实施例中,子帧数m为3或30的倍数,例如选自24、30、60、120、240、420、480之一。在该实例中,子帧位权重为2i*T,其中i为大于等于0的整数。T为每个子帧中的最小有效显示时间。子帧数存储模块105将预先设定的子帧数m(例如,m=60)提供给如下所述的余数位构建模块102。
以17位灰度数据D[0:16]为例,该灰度数据包括余数位R[0:5]和高有效位D[0:10]。灰度显示驱动装置100将17位灰度数据分成60个子帧进行扫描显示。在每个子帧中高有效位D[i]的有效显示时间为2i*T,其中i=0,1,2…10。将余数位R[0:5]一起插入到各次显示中,在每个子帧中余数位R[0:5]一起的有效显示时间为T。
在灰度级计算模块101中,根据视频信号中的显示数据计算出灰度数据D[0:16]。然后,根据表4所示的各子帧有效显示时间,计算高有效位的有效显示时间和余数位的数值。灰度级计算模块101将余数位的数值提供给余数位构建模块102。
在余数位构建模块102中,将余数位的数值均匀分布在各个子帧中。
在子帧数据生成模块103中,将高有效位D[0:10]的子帧有效显示时间和余数位R的子帧有效显示时间依次组合为多个子帧位权重序列。子帧数据生成模块103还将高有效位D[0:10]的子帧位数值和余数位R的子帧位数值依次组合为多个子帧位数值序列。然后,子帧数据生成模块103将子帧数据提供给子帧信号输出模块104。
在子帧信号输出模块104中,根据所述多个子帧位权重序列和所述多个子帧位数值序列,逐个子帧地输出灰度驱动信号,以驱动LED单元上的LED。
在逐位分时显示方式下,该灰度驱动信号例如包括相应子帧的子帧数据DATA和使能信号EN。针对每个位数据,使能信号EN的相应高电平持续时间与该位数据的权重成比例。在PWM控制方式下,该灰度驱动信号例如包括相应子帧的子帧数据DATA,并且PWM信号的占空比与所述子帧数据信号的数值和权重相关。上述实施例的灰度显示驱动方法及驱动装置,既能很好的满足LED显示屏日益提高的刷新率、灰度级等性能指标,又保证灰度数据的低有效位的灰度分辨率,提升了系统显示性能和显示效果。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明的保护范围应当以本发明权利要求所界定的范围为准。