基于STM32的电池管理系统触摸屏设计方案
拥有可达128KB的嵌入式闪存、20kB的SRAM 和十分丰富的外设:两个1μs的12位ADC,一个全速USB(OTG)接口,一个CAN 接口,三个4 M/S的UART,两个18 M/S的SPI,两个I2 C等。内部还集成了复位电路、低电压检测、调压器、精确的RC振荡器等,大大方便了用户的开发。该系列单片机不仅功能强大而且功耗相当低,在72 MHz时消耗36 mA(所有外设处于工作状态),相当于0.5 mA/MHz,待机时下降到2μA ,是32位市场上功耗最低的产品。综上STM32F103系列单片机的性能完全可以满足液晶触摸显示屏的所有控制需要,内置A/D可以用于触摸屏控制,丰 富的I/O 接口可以用于与TFT液晶屏模块的通信,并且其本身自带CAN控制器可以作为与外界通信接口,用STM32F103做主控制器可以减少使用器件从而简化使 整体电路,很好地达到降低EMS成本的目标。
2.2 TFT液晶屏模块
本方案选用的是3.5寸的TFT液晶屏模块,工作电压3.3 V,最大工作电流70 mA.支持320×240分辨率,内置230K内存显示可到256K色,可显示文字和图形,采用LED背光设计,使用软件即可对背光亮度进行调节,内置简 体中文字库,支持2D的BTE引擎,同时建几何图形加速引擎,可以对显示对象进行复杂的操作如画面旋转功能、卷动功能、图形Pattern、双层混合显示 和文字放大等等。这些功能将可节省用户在TFT屏应用的开发时间,提升MCU软件的执行效率并且使画面更加绚丽,显示功能更加丰富,使显示屏显示能力大大 增强。提供8位或16位总线接口,方便与MCU的连线,适应性强,连接设计灵活。
3 硬件连接设计方案
3.1 总体构架
液晶触摸显示屏系统主要由微控制器STM32F103、TFT液晶屏模块、四线电阻触摸屏以及与外界通信的CAN总线接口组成。硬件模 块连接如图3所示,其中四线电阻触摸屏的触摸检测装置安装在TFT液晶屏前面用于检测用户触摸的位置,本方案利用STM32F103 自带A/D 转换功能,由STM32F103实现触摸屏控制器的功能来直接控制四线电阻触摸屏,检测触摸信息并计算出触点坐标。然后STM32F103通过I/O接口 与TFT液晶屏模块通信,将处理好的有效信息通过TFT 液晶屏显示出来。由于STM32F103内置CAN 总线控制器所以CAN总线接口可以直接从STM32F103的管脚引出,用来与EMS进行通信,完成现实信息采集,设置参数等功能。
图3 方案总体框图
3.2 STM32F103与四线电阻触摸屏的接口电路
如图4所示,STM32F103与四线电阻触摸屏直接通过自身的I/O口连接,实现触摸屏控制器功能。其中PA8、PA9、PA10、 PA11分别作为四个三极管的控制端,通过控制三极管通断,来控制四线触摸屏的Y+、Y-、X+、X-.PA1,PA2是两个A/D转换通道,分别连接 Y+和X+用于计算触摸点的X和Y坐标。PA3连接内部中断用于检测触摸屏是否有触摸动作。触摸屏平时运行时,令PA8、PA9、PA11输出 0,PA10=1,即只让VT2导通。当有触摸动作时,D1导通给PA3一个中断信号,STM32F103接收到中断请求后立即置PA8=1,导通 VT1,这样在Y+、Y-方向上就加上电压,同时启动A/D转换通道PA2,通过输入X+上电压计算出触摸点的Y坐标,然后同理令PA8、PA10为 0,PA9、PA11为1,启动A/D转换通道PA1,通过输入Y+上电压计算出触摸点X的坐标。
图4 STM32F103与四线电阻触摸屏接口电路
3.3 STM32F103与TFT液晶屏模块控制器的接口电路
如图5所示,STM32F103通过I/O 接口与TFT液晶模块相连接,虽然很多的TFT液晶模块中内置的液晶屏控制器都支持SPI 接口通信(如ILI9325)但由于SPI传输速度较慢不利于液晶数据的快速传输,因此很多液晶模块都选择采用并口通信。
其中PB0-PB15分别与D0-D15相连作为数据通信口,PA0、PA4、PA5、PA6、PA7 分别连接RESET、CS、RS、WR、RD,作为控制口,实现复位、片选、指令数据切换、读写等控制功能。
图5 STM32F103与TFT液晶模块接口电路
4 软件设计
软件部分的编程采用C语言,一方面主要完成STM32F103对I/O 管脚的配置,用来实现对四线电阻触摸屏端子状态的控制,通过中断方式检测是否有触摸信息,配置A/D转换通道,读入电压根据公式计算出触点坐标。另一方面 主要完成通过与TFT液晶模块的通信控制,实现触摸点坐标与液晶屏坐标的对应并有效完成显示任务。软件的开发环境是MDK,MDK 将ARM 开发工具RealView DevelopmentSuite(简称为RVDS)的编译器RVCT与Keil的工程管理、调试仿真工具集成在一起,支持ARM7、ARM9和最新的 Cortex-M3核处理器,自动配置启动代码,集成Flash烧写模块,强大的Simulation设备模拟,性能分析等功能,与ARM 之前的工具包ADS等相比,RealView编译器的最新
Cortex-M3 STM32 电池管理系统 触摸屏 相关文章:
- 基于CMSIS标准的Cortex-M3的应用软件开发(06-20)
- 基于μC/OS-II和TCP/IP协议的多串口服务器(08-23)
- μC/OS-II就绪表算法在Cortex-M3架构上的适配设计(01-22)
- STM32中断与嵌套NVIC快速入门(01-25)
- 发挥ARM Cortex-M3和M4微控制器最大作用的要诀(01-21)
- Cortex-M3可编程片上系统原理及应用(06-04)