STM32自己从零开始实操04:显示电路原理图
一、TFT-LCD 屏接口
1.1指路
以下是该部分的设计出来后的实物图,我觉得看到实物图可能更方便理解这部分的设计。

- 这部分设计的是一个屏幕的接口,很简单。
- 使用的屏幕是:2.8inch 16BIT Module MRB2801。
1.2数据手册
(1)产品概述
该产品为一款 2.8 寸 TFT LCD 模块,其拥有 320x240 分辨率,支持 16BIT RGB 65K 色显示,内部驱动 IC 为 ILI9341。其硬件支持 8 位和 16 位并口数据总线模式切换,默认使 用 16 位并口数据总线模式。该模块包含有 LCD 显示屏、电阻触摸屏、SD 卡插槽以及 PCB 底板等部件,可以直插到 STM32 系列开发板上使用,还支持 SD 卡扩展功能。
(2)接口说明

该模块硬件支持8位和16位并口数据总线模式切换(如上面图中红框所示),具体说明如下
- 将 R5 焊接 0 欧电阻或者直接短接,并将 R4 断开:选择16位数据总线模式(默认), 使用DB0~DB15数据引脚。
- 将 R4 焊接 0 欧电阻或者直接短接,并将 R5 断开:选择8位数据总线模式,使用DB8~DB15数据引脚。
(3)重要说明
- 以下引脚序号 1~34 是指带 PCB 底板的模块排针引脚编号,如果您的是裸屏,请参考裸屏规格书的引脚定义,按照信号类型来参考接线而不是直接根据下面的模块引脚编号来接线,举例:CS 在模块上是 1 脚,可能在不同尺寸裸屏上是 x 脚。
- 关于 VCC 供电电压:如果您的是带 PCB 底板模块,VCC/VDD 供电可接 5V 或 3.3V(模块已集成超低压差 5V 转 3V 电路),但是建议接 3.3V,因为接5V会导致电路发热量增加,影响模块使用寿命;如果您的是液晶屏裸屏,切记只能接 3.3V。
- 关于背光电压:带 PCB 底板的模块均已集成三极管背光控制电路,只需 BL 引脚输入高电平或者 PWM 波则背光点亮。如果您购买的是裸屏,则 LEDAx 接 3.0V-3.3V,LEDKx 接地即可。
(4)引脚说明
是数据手册和自己设计电路的综合版本,不是单纯复制数据手册得来的。
序号 | 模块引脚 | 引脚说明 |
1 | LCD_CS | 液晶屏片选控制引脚(低电平使能) |
2 | LCD_RS | 液晶屏寄存器/数据选择控制引脚(低电平:寄存器,高电平:数据) |
3 | LCD_WR | 液晶屏写控制引脚 |
4 | LCD_RD | 液晶屏读控制引脚 |
5 | LCD_RST | 液晶屏复位控制引脚(低电平复位) |
6 | DB0 | 液晶屏数据总线低8位引脚(如果选择8位式,低8位数据引脚没有使用) |
7 | DB1 | |
8 | DB2 | |
9 | DB3 | |
10 | DB4 | |
11 | DB5 | |
12 | DB6 | |
13 | DB7 | |
14 | DB8 | 液晶屏数据总线高8位引脚 |
15 | DB9 | |
16 | DB10 | |
17 | DB11 | |
18 | DB12 | |
19 | DB13 | |
20 | DB14 | |
21 | DB15 | |
22 | GND | 模块电源地引脚 |
23 | LCD_BL | 液晶屏背光控制引脚(高电平点亮) |
24 | VDD | 模块电源正极引脚(模块已集成稳压IC,所以电源可接5V也可以接3.3V) |
25 | VDD | |
26 | GND | 模块电源地引脚 |
27 | GND | |
28 | NC | 无定义,保留 |
29 | TP_MISO | 触摸屏 SPI 总线数据输入引脚 |
30 | TP_MOSI | 触摸屏 SPI 总线数据输出引脚 |
31 | TP_NIRQ | 触摸屏中断检测引脚(发生触摸时为低电平) |
32 | NC | 无定义,保留 |
33 | TP_CS | 触摸屏IC片选控制引脚(低电平使能) |
34 | TP_CLK | 触摸屏SPI总线时钟控制引脚 |
该 LCD 模块硬件电路包含五大部分:LCD 显示控制电路(黄色)、电阻触摸屏采样电路(绿色)、SD 卡接口电路、数据总线模式切换电路(上面有图)以及背光控制电路。
- LCD 显示控制电路用于控制 LCD 的引脚,包括控制引脚和数据传输引脚。
- 电阻触摸屏采样电路用于检测触摸事件、将触摸数据进行 AD 转换、发送触摸坐标值。
- SD 卡接口电路用于 SD 卡功能扩展,控制 SD 卡的识别,读取及写入。
- 数据总线模式切换电路用于切换 8 位或者16 位并口数据总线模式切换。
- 背光控制电路用于控制背光亮度和供电电源选择。
1.3说明
1.3.1为什么有这部分和接下来的智能串口屏?
- UI(用户界面)是用户与设备或软件交互的界面。它包括所有用户看到并与之互动的元素,例如按钮、菜单、图标、文字、图形、输入框等。
-
TFT-LCD 屏幕只是一个显示器件,提供基本的显示功能。使用TFT-LCD屏幕时,需要通过编写代码来驱动屏幕,绘制所有的图形和 UI 元素,处理触摸输入等。这部分为需要的用户提供该实战板的屏幕开发更多的可能。
-
HMI屏幕通常提供了丰富的图形界面和交互功能,开发者可以通过简单的配置或脚本来实现复杂的界面交互,而不需要深入编程。生产厂家会提供上位机、软件服务,直接烧录到单片机里面,通过串口控制画面。这部分为需要的用户直接使用。

