代码已经上库,https://github.com/lisider/OK6410/tree/master/lcd
硬件
14 Display Controller
寄存器范围 : 0x77100000 - 0x77100344
寄存器个数 : 105个
硬件接口 : 支持 RGB 和其他三种接口(I80接口/NTSC/PAL标准电视编码器接口/IT-R BT. 601 接口)
型号: FIT-LCD4.3
4.3 寸 屏
规格书与原理图
TODO
软件
https://github.com/lisider/OK6410/tree/master/lcd
思考
其实就是写一些 寄存器
1. 特殊寄存器类(S3C6410独有)
MOFPCON
SPCON
2. 时钟类
VIDCON0
3. 时序类
VIDTCON0
VIDTCON1
VIDCON1
4. 窗口类
VIDTCON2
VIDOSD0A
VIDOSD0B
VIDOSD0C
5. 像素类
WINCON0
6. framebuffer类
VIDW00ADD0B0
VIDW00ADD1B0
LCD CONFIG START
GPECON
0x0
GPEDAT
0x3
GPFCON
0x10000000
GPFDAT
0x4000
GPICON
0xAAAAAAAA
GPJCON
0xAAAAAA
MIFPCON
0x0
SPCON
0xBFCD1501
VIDCON0
0x93
VIDCON1
0xDEC060
VIDTCON0
0x10109
VIDTCON1
0x10128
VIDTCON2
0x879DF
WINCON0
0x2D
VIDOSD0A
0x0
VIDOSD0B
0xEF90F
VIDOSD0C
0x1FE00
VIDW00ADD0B0
0x54000000
VIDW00ADD1B0
0x7F800
VIDW00ADD2
0x0
LCD CONFIG END
lcd控制器侧 : 44.9 LCD CONTROLLER AC ELECTRICAL CHARACTERISTICS &Page1358
lcd 侧 : 7.4.2 Timing Requirement 1 &page18
配置的功能:
A.clock 频率(单位HZ)
1.体现在 XWCLK 引脚上(一般被称作VCLK或者CLK),被 VIDCON0 寄存器控制
B.同步时钟(单位CLK)
1. 帧同步脉冲宽度 & 帧同步前肩脉冲宽度 & 帧同步后肩脉冲宽度
2. 行同步脉冲宽度 & 行同步前肩脉冲宽度 & 行同步后肩脉冲宽度
C.HSYNC和VSYNC和VDEN脉冲极性
单一极性的脉冲,就是或只有正脉冲,或只有负脉冲。
简单地说,平地上突然冒出那么一下就叫脉冲;往上冒就正脉冲,往下冒就是负脉冲。
脉冲电压的跳动是低-高-低的,叫正脉冲;高-低-高跳动的,叫负脉冲
D.数据锁存时机
VLCK下降沿或者上升沿(具体要看lcd的手册)
配置的功能:
1. 图像左上像素的横纵坐标(大于等于0)
2. 图像右下像素的横纵坐标(小于等于window size)
3. window size
4. display 的 size (和 window size 有什么区别?)
配置的功能:
1. buffer start address & buffer end address & buffer size