1、像素点

于一个“小灯“,不管是液晶屏,还是手机,平板,RGBLCD屏幕他都是有由一个个的彩色小灯构成的。彩色点阵屏每个像素点有三个小灯,红色、绿色和蓝色,也叫做RGB。RGB就是光的三原色。通过调整RGB三种颜色的比例,就可以实现姹紫千红的世界。

2、分辨率

要想显示文字,图片,视频等等就需要很多个像素点,分辨率说的就是像素点的个数,1080P、720P、2K、4K,8K。1080P=1920*1080,表示一行有1920个像素点,一列有1080个。显示器有尺寸!24村,27村、55寸。尺寸不变的情况下,分辨率越高,显示效果越精细。4K=3840*2160相当于4个1080P

正点原子的RGB屏幕有:4.3寸480*272,800*480,7寸的800*480和1024*600,10.1寸的1280*800。

Iphone4屏幕尺寸是3.5寸,960*640分辨率,PPI=327.

3、像素格式

如何将RGB三种颜色进行量化,每种颜色用8bit表示,RGB就需要888共24bit。可以描述出2^24=中颜色16777216=1677万种颜色。现在流行10bit,HDR10,支持HDR效果的10bit面板,RGB10 10 10。

在RGB888的基础上在加上8bit的ALPHA通道,也就是透明通道,ARGB8888=32位。

4、LCD屏幕接口

RGB格式的屏幕,一般叫做RGB接口屏。

屏幕接口有:MIPI、LVDS、MCU、RGB接口。

正点原子屏幕ID:使用ID可以识别出不同的屏幕,在RGBLCD屏幕上对R7,G7,B7焊接上拉或下拉电阻实现不同的ID。,

正点原子的ALPHA地板RGB屏幕接口用了3个3157模拟开关。原因是防止LCD屏幕上的ID电阻影响到6ULL的启动。

5、LCD时间参数和LCD时序

android rgb565 出现条状 手机显示rgb_android rgb565 出现条状

 

水平:


HSYNC :行同步信号,当此信号有效的话就表示开始显示新的一行数据,查阅所使用的


LCD 数据手册可以知道此信号是低电平有效还是高电平有效,假设此时是低电平有效。


HSPW 有些地方也叫做 thp ,是 HSYNC 信号宽度,也就是 HSYNC 信号持续时间。 HSYNC


信号不是一个脉冲,而是需要持续一段时间才是有效的,单位为 CLK 。


HBP 有些地方叫做 thb ,前面已经讲过了,术语叫做行同步信号后肩,单位是 CLK 。


HOZVAL :有些地方叫做 thd ,显示一行数据所需的时间,假如屏幕分辨率为 1024*600 ,


那么 HOZVAL 就是 1024 ,单位为 CLK 。


HFP :有些地方叫做 thf ,前面已经讲过了,术语叫做行同步信号前肩,单位是 CLK 。


当 HSYNC 信号发出以后,需要等待 HSPW+HBP 个 CLK 时间才会接收到真正有效的像素


数据。当显示完一行数据以后需要等待 HFP 个 CLK 时间才能发出下一个 HSYNC 信号,所以


显示一行所需要的时间就是: HSPW + HBP + HOZVAL + HFP


android rgb565 出现条状 手机显示rgb_android rgb565 出现条状_02

 

垂直:一帧图像就是由很多个行组成的,RGB LCD 的帧显示时序如图 24.1.1.7 所示:


VSYNC :帧同步信号,当此信号有效的话就表示开始显示新的一帧数据,查阅所使用的


LCD 数据手册可以知道此信号是低电平有效还是高电平有效,假设此时是低电平有效。


VSPW 些地方也叫做 tvp ,是 VSYNC 信号宽度,也就是 VSYNC 信号持续时间,单位为


1 行的时间。


VBP 有些地方叫做 tvb ,前面已经讲过了,术语叫做帧同步信号后肩,单位为 1 行的时


间。


LINE 有些地方叫做 tvd ,显示一帧有效数据所需的时间,假如屏幕分辨率为 1024*600 ,


那么 LINE 就是 600 行的时间。


VFP 有些地方叫做 tvf ,前面已经讲过了,术语叫做帧同步信号前肩,单位为 1 行的时间。


显示一帧所需要的时间就是: VSPW+VBP+LINE+VFP 个行时间,最终的计算公式:


T = (VSPW+VBP+LINE+VFP) * (HSPW + HBP + HOZVAL + HFP)


因此我们在配置一款 RGB LCD 的时候需要知道这几个参数: HOZVAL( 屏幕有效宽度 ) 、


LINE( 屏幕有效高度 ) 、 HBP 、 HSPW 、 HFP 、 VSPW 、 VBP 和 VFP 。 ALIENTEK 三款 RGB LCD


屏幕的参数如表 24.1.1.3 所示:


android rgb565 出现条状 手机显示rgb_像素点_03

 

6、像素时钟


像素时钟就是 RGB LCD 的时钟信号,以 ATK7016 这款屏幕为例,显示一帧图像所需要的


时钟数就是:


= (VSPW+VBP+LINE+VFP) * (HSPW + HBP + HOZVAL + HFP) 
 
= (3 + 20 + 600 + 12) * (20 + 140 + 1024 + 160) 
 
= 635 * 1344 
 
= 853440 
 。


显示一帧图像需要 853440 个时钟数,那么显示 60 帧就是: 853440 * 60 = 51206400 ≈ 51.2M ,


所以像素时钟就是 51.2MHz 。


7、显存

显存:显示存储空间,采用ARGB8888=32bit=4B。这4个字节的数据表示一个像素点的信息,必须得存起来。1024*600*4=2.5MB。因此需要流出2.5MB的内存给LCD用,方法很简单,直接定义一个32位的数组,u32 lcdframe[1024*600];