lcd屏幕驱动

一、RGBLCD显示原理简介(TFT lcd)

 

    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屏幕接口

      lcd 种类是tft

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

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

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

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

5、lcd时间参数

画一帧图片需要一行一行的画,HSYNC信号表示新的一行开始显示,信号的维持时间是HSPW

下一行像素的显示需要有个延时,叫做HFP

垂直:

VSYNC:垂直同步信号,帧同步信号,当出现这个信号的时候表示新的一帧开始显示,持续时间是vspw,间隔时间是VBP

6、显存

显示存储

存放一帧的图像数据大小,一般定义一个数组

rgb 888  24位 硬件中有24根数据线 ,每根数据线控制一位

屏幕的时序逻辑

画一帧图片需要一行一行的画,HSYNC信号表示新的一行开始显示,信号的维持时间是HSPW

下一行像素的显示需要有个延时,叫做HFP

垂直:

VSYNC:垂直同步信号,帧同步信号,当出现这个信号的时候表示新的一帧开始显示,持续时间是vspw,间隔时间是VBP

HSYNC信号表示新的一行开始显示

lcd控制器

LCD控制器的作用是将framebuff中的数据,传输给lcd屏幕并提高必要的控制信号

LCD 驱动编写

应用程序将数据写入framebuffer中,然后地址映射到内存中(物理内存与虚拟内存需要是一个地址)

lcd控制器从framerbuffer内存中将每个像素点发送给lcd              

famerbuffer驱动是一个字符驱动创建一个内存空间,可以直接对齐对写

frambuff驱动框架编写

fb_info结构体,里面包含LCD硬件信息、操作方法、软件配置等信息

参考链接:驱动之LCD驱动框架和实现 | DRA&PHO如题.https://draapho.github.io/2018/01/09/1804-drv-lcd/

一、分配fb_info

fb_alloc_framebuffer  为framebuffer分配空间,进行内存映射

二、设置fb_info

  初始化fb_info设备结构体

从数据手册中获取屏幕参数,需要的参数每个屏幕不一定相同,填充fb_info

操作函数也在其中

 

三、注册fb_info

register_framebuffer  

*注册fb设备到系统中

硬件的配置

1、引脚设置

配置GPIO用于LCD

2、时钟设置

根据LCD手册设置LCD控制器,比如VCLK的频率

3、lcd控制器设置

分配显存(framebuffer)并将地址告诉LCD控制器

chttps://www.cnblogs.com/lilto/p/11877847.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值