1.ST7789V芯片介绍
1.ST7789V是一款带片内显存的TFT和LCD驱动芯片,支持触摸和显示功能。
2.最大分辨率为240RGB x 320,每个像素点为RGB颜色模式。
3.最大使用位宽为18位,需要1382400位(片内显存大小)来映射显存。
4.支持RGB像素控制的位宽为12到18位:
12-bit/pixel:RGB444:
16-bit/pixel:RGB565;
18-bit/pixe1:RGB666:
5.通信接口包括并行接口和串行接口,常用的是SPI:
- 并行接口: 8080标准,多根数据/地址线,传输速度快
- 串行接口: SPI标准,包含时钟线、数据线(1-2根)、片选线等
- 应用对比: 并行接口适合高速场景,SPI接口节省引脚资源
2.ST7789V的接口确定方法
1.通过IM3到IM0四个引脚来确定使用哪种接口。
2.不同的接口组合由屏幕厂商在设计时决定。(更多详情还是要查看其数据手册)
3.SPI接口包括SDA(数据输入)和SDO(数据输出)。
4.M3引脚控制SDA线的输入或输出方向。
3.STT7789V的控制引脚介绍
1.引脚类别
- RESX引脚:
- 功能:硬件复位(低电平有效)
- 特性:必须施加复位信号才能正确初始化芯片
- CSX引脚:
- 功能:片选信号(低电平使能)
- 用法:通信期间保持低电平,结束拉高
- DCX引脚:
- 双功能:并行接口时作数据/命令选择,SPI接口时作时钟
- 电平定义:高电平为显示数据,低电平为命令数据
2.实际连接
1.RESX→PG15,DCX→PF9,CSX→PD3
2.SPI接口:MOSI→SDI,MISO→SDO交叉连接
3.时钟线必须严格对应主机时钟输出
4.STT7789V的硬件复位时序
1.从高电平跳变到低电平时,复位脉冲时间至少为10微秒,取消复位时间在120毫秒内。
2.在拉低复位引脚10μs后,若在120ms内将引脚拉高,则会取消复位动作。
3.要实现完整复位,复位引脚需保持低电平至少120ms+10μs(即120.01ms)。
5.STT7789V的SPI通信速率
1.时钟周期最小为16纳秒,对应频率为62.5MHz。
2.SPI最大通信速率为42MHz,小于芯片支持的62.5MHz。
6.STT7789V的通信时序
1.片选信号低电平时进行通信,首先发送数据再接收数据:
- 第一个时钟周期:SCL第一个时钟上升沿时通过SDA发送输出数据(DOUT)
- 第二个时钟周期:通过SDA输入数据(DIN)
2.DCX引脚控制数据或命令的发送,DCX为低电平时发送命令。
3.SPI通信时序包括片选、时钟、MOSI和MISO引脚。
7.STT7789V的显存与显示地址映射
1.显存映射整片屏幕,通过Mx和My控制显示方向。
2.Mx和My的值决定显存数据的扫描方向:
- MX=0 MY=0:从左到右、从上到下(默认方向)
- MX=1 MY=0:从右到左、从上到下(X轴镜像)
- MX=0 MY=1:从左到右、从下到上(Y轴镜像)
- MX=1 MY=1:从右到左、从下到上(XY轴同时镜像)
3.MV引脚控制地址递增方向,0为X坐标递增,1为Y坐标递增:
- MV=0:X轴优先递增(行扫描),当X到达行末时Y+1,X归零
- MV=1:Y轴优先递增(列扫描),当Y到达列末时X+1,Y归零
8.STT7789V的指令集介绍
1.软件复位指令(SWRESET):0x01,无参数。
2.读取显示ID(RDDID):0x04,读取三个字节的ID信息。
3.读取显示状态(RDDST):0x09,连续读取五个字节。
4.读取功耗模式:0x0A,读取两个字节的功耗模式信息。
5.读取MADCTL寄存器:0x36,读取Mx、My、MV、ML和RGB控制位。
6.读取像素点格式:0x38,读取像素点格式信息。
7.进入休眠模式(SLPOUT):0x10,无参数。
8.唤醒从休眠模式(SLPDUI):0x11,无参数。
9.局部显示模式(PTLON):0x12,设置局部显示区域。
10.正常显示模式:0x13,关闭局部显示模式。
11.显示屏反转(INVOFF):0x20,开启或关闭显示屏反转。
12.关闭显示(DISPOFF):0x28,关闭屏幕显示。
13.开启显示(DISON):0x29,开启屏幕显示。
14.设置行地址(CASET):0x2A,设置X坐标的起始和结束地址。
15.设置列地址(RASET):0x2B,设置Y坐标的起始和结束地址。
16.发送显存数据:0x2C,发送n个字...