3.5寸TFT液晶屏验证板设计过程——硬件篇
硬件篇
由于项目需要,需设计一款3.5寸液晶屏验证板。
介绍一下3.5寸液晶屏的信息,采用ILI9488芯片,供电电压2.8V,默认MCU16bit通信,分辨率480*320,带电容触摸板,液晶屏采用40pin0.5mmFPC接口。3.5寸液晶屏采用MCU16bit通信,可以说是采用该种通信方式中可以做的最大尺寸了,3.5寸以上的尺寸一般通过RGB方式通信,根据目前手中可用的MCU,可选STM32F103VCT6(或者GD32F303VCT6),选择的原因就是就是100pin的MCU带FSMC(或者EXMC),相比较目前的市场环境,优先选择国产的GD32F303VCT6,原因就是便宜。
GD32F303VCT6的外部存储器控制器EXMC支持8080接口,在其数据手册中可以看到
通过对GD32F303VCT6各引脚的功能查询,首先分配了数据接口的D0~D15。
第一步:划分验证板的主要功能模块:
本验证板主要是为了验证3.5寸液晶屏,故液晶屏显示模块作为本验证板的第一功能首先被确认下来;
其次为实现液晶屏的控制,MCU模块确认为第二部分功能模块,也是整个验证板的核心,包括其最小系统(时钟、复位、下载口等);
接下来是触摸模块,触摸功能的实现是通过下拉中断方式加上IIC标准接口;
当然少不了供电/充电模块,主供电采用3.7V/2600mAh的18650锂电池,选用锂电池肯定少不了充电了,故选择SUM9512充电芯片,充电电流可达1A;
充电接口采用USB接口,同时预留USB通信功能,与预留的串口通信接口共同组成了通信模块;
USB或者电池过来的电压是不符合系统需求的,需要通过DC-DC模块转换成满足系统需求的电压,在本验证板中,单片机系统和液晶显示的需求电压都是3.3V,故选择一个LDO基本就可以满足要求;
为了操作方便,增加一个按键模块,实现基本开关机功能,开机通过触碰开关后自锁来实现,同时短按按键可以实现显示界面的的切换,长按关机;
通过一层层的功能分析,验证板的各部分功能模块也就出来了,接下来就是各个模块的具体实现了。
第二步:各功能模块的具体设计:
模块的具体设计要采用对于关联关系要先重后轻,分线进行。例如我们都知道整个系统的运行其实就是MCU各种状态的变化,IO口的状态变化是所有控制的具体体现,故在与MCU的连接中找出比较重要的线先行进行设计,这些引脚也多是对应固定的IO口,例如USB、串口、FSMC(或者EXMC)接口。也可以结合电流的流向来依次设计。
根据第一步的功能模块的划分,我们定义一些标号,例如VCC_USB(USB供电)、BATT(电池供电)、VBAT(整合后的系统电)、VCC_MCU(LDO转化后的系统电)。
接下来进行具体的模块设计:
液晶屏显示模块:液晶屏是通过EXMC的LCD功能实现,把 LCD 当成 SRAM 设备用:首先我们了解下外部 SRAM的连接, 外部 SRAM 的控制一般有: 地址线 (如 A0~A18) 、 数据线 (如 D0~D15) 、 写信号 (WE) 、读信号 (OE) 、 片选信号 (CS) ;TFTLCD的信号包括:RS、D0~D15、WR、RD、CS、RST 和 BL 等,其中真正在操作LCD 的时候需要用到的就只有:RS、D0~D15、WR、 RD 和 CS。 其操作时序和 SRAM的控制完全类似,唯一不同就是 LCD 有 RS 信号,但是没有地址信号。LCD 通过 RS 信号来决定传送的数据是数据还是命令,本质上可以理解为一个地址信号。
故将RS连接到EXMC的A16上,具体的放到哪个地址线上就需要根据实际走线来变化了,任何一个地址线理论上都是可以的。液晶屏接口线序如下图:
这个是液晶屏的接口,里边有IM0~IM2是选择通信方式的,目前不清楚具体的控制方式就只能用一个笨方法,上下接都预留出来,实际使用时再选择具体的连接。LEDA和LEDK时背光的控制,采用两级背光控制,其中一级为固定背光亮度,一级为可调背光亮度(PWM控制)。再将供电连接上,复位上拉,显示模块就完成,具体效果看下图:
通信模块:通信模块的通信功能主要是USB和串口,均为预留功能用于调试使用,再硬件方面,接口比较简单,其中串口通过查询MCU的技术手册,选用以下两个引脚,
USB选用以下引脚,
USB是高速信号,要做一定的滤波处理,实际的通信模块如下:
触摸模块:触摸功能的实现实际上就是一个中断就上IIC通信,其中IIC选用引脚
供电/充电模块:充电芯片使用的是SUM9512充电芯片,这也是一个国产芯片,外围电路简洁,成本低,这里面与MCU模块没有直接交集,充电指示直接使用一个LED来完成指示功能:
供电模块实际是需要按键模块和MCU模块参与来实现供电自锁的,需要一个普通的IO口输出就可以了:
DC-DC模块:基本就是一个稳压作用,LDO基本有几百毫安的供电能力,基本能满足本测试板的供电。
对于液晶屏的供电通过一个MOS开关来控制,复位不用,出现问题直接断电后重新上电,最利索方式了。
到此各个模块基本上都已经设计完成,通过PCB设计后就可以开始软件设计了。MCU的模块设计基本上就是各个模块设计说对应的引脚相连,对于单片机的最小系统,大家都是非常熟悉的了,就不进行详细的介绍了。
硬件设计思路每个人都有自己最舒服的方式,对一些关键点注意一下就可以了,**自己。大家有什么想法或好的习惯,可以回复一起交流,共同进步!
---------------------
作者:qintian0303
链接:https://bbs.21ic.com/icview-3171544-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。
3.5寸TFT液晶屏验证板设计过程——硬件篇相关推荐
- 全志H616开发板Orange Pi Zero2连接香橙派5寸TFT液晶屏的测试说明
香橙派Zero2开发板采用全志H616 四核 64位处理器,拥有512MB/1GB 内存可选,集成千兆以太网卡.蓝牙5.0+双频WiFi(2.4GHz和5GHz).USB2.0.Micro-HDMI( ...
- ZYNQ7020(黑金)纯verilog驱动4.3寸RGB接口TFT液晶屏(AN430)显示彩条
ZYNQ7020(黑金)纯verilog驱动4.3寸RGB接口TFT液晶屏(AN430)显示彩条 简介 像素(Pixel):像素是指由图像的小方格组成的,这些小方快都有一个明确的位置和被分配的色彩数值 ...
- 物联网开发笔记(85)- 使用Micropython开发ESP32开发板之通过I2C控制0.91寸OLED液晶屏
一.目的 这一节我们学习如何使用我们的ESP32开发板来学习通过I2C控制0.91寸OLED液晶屏. 二.环境 ESP32 + Thonny + 0.91寸 OLED显示液晶屏模块 + 几根杜邦线 + ...
- STM32 FSMC接口驱动4.3寸TFT LCD屏
STM32 FSMC接口驱动4.3寸TFT LCD屏 STM32的FSMC接口是并行总线接口,可以用于驱动存储芯片如FLASH/SRAM等,也可以用于驱动并口LCD屏. 这里以STM32F103VET ...
- ADI Blackfin DSP处理器-BF533的开发详解20:4.3寸LCD液晶屏的设计与应用(含源码)
硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 硬件设计原理图 功能介绍 ADSP-EDU-B ...
- Arduino--0.91寸OLED液晶屏
(1)简介 0.91寸OLED液晶屏如下图所示,接线比较简单,通过IIC通讯,但是需要注意的是OLED没有背光,只供电的情况下是不会有任何显示的,只有程序正确下载后才会有显示. (2)接线 0.91O ...
- 10.1寸工业液晶屏G101EAN02.2-lvds工控屏
G101EAN02.2是友达 (AUO)推出的一款10.1吋a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸.此产品工作温度为 -20 ~ 70°C,存储温度 ...
- 京东方GV101WXM-N81-D850参考规格 10.1寸工业液晶屏
GV101WXM-N81-D850 是京东方 (BOE)推出的一款10.1英寸a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸. 京东方GV101WXM-N8 ...
- 【雕爷学编程】Arduino动手做(136)---0.91寸OLED液晶屏模块
37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...
- 京东方GV101WXM-N81-D850镜面LED液晶模组 10.1寸工业液晶屏
GV101WXM-N81-D850 是京东方 (BOE)推出的一款10.1英寸a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸. 京东方GV101WXM-N8 ...
最新文章
- android studio 去掉标题栏的简单方法
- 转牛人博客 稀疏矩阵定义CSR COO CSC 第一个讲的清晰易懂的人
- oracle insert parallel,insert /*parallel */ 到不同用户,并行起不来的问题
- 新装 Win7 系统装完驱动精灵,一打开到检测界面就卡死——原因与解决方案
- java 主从表_如何开发主从报表
- 阿里开源分布式事务seata带你入门
- IDEA设置类、方法注释模板
- 信息学奥赛一本通C++语言——1107:校门外的树
- 网管,真的是我该选择的路吗?
- 核心网upf作用_5G核心网关键技术研究
- 浪涌保护器ant120_菲尼克斯浪涌保护器
- 怎么通过服务器性能计算tpmc,如何对服务器性能计算的公式参考(tpmc-tpcc)...pdf
- Updates were rejected because the tip of your current branch is behind hint: its remote counterpart
- 基于STM32和ESP8266的天气预报系统
- 计算机显卡维修,pci-e显卡基本维修教程
- Flutter 布局之企鹅电竞
- java实习找工作经历
- 装修鸿蒙瓷砖选择,电视墙用什么材料好?实用与美观,到底该如何选?
- Python简笔画——用Turtle库画一只《穿红靴子的小鸭》
- 决策树C4.5算法 c语言实现,数据挖掘十大经典算法(1) C4.5_决策树算法
热门文章
- flutter中Image.network()网络图片加载失败使用默认图片显示
- docker insecure-registry
- 微软自带dns服务器,win10微软设置哪个DNS服务器地址最快
- Java服务器通过SCP连接Linux服务器上传、下载文件
- (转载)巴西世界杯谁能夺冠?霍金和高盛做预测
- 2020年408真题_2020年港澳台联考真题——化学!
- PHP傻瓜式一键建站系统源码+无需授权
- Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
- 常见电脑故障之网络不通
- mysql 磁盘组_Oracle asm 添加磁盘组