驱动屏幕原理的简单理解

屏幕驱动一般分为串口与并口两种通信类型,并口驱动需要的io口更动,一般小屏的并口屏会占用8个io口即能同时传输一个字节的8位数据,串口通信需要的io口更少,串口是通过输入输出信号与时钟信号配合通过时序得到具体的通信数据。spi通信协议一般需要cs、sclk、miso、mosi,而在屏幕上一般不需要miso即不需要从设备到主机的输入,除了数据通信还要加上res控制lcd复位。在向屏幕传输信息时分为两种信息,命令command 与 数据data 则需要再加一个cd线来通过控制是传输的commad 还是data 。

学习屏幕的驱动必须要先了解屏幕的驱动ic,小屏的驱动ic大多是内置在屏内的,不同的驱动ic需要使用不同的驱动程序驱动不能共用程序,不同的ic的命令表是不同的,屏幕的驱动就是通过命令表中的命令控制像素的显示,所以驱动屏幕的程序主要是看ic对应的命令表。

点亮一个屏幕最关键的三点

  1. 屏的初始化过程,即在屏reset 后有一些必要的参数需要通过命令写入对应的寄存器,如电压、像素、刷新速度等,ic不同这个过程都不太一样。这一步决定屏幕是否能亮起,一般亮起后会是花屏状态。
  2. 每个像素的素色值是几位,值是如何分布的,如:单色屏一个像素一位只能黑白;四灰度屏一个像素两个位,可以描述四种颜色; rgb565 屏,一个像素两个字节,2的16次方种颜色;还有rgb888,一个像素三个字节,2的24次方种颜色。这个决定了我们应该如何配置buffer大小一般以为 width x height x (color_bit / 8 ) 个字节来作用buffer。这一步决定你是否能按自己设定的颜色清屏。
  3. 向屏幕写入数据时的排列顺序,lcd 点阵屏有的是按一行一行的顺序将byte 写入屏中,有的是按一列8行、一列8行写入,有的带灰度的可能是一列4行、一列4行的写入,这里需要看对应的手册。这一步决定你是否能按自己设定的位置写入正确颜色的像素。

当然上面的各步操作都要查找对应的命令表,手册一般会有介绍屏幕如何初始化的流程,要如何依次发送命令command与参数data 来初始化,初始化完成后通过写入屏幕ram的指令来写入像素数据就可以显示。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值