藏经阁(八)LCD控制器 ILI9341 解析

news/2024/7/7 19:39:00

文章目录

    • TFT屏幕介绍
    • LCD控制器
    • ILI9341控制器内部框图
    • ILI9341时序详解
    • RGB565数据格式


TFT屏幕介绍

LCD(Liquid CrystalDisplay)的全称是液晶显示器,是现在用的比较多的手机屏幕材料,特点是价格便宜,使用普及广泛,在显示的时候需要有背光的支持。
LCD 拥有不同显示技术包括:TFT、 IPS、SLCD、UFB、SNT、NOVA等,常见的就有今天要介绍的TFT屏。
TFT屏,又称薄膜场效应管液晶屏。 液晶屏内每个像素点都是由薄膜晶体管来驱动,每个像素点相对独立,并可以连续控制,可以精准控制显示色阶层。


LCD控制器

LCD控制器就是驱动TFT-LCD显示器的关键,它可以将接收到的信号转换的信号转成TFT-LCD屏需要的信号。控制器一般都集成在TFT-LCD模组内。


ILI9341控制器内部框图

在这里插入图片描述
RESX: 复位信号线
CSX: 片选信号线
D/CX: 数据与命令信号线
WRX: 写使能信号
RDX: 读使能信号线
DB[17:0]: 数据总线,支持8/9/16/18位
GRAM用于存放屏幕数据


ILI9341时序详解

ILI9341写时序:
在这里插入图片描述
1、片选CSX拉低(选中芯片)
2、数据与命令信号线D/CX拉低(发送命令)
3、写使能信号WRX拉低(写使能)
4、发送写命令数据(主机发送给LCD)
5、数据与命令信号线D/CX拉高
6、写使能信号WRX拉低(写使能)
7、发送数据(主机发送给LCD)

ILI9341读时序:
在这里插入图片描述
1、片选CSX拉低(选中芯片)
2、数据与命令信号线D/CX拉低(发送命令)
3、写使能信号WRX拉低(写使能)
4、发送写命令数据(主机发送给LCD)
5、数据与命令信号线D/CX拉高
6、读使能信号RDX拉低(读使能)
7、读取数据(LCD发送给主机)注:读出的第一个数据无效,第二个数据开始才是有效数据


RGB565数据格式

RGB565指的是红绿蓝(RGB)三原色在D[15:0]16位数据中的位数分布。
16位数据描述像素点的三原色比例为R:G:B=5:6:5

数据传输宽度:16位
红色:D11 - D15
绿色:D5 - D10
蓝色:D0 - D4
任何颜色都可以用三原色进行组合生成。可以组成25*26*2^5种颜色。

举例:
显示纯红色:0b11111 000000 00000
显示纯绿色:0b00000 111111 00000
显示纯蓝色:0b00000 000000 11111
显示纯黑色:0b00000 000000 00000
显示纯白色:0b11111 111111 11111

程序中只要控制每个像素点的D[15:0]16位数据值就能控制TFT屏幕中的每个像素点颜色。


http://lihuaxi.xjx100.cn/news/1169457.html

相关文章

Unity-vr用眼睛注视选择物体

Unity-vr用眼睛注视选择物体 文章目录 Unity-vr用眼睛注视选择物体工程版本用法说明脚本说明WatchController - 注视主控制器WatchEvent - 注视事件WatchGameobject - 被注视物体TimerTool - 计时器工具 总结 工程版本 unity2019.4.9f1 vs2019 项目工程源代码下载 用法说明 …

Gateway网关参数进行验签POST 包含requestbody 请求体封装

Gateway网关自定义拦截器的不可重复读取数据 特别注意一点, 因为在网关层 拿出 request 流之后,必须重写getbody()方法把所有的参数放进去,否则后面转发的请求无法接收到任何数据, 坑,巨坑,因为版本问题网上很多都不能兼容, 我的springboot环境 依赖包 <parent><gr…

go embed 实现gin + vue静态资源嵌入

前言 golang1.16出来以后&#xff0c;早就有打算把ckman项目的前端代码打包更换成embed。在此之前&#xff0c;使用的是pkger进行的打包。 但是今天打包时却报了个错&#xff1a; 而且通过各种手段尝试均无果之后&#xff0c;果断把决定立即将其更换为embed进行资源嵌入管理。…

5种易实现的Linux和 Windows VPS速度提升方法

​  无论是Linux VPS还是Windows VPS&#xff0c;网站速度的提高都是非常重要的。它们在提高网站速度方面都有很多的优化方法。下面我们将介绍 5 种提高网站速度的方法。 1.通过缓存加速 缓存通常是用来加快商业网站加载时间的技术&#xff0c;因此它也可以用在 VPS 上。没有…

如何在华为OD机试中获得满分?Java实现【差值数组不同的字符串】一文详解!

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: Java华为OD机试真题&#xff08;2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述…

C++线程

多线程 常见函数 构造函数 函数对应作用thread() noexcept空线程&#xff0c;什么都不做&#xff0c;noexcept作用是标识该函数不会抛出任何异常(简化代码生成过程)template <class Fn, class… Args> explicit thread(Fn&& fn, Args&&… args)创建一…

VB一款实现图像浏览的ActiveX控件

利用GDI实现浏览图片的ActiveX控件&#xff0c;功能:支持读取PNG格式的图片&#xff0c;支持鼠标飞轮对图片进行缩放&#xff0c;镜像&#xff0c;移动等功能&#xff0c;其中用到了功能强大的GDI&#xff0c;GDI&#xff0c;对初及vb编程爱好者运用GDI-API有很大的研究价值&am…

Python实现温度植被干旱指数(TVDI)的计算

前言 温度植被干旱指数&#xff08;Temperature Vegetation Dryness Index&#xff0c;TVDI&#xff09;是一种基于光学与热红外遥感通道数据进行植被覆盖区域表层土壤水分反演的方法。作为同时与归一化植被指数(NDVI)和地表温度(LST)相关的温度植被干旱指数(TVDI)可用于干旱监…