嵌入式ARM学习总结之LCD显示屏

kelly的头像
kelly 发布于:周四, 10/20/2016 - 18:06 ,关键词:

1、常用显示类型

1)数码管:0.7—1元 成本低,只能显示数字和字母

2)字符型液晶屏:LCD1602 15—25,显示数字和字母

3)点阵型黑白屏:LCD12864 50—90之间 可以显示汉字和图片

4)STN-LCD 彩屏 成本低 响应速度慢(刷新频率低),播放视频有拖尾现象

5)TFT—LCD 彩屏,主流

6)0LED 功耗低,无需背光 日本技术 今后主流

7)LED广告屏(一个一个LED组成)--成本高,耐用

2、点像素

1个点有多少种状态,多少种颜色

1bpp 1位 黑白屏 1bpp,1位每像 素

2bpp 2位 4种状态

4bpp 4位 16种状态

8bpp 8位 256种状态

16bpp 65536 假彩 16*16的一个汉字需要256个半字--512字节控制

24bpp 24位 真彩

3、彩色格式 RGB红绿蓝

1)565格式 11111 000000 11111 红绿蓝

黑色 全零0x0000

白色 0xffff

红色 111110000000000000 xf800

绿 0x07e0

蓝 0x001f

2)5551格式: 红绿蓝 后面的1表示透明色

颜色转换

16BBP RGB 5:6:5 网上24BBP较多 RGB 8:8:8 但16bBBP很少

把32BBP转换成24BBP方法:去掉8:8:8的低位变成5:6:5形式 例如:24位:01010111 01111101 01100111 ----》16位:01010 011111 01100

4、行,场信号

1)TFT显示原理与时序操作步骤:

设置寄存器

第一步:上同步

第二步:再同步

第三步:确定多少行:

a.行前同步信号

b.行前再同步信号

c.告诉这一行有多少列

d.行后同步信号

第四步:下同步信号

5、视口,虚拟屏,实际屏

1)视口:当前显示的区域(窗口)

2)实际屏:屏的实际大小(物理屏)

3)虚拟屏:被视口遮挡住的那部分看不到的屏(视口后面的部分),可以大于物理屏(把视口移到最边上,有一部分看不到)

S3C2440显示的图片最大为4M (只有22位地址)

LCDsaddr1 29:21位 图片4M内存的起始地址

LCDbaseu 20:0 位 图片在4M内存中的偏移地址

ARM为32位控制器:所有的指令和寄存器都是32位

6、做任何电子产品和学习模块一般需要三步:(以LCD显示为例)

第一步:明确目的

TFTLCD显示自己的名字(红,绿,蓝)

让名字满屏跑

将自己的图片显示

第二部:硬件设计

1)看芯片概述和介绍

2)看管脚图和管脚说明

3)看典型电路图

第三步:软件设计

程序流程(LCD为例)

a.LCD初始化:

b.配置GPIO为LCD模式

c.配置行、场信号---5个寄存器

d.配置视口、打开视频线、物理屏---3个寄存器

e.打开:打开显示,打开视频线,开电源

f.显示:将需要显示的数据送入对应的内存空间(相应的数组数据)

g.写程序(源码分析)

7、16bpp的TFT显示原理

16*16个点(即16个像素)显示一个汉字,每个点的颜色由16位二进制控制(即两字节),显示彩色
8*16个像素显示一个字符

围观 536