LCD学习


title: LCD学习
tags: ARM
date: 2018-10-28 20:18:48:59

引入

  • 裸屏,也就是最终接口是RGB的信号线,需要MCU支持液晶驱动或者MCU连接液晶驱动芯片

    在JZ2440连接的就是裸屏,接口一般如下:

    mark

  • 带驱动芯片的液晶模块,类似STM32就是这么使用的,比如使用STM32连接ili9341或者RA8875等驱动芯片,STM32通过FSMCRA8875通信,然后RA8875本身有相应的RGB信号线

硬件设计

所以在这里,并没有所谓的液晶驱动芯片,液晶驱动控制被集成在s3c2440内部已经. 板载的TFT液晶型号是AT043TN24,像素点是480*272,自带触摸屏

mark

注意:

  • HSYNC水平方向信号线,水平换行
  • VSYNC垂直方向信号线,也就是从头开始刷新显示
  • 板载的lcd是24数据线的,但是这里接了5+6+5,低位连地,因为2440支持16、24bpp显示

时序图

mark

在上图中,行信号和列信号中都有3个时间参数,对应显示区的黑框

  • VBPD(vertical back porch):表示在一帧图像开始时,垂直同步信号以后的无效的行数,对应驱动中的upper_margin;
  • VFBD(vertical front porch):表示在一帧图像结束后,垂直同步信号以前的无效的行数,对应驱动中的lower_margin;
  • VSPW(vertical sync pulse width):表示垂直同步脉冲的宽度,用行数计算,对应驱动中的vsync_len;
  • HBPD(horizontal back porch):表示从水平同步信号开始到一行的有效数据开始之间的VCLK的个数,对应驱动中的left_margin;
  • HFPD(horizontal front porth):表示一行的有效数据结束到下一个水平同步信号开始之间的VCLK的个数,对应驱动中的right_margin;
  • HSPW(horizontal sync pulse width):表示水平同步信号的宽度,用VCLK计算,对应驱动中的hsync_len;

mark

2440特性

  • 支持 TFT 的 1、2、4、8 bpp(位每像素)调色显示-----这里就是调色板
  • 支持彩色 TFT 的 16、24 bpp 无调色显示
  • 支持 24 位每像素模式下最大 16M 色 TFT
  • 典型实际屏幕尺寸:640×480、320×240、160×160

也就是说

  1. 使用真彩色,也就是在一块内存FB中存着实际的颜色值 1,2,4,8,16,24
  2. 使用调色板,FB内存单元存放着8位的索引,也就是最大256个索引,索引到实际的颜色值
  3. 临时调色板,启用之后只能使用这个颜色,用来刷屏等

2440外部GPIO如下

mark

寄存器设置

2440的手册有寄存器设置的向导TFT LCD CONTROLLER OPERATION

mark

mark

//这里选择9M,9=100M /[(CLKVAL+1) x 2], clkval = 4.5 = 5
// 选择支持 8bpp或者16bpp或者24bpp
8bpp=1011=0x0b
16bpp=1100=0x0c
24bpp=1101=0x0d 
int clkval = 5;
int bppmode = plcdparams->bpp == 8  ? 0xb :\
			  plcdparams->bpp == 16 ? 0xc :\
			  0xd;  /* 0xd: 24,32bpp */
LCDCON1 = (clkval<<8) | 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值