1.3.2本项目 TFT-LCD 屏及其接口类型及其特点
(1)并行接口 8080(红色)
如下图 4 :
1、D0-D15:16位数据总线。
2、3、4:控制引脚
其中 LCD_RS :
(2)通信:串行接口 SPI
:
(2)引脚
- 液晶屏寄存器/数据选择控制引脚(低电平:寄存器,高电平:数据)

相关文章:

STM32自己从零开始实操04:显示电路原理图
一、TFT-LCD 屏接口 1.1指路 以下是该部分的设计出来后的实物图,我觉得看到实物图可能更方便理解这部分的设计。 图1 实物图 这部分设计的是一个屏幕的接口,很简单。使用的屏幕是:2.8inch 16BIT Module MRB2801。 1.2数据手册 ࿰…...
数分—AB测试
一、介绍 AB测试是一种常用于比较两种或多种不同版本的产品、服务或策略效果的实验方法。在AB测试中,被比较的版本被标记为A组和B组,然后两组被随机分配给不同的用户群体或实验对象。接着,针对每个组收集数据,比如用户行为、转化…...

基于全志T507-H的Igh EtherCAT主站案例分享
基于全志T507-H的Linux-RT IgH EtherCAT主站演示 下文主要介绍基于全志T507-H(硬件平台:创龙科技TLT507-EVM评估板)案例,按照创龙科技提供的案例用户手册进行操作得出测试结果。 本次演示的开发环境: Windows开发环…...
刷题记录(20240605)
1.数组构造 题目描述 小红的数组构造小红希望你构造一个数组满足以下条件: 1.数组共有 n个元素,且所有元素两两不相等。 2.所有元素的最大公约数等于 k。 3.所有元素之和尽可能小。请你输出数组元素之和的最小值。 输入描述: 两个正整数 n 和 k。 输出描述ÿ…...
CUDA和OpenGL纹理texture结合
cuda和OpenGL纹理结合,并进行直方图计算 针对于单通道16位图像。结合方式在CUDA_equalizeHistogram_16函数中。 其他的为CUDA核函数。 #define HISTOGRAM_LENGTH 65536 // 2^16 表示16位深度定义直方图长度为65536,对应16位像素值的范围(0-65535)。 __global__ void com…...

市场凌乱,智能算法哪种效果好?
当我们在面对市场波动,个股震荡,无从下手的时候,不懂算法的朋友就只懂做t;懂算法的朋友这会儿就迷茫并不知道选择哪种智能算法交易?今天小编给大家整理一套性价比高的,适合个人投资者搞的算法交易ÿ…...

学会这14大招,30天涨粉两三千没问题!沈阳新媒体运营培训
很多小白在刚转入公司做新媒体时,基本都是从帮助公司运营账号开始的。但不同于个人号,一个企业本身是没有ip属性的,它的风格、调性等,都需要通过你的运营,让它变成一个活灵活现的、赋予独立个性人设的账号。 目前&…...
SQL数据库性能优化
1.查询尽量避免使用select * 1.1 增加磁盘开销:数据库本质上是将记录存储在磁盘上,查询操作就是一种进行磁盘IO的行为,我们查询的字段越多,读取的内容也就越多,对IO磁盘的开销也就会增大,特别是某些字段,如…...

