硬件篇

由于项目需要,需设计一款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液晶屏验证板设计过程——硬件篇相关推荐

  1. 全志H616开发板Orange Pi Zero2连接香橙派5寸TFT液晶屏的测试说明

    香橙派Zero2开发板采用全志H616 四核 64位处理器,拥有512MB/1GB 内存可选,集成千兆以太网卡.蓝牙5.0+双频WiFi(2.4GHz和5GHz).USB2.0.Micro-HDMI( ...

  2. ZYNQ7020(黑金)纯verilog驱动4.3寸RGB接口TFT液晶屏(AN430)显示彩条

    ZYNQ7020(黑金)纯verilog驱动4.3寸RGB接口TFT液晶屏(AN430)显示彩条 简介 像素(Pixel):像素是指由图像的小方格组成的,这些小方快都有一个明确的位置和被分配的色彩数值 ...

  3. 物联网开发笔记(85)- 使用Micropython开发ESP32开发板之通过I2C控制0.91寸OLED液晶屏

    一.目的 这一节我们学习如何使用我们的ESP32开发板来学习通过I2C控制0.91寸OLED液晶屏. 二.环境 ESP32 + Thonny + 0.91寸 OLED显示液晶屏模块 + 几根杜邦线 + ...

  4. STM32 FSMC接口驱动4.3寸TFT LCD屏

    STM32 FSMC接口驱动4.3寸TFT LCD屏 STM32的FSMC接口是并行总线接口,可以用于驱动存储芯片如FLASH/SRAM等,也可以用于驱动并口LCD屏. 这里以STM32F103VET ...

  5. ADI Blackfin DSP处理器-BF533的开发详解20:4.3寸LCD液晶屏的设计与应用(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 硬件设计原理图 功能介绍 ADSP-EDU-B ...

  6. Arduino--0.91寸OLED液晶屏

    (1)简介 0.91寸OLED液晶屏如下图所示,接线比较简单,通过IIC通讯,但是需要注意的是OLED没有背光,只供电的情况下是不会有任何显示的,只有程序正确下载后才会有显示. (2)接线 0.91O ...

  7. 10.1寸工业液晶屏G101EAN02.2-lvds工控屏

    G101EAN02.2是友达 (AUO)推出的一款10.1吋a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸.此产品工作温度为 -20 ~ 70°C,存储温度 ...

  8. 京东方GV101WXM-N81-D850参考规格 10.1寸工业液晶屏

    GV101WXM-N81-D850 是京东方 (BOE)推出的一款10.1英寸a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸. 京东方GV101WXM-N8 ...

  9. 【雕爷学编程】Arduino动手做(136)---0.91寸OLED液晶屏模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  10. 京东方GV101WXM-N81-D850镜面LED液晶模组 10.1寸工业液晶屏

    GV101WXM-N81-D850 是京东方 (BOE)推出的一款10.1英寸a-Si TFT-LCD液晶模组产品,它装配有WLED背光,含LED驱动器背光驱动,无触摸. 京东方GV101WXM-N8 ...

最新文章

  1. android studio 去掉标题栏的简单方法
  2. 转牛人博客 稀疏矩阵定义CSR COO CSC 第一个讲的清晰易懂的人
  3. oracle insert parallel,insert /*parallel */ 到不同用户,并行起不来的问题
  4. 新装 Win7 系统装完驱动精灵,一打开到检测界面就卡死——原因与解决方案
  5. java 主从表_如何开发主从报表
  6. 阿里开源分布式事务seata带你入门
  7. IDEA设置类、方法注释模板
  8. 信息学奥赛一本通C++语言——1107:校门外的树
  9. 网管,真的是我该选择的路吗?
  10. 核心网upf作用_5G核心网关键技术研究
  11. 浪涌保护器ant120_菲尼克斯浪涌保护器
  12. 怎么通过服务器性能计算tpmc,如何对服务器性能计算的公式参考(tpmc-tpcc)...pdf
  13. Updates were rejected because the tip of your current branch is behind hint: its remote counterpart
  14. 基于STM32和ESP8266的天气预报系统
  15. 计算机显卡维修,pci-e显卡基本维修教程
  16. Flutter 布局之企鹅电竞
  17. java实习找工作经历
  18. 装修鸿蒙瓷砖选择,电视墙用什么材料好?实用与美观,到底该如何选?
  19. Python简笔画——用Turtle库画一只《穿红靴子的小鸭》
  20. 决策树C4.5算法 c语言实现,数据挖掘十大经典算法(1) C4.5_决策树算法

热门文章

  1. flutter中Image.network()网络图片加载失败使用默认图片显示
  2. docker insecure-registry
  3. 微软自带dns服务器,win10微软设置哪个DNS服务器地址最快
  4. Java服务器通过SCP连接Linux服务器上传、下载文件
  5. (转载)巴西世界杯谁能夺冠?霍金和高盛做预测
  6. 2020年408真题_2020年港澳台联考真题——化学!
  7. PHP傻瓜式一键建站系统源码+无需授权
  8. Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
  9. 常见电脑故障之网络不通
  10. mysql 磁盘组_Oracle asm 添加磁盘组