ALINETEK 2.8寸 TFTLCD驱动原理

Posted studying~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ALINETEK 2.8寸 TFTLCD驱动原理相关的知识,希望对你有一定的参考价值。

ALINETEK 2.8寸 TFTLCD接口说明(16位80并口)

注意:DB1~ DB8,DB10~ DB17,总是按顺序连接MCU的D0~D15
LCD_CS:LCD片选信号
LCD_WR:LCD写信号
LCD_RD:LCD读信号
DB[17:1]:16位双向数据线。
LCD_RST:硬复位LCD信号(与MCU复位引脚相连)
LCD_RS:命令/数据标志
(0:命令,1:数据)
BL_CTR:背光控制信号
T_MISO/T_MOSI/T_PEN/T_CS/T_CLK,触摸屏接口信号
在这里插入图片描述

ALINETEK 2.8寸 TFTLCD 16位80并口驱动简介

  1. 根据写入/读取的数据的类型,设置DC为高(数据)/低(命令)
  2. 然后拉低片选,选中ILI9341
  3. 接着我们根据是读数据,还是要写数据置RD/WR为低
  4. 然后:
    (1).读数据:在RD的上升沿, 使数据锁存到数据线(D[15:0])上;
    (2).写数据:在WR的上升沿,使数据写入到ILI9341(TFTLCD控制器)里面;
    在这里插入图片描述

驱动流程:

在这里插入图片描述

RGB565格式说明(颜色控制):

在这里插入图片描述

ILI9341指令格式说明

ILI9341所有的指令都是8位的(高8位无效),且参数除了读写GRAM的时候是16位,其他操作参数,都是8位的。

0XD3指令:该指令用于读取LCD控制器的ID 。因此,同一个代码,可以根据ID的不同,执行不同的LCD驱动初始化,以兼容不同的LCD屏幕。

0X36指令:该指令为存储访问控制指令,可以控制ILI9341存储器的读写方向,简单的说,就是在连续写GRAM的时候,可以控制GRAM指针的增长方向,从而控制显示方式(读GRAM也是一样)。

0X2A指令:该指令是列地址设置指令,在从左到右,从上到下的扫描方式(默认)下,该指令用于设置横坐标(x坐标)
包含四个参数,前面两个设置SC,后面两个设置EC,即设置x坐标的起始位置和结束位置,通常在设置x坐标的时候无需携带后两个参数,因为如果EC没有变化,我们只需要设置一次即可(在初始化ILI9341的时候就已经设置了),从而提高速度。

0X2B指令:该指令是页地址设置指令,在默认方式下,该指令用于设置纵坐标(y坐标)
道理一样

0X2C指令:该指令是写GRAM指令,在发送该指令之后,我们便可以往LCD的GRAM里面写入颜色数据了(通过参数的方式,每个参数对应一个坐标的颜色数据),该指令支持连续写 (地址自动递增,无需频繁设置坐标,大大增加效率)

0X2E指令:该指令是读GRAM指令,用于读取显存(GRAM),同0X2C指令,该指令支持连续读 (地址自动递增)(每三个参数得到两个坐标的颜色数据)。

以上是关于ALINETEK 2.8寸 TFTLCD驱动原理的主要内容,如果未能解决你的问题,请参考以下文章

STC32G单片机驱动1.8寸TFT LCD128X160 ST7735S SPI串口驱动示例

1.8寸TFT LCD128X160 ST7735S SPI串口屏驱动示例

如何驱动3.2寸TFT ILI9341液晶屏

STM32F412--FSMC驱动TFTLCD 例程

STM32F1基于STM32CubeMX配置硬件SPI驱动1.8寸TFT LCD128X160 ST7735S屏幕

37LCD-TFTLCD原理与配置