eNSP学习——RIP路由协议基础配置
目录 主要命令 原理概述 实验内容 实验目的 实验拓扑 实验编址 实验步骤 1、基本配置 2、使用RIPv1搭建网络 开启 RIP调试功能 3、使用RIPv2搭建网络 RIPv1和RIPv2的不同 需要eNSP各种配置命令的点击链接自取:华为eNSP各种设备配置命令大全PD…...
备考系统架构设计师,看这篇就够了!(包括核心总结、真题、论文、模拟试题索引)
注:以下章节核心总结来自最新版课本:系统架构设计师教程(第2版): https://url35.ctfile.com/f/52515535-1268514286-ca9b3a?p6235 ( 访问密码: 6235, 电子版 pdf 文件大小: 168.9 M ,需要的话可自行下载,…...
stm32编译原理
STM32编译原理主要包括以下几个方面: (1)编译器选择:STM32可以使用多种编译器进行开发,如Keil、IAR、GCC等。不同的编译器有不同的特点和优缺点,需要根据具体需求进行选择。 (2)编…...
如何以JNI方式实现安卓APP控制GPIO?
本文档提供了在 Android 10 设备上通过应用程序(App)控制通用输入输出(GPIO)的详细指南。这涵盖了从创建 gpio驱动到App 配置 以及 SELinux 策略以允许特定访问的所有必要步骤。 1. 驱动实现 添加创建gpio控制驱动bsp\kernel\ke…...

计算机网络学习笔记——运输层(b站)
目录 一、 运输层概述 二、运输层端口号、复用与分用的概念 三、UDP和TCP的对比 四、TCP的流量控制 五、TCP的拥塞控制 六、TCP超时重传时间的选择 七、TCP可靠传输的实现 八、TCP报文段的首部格式 一、 运输层概述 物理层、数据链路层、网络层实现了主机到主机的通信…...
HBase数据库面试知识点:第二部分 - 核心技术(持续更新中)
目录 1. 分布式存储与HDFS 2. 面向列的存储 3. 数据版本控制 4. Region与RegionServer 5. 分布式协调服务(ZooKeeper) 1. 分布式存储与HDFS HBase利用Hadoop的HDFS作为其底层存储系统,确保数据的高可靠性和可扩展性。 数据块࿰…...

Spring 使用SSE(Server-Sent Events)学习
什么是SSE SSE 即服务器发送事件(Server-Sent Events),是一种服务器推送技术,允许服务器在客户端建立连接后,主动向客户端推送数据。 SSE 基于 HTTP 协议,使用简单,具有轻量级、实时性和断线重…...

词法分析器的设计与实现--编译原理操作步骤,1、你的算法工作流程图; 2、你的函数流程图;3,具体代码
实验原理: 词法分析是编译程序进行编译时第一个要进行的任务,主要是对源程序进行编译预处理之后,对整个源程序进行分解,分解成一个个单词,这些单词有且只有五类,分别时标识符、关键字(保留字&a…...

linux查看磁盘类型命令
在Linux中,有多种方法可以查看磁盘是固态硬盘(SSD)还是机械硬盘(HDD)。以下是一些常用的方法: 查看/sys/block/目录 /sys/block/目录包含了系统中所有块设备的信息。你可以查看这个目录中的设备属性来判断…...
多线程调用同一个不包含可变状态,并且是线程安全的方法时,可同时执行,不必等待排队
多线程调用同一个不包含可变状态,并且是线程安全的方法时,可同时执行,不必等待排队 前言同时执行方法的条件示例并发执行的优势实验验证总结 前言 如果方法不包含可变状态,并且是线程安全的,那么在高并发环境下&#…...

Java文件操作①——XML文件的读取
系列文章目录 文章目录 系列文章目录前言一、邂逅XML二、应用 DOM 方式解析 XML三、应用 SAX 方式解析 XML四、应用 DOM4J 及 JDOM 方式解析 XMLJDOM 方式解析 XMLDOM4J 方式解析 XML前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。…...

【记录】网络|没有路由器没有网线,分别使用手机或Windows电脑共享网络给ARM64开发板,应急连接
事情是这样的,我的开发板明明已经选择了记住热点 WiFi 密码,但是却没有在开机的时候自动连接,我又没有放显示器在身边,又不想为了这点事去找个显示器来,就非常难受。 我手边有的设备是: 笔记本电脑&#…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
Web中间件--tomcat学习
Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机,它可以执行Java字节码。Java虚拟机是Java平台的一部分,Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG
TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码:HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
目录 lua脚本 记录流水 记录流水的作用 流水什么时候删除 我们在做库存扣减的时候,显示基于Lua脚本和Redis实现的预扣减 这样可以在秒杀扣减的时候保证操作的原子性和高效性 lua脚本 // ... 已有代码 ...Overridepublic InventoryResponse decrease(Inventor…...