基于ARM的工业触摸屏控制板_第1页
基于ARM的工业触摸屏控制板_第2页
基于ARM的工业触摸屏控制板_第3页
基于ARM的工业触摸屏控制板_第4页
基于ARM的工业触摸屏控制板_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、武汉工程大学毕业设计(论文)说明书(封面无)2015 届毕业设计(论文)题 目基于ARM的工业触摸屏控制板 专 业 班 级2015自动化03 学 号610215033 姓 名张明龙 指 导 教 师王利恒教授 学 院 名 称电气信息学院 2015 年 5 月 10 日基于ARM的工业触摸屏控制板ARM-based industrial touch screen control panel学 生 姓 名:张明龙 指 导 教 师:王利恒教授 摘 要随着科技技术的发展,ARM单片机已经成为当今嵌入式系统设计的首选,它以其体积小、低功耗、低成本、高性能、丰富的指令集,深受设计人员的喜爱。触摸屏作为一种特

2、殊的计算机外设,已成为现实生活中一种应用广泛的人机交互工具。本文介绍了以STM32F103系列单片机为控制核心,采用触摸屏接口芯片FT5206作为接口模块完成对触摸屏的数据采集及定点计算。硬件部分简要介绍了STM32F103系列单片机及其外围电路,详细分析了电源管理部分的IC选择和电路设计,触摸屏和LCD基本接口电路以及温度测量和电压检测与输出去。关键词:单片机; 液晶显示;触摸控制; 电源管理AbstractWitch the development of science and technology technology, ARM microcontroller has become th

3、e first choice of today's embedded system design, with its small size, low power, low cost, high performance, rich instruction set, the favorite designers. As a special touch-screen computer peripherals, has become a widely used real-life interactive tool. This paper introduces the STM32F103 ser

4、ies microcontroller to control the core, using a touch screen interface chip FT5206 as touchscreen interface module to complete the data collection and fixed-point calculations. Hardware section briefly describes the STM32F103 series MCU and peripheral circuits, a detailed analysis of the IC selecti

5、on and circuit design of the power management section, touch screen and LCD basic interface circuit and temperature measurement and voltage detection and output to go.IIKeywords: MCU ;LCD ; Touch control ;Power management目 录1 绪论71系统硬件设计82.1 总体设计82.2 CPU的选择82.3触摸屏的选择及接口电路的设计152.4下载电路162.5电源管理电路162.6通

6、讯接口电路设计182.7电压检测与输出电路设计192.8 SD卡电路202.9 测温电路202.10 存储电路212.11 防雷电路212.12 交互电路222软件设计233.1 总体设计233.2 触摸屏程序设计233.3 电压检测与输出253.4 文件系统设计263.5 485总线和CAN总线通讯273结论33致谢34参考文献35附录36361 绪论目前,触摸屏又称为“触控屏”、“触控面板”,是一个可接收触头等输入讯号的感应式显示装置,当接触了屏幕上的某位置时,屏幕上的触觉反馈系统可根据预先编程的程序给出操作者所触压的点,可用以取代机械式的按钮面板,并通过LCD液晶显示模块制造出生动的界面

7、效果。由于其简单方便,越来越适用于工业场合的使用,极大的提高了工业生产的方便性和安全性,生产车间的各种参数变量、温度数据也都能很直观的显示在界面上,并存储在外部EEPROM中,便于后期管理与维护,同时利用CAN总线或者485总线、232总线可以非常方便的与其它设备通信,通过STM32单片机的实时控制与处理,具有一定程度上的智能性,非常适用于工业控制的实际安装与应用。1.1 选题背景与意义触摸屏起源于20世纪70年代,早期多被安装于工控计算机、POS机终端等工业或商业设备之中。2007年iPhone手机的推出,成为触控行业发展的一个里程碑,苹果公司把一部分至少需要20个按键的移动电话,设计得仅需

8、三四个键就能搞定,剩余操作则全部交由触控屏幕完成。除赋予了使用者更加直接、便捷的操作体验之外,还使手机的外形变得更加时尚轻薄,增加了人机直接互动的亲切感,引发消费者的热烈追捧,同时也开启了触摸屏向主流操控界面迈进的征程。目前,触摸屏的应用范围已变得越来越广泛,工业环境也越来越复杂,对于工厂的现场操作人员要求也越来越高,数据的维护也是一大难题,这些都制约着产品的制作与测试。所以,大尺寸触摸屏工控板的发展将是目前车间应用的一大趋势,尤其是一体化集成的多点触摸领域,发展多功能的工控板,便于将现场的各个环节以电流或电压的形式输送到控制板测量,通过单片机的高速计算得出我们需要的数据,同样也可以实时的通过

9、触摸屏设置输出量,形成一个反馈系统,管理一系列的机器设备。在此,利用学院这一平台,使其真正成为一个市场产品,并可以在此基础上扩展视频监控、网络管理等功能,成为系列化的工业产品。基于以上几点,并且经过充分的市场调查以及技术手段,我的毕业设计题目定为基于ARM的工业触摸屏控制板,该产品主要有性价比高、操作简便、可视化操作、功能齐全等优点。1 系统硬件设计2.1 总体设计作为一款应用于工业现场的控制板,应具有强大的功能以及快速的处理能力。因此,我们选用了现今主流的ARM单片机作为主控制器。其中,当属ST(意法半导体)的STM32一枝独秀,也是同性能类单片机性价比最高的单片机了。对于电压检测与输出部分

10、,并没有做很复杂的设计,过于复杂的电路也将会带来极其繁琐的调试过程,并不适合于现阶段的研发。本课题对于010V电压输出使用了STM32自带的DAC输出功能,软件设计于02.5V输出,再利用LM2904四倍输出,从而实现010V的电压输出。另外一个端口是010V电压输入,先将输入电压通过1%精密电阻分压之后,使用高共模输入电压ADC检测电阻两端的差压,从而软件计算出其输入电压值。在PT100的测温电路中,使用惠斯通电桥、三线制接法,可以极大程度上减小PT100导线上电阻的误差,使用LM2904测量PT100的电阻值即可。同时,通讯也是联合各个设备的前提,本课题研究的工控板集成了RS-232、RS

11、485、CAN总线通讯,基本上满足了各种环境的应用,即插即用。面对这些复杂的应用环境,对数据的存储也是极其重要,我们使用了板载EEPROM和外部存储器SD卡存储各种信息,非常便于数据的管理与查询。在保证这些基本功能的前提下,本课题的一大亮点是结合触摸屏的显示与交互,使操作人员的操作更加简单、方便,只需要搭载简单的界面环境,即可实现大数据的维护管理。当然,保证这些功能的完美实现需要一个稳定且强大的电源管理系统,为防止外界环境对系统的影响,又添加了防雷电路和防静电器件。从而保证整个系统稳定且安全的运行。2.2 CPU的选择作为一个功能强大的工业控制板,必须配有处理系统完善且稳定的控制器。如今业界不

12、乏各种优秀的处理器,8位单片机、16位单片机、32位单片机各领风骚,还有处理系统更强大的DSP,运算功能更为强大的FPGA、CPLD,在各自领域都能独当一面。但是各种IC都有其优缺点:(1)、首先,选择STC89C51单片机作为MCU,这款单片机无疑是一款最为经典的8位单片机。器件兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,具有在系统可编程(ISP)特性,配合PC端的控制程序即可将用户的程序代码下载进单片机内部,省去了购买通用编程器,而且速度更快。STC89C52RC系列单片机是单时钟/机器周期(1T)的兼容8051 内核单片机

13、,是高速/ 低功耗的新一代8051 单片机,全新的流水线/精简指令集结构,内部集成MAX810 专用复位电路。具有通用异步串行口(UART)、SPI同步通信口,工作温度范围:0 -75/ -40 -+85,封装形式多样,便于焊接使用,例如:PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20。(2)、选择TI公司的MSP430单片机,其低功耗特性与高效率的编程特点,受到业界各个工程师的亲耐,打破了8位单片机的许多瓶颈。MSP430系列单片机的电源电压采用的是1.83.6V电压,因而可使其在1MHz的时钟条件下稳定运行。RAM保持模式下的最低功耗只有0.1

14、A。其次,MSP430系列单片机的各系列都集成了叫丰富的片内外设。他们分别是看门狗(WDT)、模拟比较器A、定时器A0、定时器A1、定时器B0、UART、SPI、I2C、硬件乘法器、液晶驱动器、10/12位ADC、DMA、I/O端口、基本定时器、实时时钟和USB控制器等若干外围模块的不同组合。在开发工具上面,对于89C51来说,不能在线编程。对于 MSP430 系列而言,由于引进了Flash 型程序存储器和 JTAG 技术,不仅可以实现在线编程和仿真,而且使开发工具变得简便,价格也相对低廉。(3)、选择意法半导体的STM32系列单片机,STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应

15、用专门设计的ARM Cortex-M内核。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是32位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。片上集成32-512KB的Flash存储器,6-64KB的SRAM存储器。支持三种低功耗模式:休眠,停止,待机模式。为RTC和备份寄存器供电的VBAT。支持串行调试(SWD)和JTAG接口。

16、集成更加丰富的片内外设:普通定时器,高级定时器,ADC,DAC,SPI,I2C和UART等等。同时具有DMA功能,通过灵活的控制DMA,可以极大程度的释放单片机内核的处理能力,尤其是在处理图像信息时,优点更加突出。另外,其集成的FSMC(Flexible Static Memory Controller,可变静态存储控制器)是STM32系列采用一种新型的存储器扩展技术。在外部存储器扩展方面具有独特的优势,可根据系统的应用需要,方便地进行不同类型大容量静态存储器的扩展。STM32通过FSMC可以与SRAM、ROM、PSRAM、NOR Flash和NAND Flash存储器的引脚直接相连。支持丰富

17、的存储操作方法,同时扩展多种存储器。综合以上分析,结合应用环境,选择的单片机应具有I/O口多、内核频率快、运算速度快且片内外设多的特点。考虑到CPU的应用环境,结合所使用的外设,以及开发难易程度,综合各方面原因,毫无疑问,STM32系列单片机为本课题的首选,并最终决定使用STM32F103RCT6。2.2.1微处理器STM32F103RCT6简介STM32F103系列微处理器是首款基于ARMv7-M体系架构的32位标准RISC(精简指令集)处理器,提供很高的 代码效率,在通常8位和16位系统的存储空间上发挥了ARM内核的高性能。STM32F103RCT6系列微处理器工作频率位72MHz,内置高

18、达128K字节的Flash存储器和20K字节的SRAM,采用LQTP封装模式,引脚达到64只。其主要资源与特点如下:(1)、多达51个快速I/O端口所有I/O口均可以映象到16个外部中断,几乎所有端口都允许5V信号输入。每个端口都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或其它的外设功能口;(2)、2个12位模数转换器,多达16个外部输入通道,转换速率可达1MHz,转换范围为03.3V;具有双采样和保持功能;内部嵌入有温度传感器,可方便的测量处理温度值。(3)、灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输,无须CPU任何干预,通过DMA可

19、以是数据快速地移动,这就省了CPU的资源来进行其他操作。DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。它支持的外设包括:定时器、ADC、SPI、I2C和USART等。(4)调试模式:支持标准的20脚JTAG仿真调试以及针对Cortex-M3内核的穿行单线调试(SWD)功能。通常默认的调试接口是JTAG接口。(5)、内部包含多达7个定时器,3个通用寄存器、1个高级寄存器、2个看门狗寄存器以及1个系统时基寄存器。(6)、含有丰富的通信接口:三个USART异步串行通信接口、两个I2C接口、两个SPI接口、一个CAN接口和一个USB接口,位实现数据通讯提供了保证。ST

20、M32F103RCT6引脚图如图2.1所示:图2.1 ARM单片机STM32F103RCT6引脚图2.2.2 STM32F103的FSMC接口的介绍在STM32F103上开发LCD显示,可以有两种方式来对LCD进行操作,一种是通过普通的IO口,连接LCD的相应引脚来进行操作,第2种是通过FSMC来进行操作。可变静态存储控制器(Flexible Static Memory Controller:FSMC)是STM32系列中内部集成256KB以上Flash,后缀为.c、.d和.e的高存储和密度微控制器特有的存储控制机制。之所以称为“可变”,是由于通过对特殊功能寄存器的设置,FSMC能够根据不同的外

21、部存储器类型,发出相应的数据/地址/控制信号类型以匹配信号的速度,从而使得STM32系列微控制器不仅能够应用各种不同类型、不同速度的外部静态存储器,而且能够在不增加外部器件的情况下同时扩展多种不同类型的静态存储器,满足系统设计对存储容量、产品体积以及成本的综合要求。2.2.3 IIC、SPI接口简介SPI是串行外设接口(Serial Peripheral Interface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议,比如AT91

22、RM9200。SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。其中,CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。接下来就负责通讯的3根线了。通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。这就是SCLK时钟线存在的原因,由SCLK提供时钟脉冲,

23、SDI,SDO则基于此脉冲完成数据传输。数据输出通过 SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。要注意的是,SCLK信号线只由主设备控制,从设备不能控制信号线。同样,在一个基于SPI的设备中,至少有一个主控设备。这样传输的特点:这样的传输方式有一个优点,与普通的串行通讯不同,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCLK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。也就是说,主设

24、备通过对SCLK时钟线的控制可以完成对通讯的控制。SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立,所以允许同时完成数据的输入和输出。不同的SPI设备的实现方式不尽相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采集有不同定义,具体请参考相关器件的文档。最后,SPI接口的一个缺点:没有指定的流控制,没有应答机制确认是否接收到数据。其接口时序如下图2.2和图2.3所示:图2.2 CPHA=0时SPI总线数据传输时序图2.3 CPHA=1时SPI总线数据传输时序IIC 即Inter-Integrated Circuit(集成电路总线),这种总线类型是由飞利浦半导体公司在八十年

25、代初设计出来的,主要是用来连接整体电路(ICS) ,IIC是一种多向控制总线,也就是说多个芯片可以连接到同一总线结构下,同时每个芯片都可以作为实时数据传输的控制源。这种方式简化了信号传输总线接口。随着大规模集成电路技术的发展,把CPU和一个单独工作系统所必需的ROM、RAM、I/O端口、A/D、D/A等外围电路集成在一个单片内而制成的单片机或微控制器愈来愈方便。目前,世界上许多公司生产单片机,品种很多。其中包括各种字长的CPU,各种容量的ROM、RAM以及功能各异的I/O接口电路等等,但是,单片机的品种规格仍然有限,所以只能选用某种单片机来进行扩展。扩展的方法有两种:一种是并行总线,另一种是串

26、行总线。由于串行总线的连线少,结构简单,往往不用专门的母板和插座而直接用导线连接各个设备。因此,采用串行线可大大简化系统的硬件设计。PHILIPS公司早在十几年前就推出了I2C串行总线,利用该总线可实现多主机系统所需的裁决和高低速设备同步等功能。因此,这是一种高性能的串行总线。I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。为了避免总线信号的混乱,要求各设备连接到总线的输出端时必须是漏极开路(OD)输出或集电极开路(OC)输出。设备上的串行数据线SDA接口电路应

27、该是双向的,输出电路用于向总线上发送数据,输入电路用于接收总线上的数据。而串行时钟线也应是双向的,作为控制总线数据传送的主机,一方面要通过SCL输出电路发送时钟信号,另一方面还要检测总线上的SCL电平,以决定什么时候发送下一个时钟脉冲电平;作为接受主机命令的从机,要按总线上的SCL信号发出或接收SDA上的信号,也可以向SCL线发出低电平信号以延长总线时钟信号周期。总线空闲时,因各设备都是开漏输出,上拉电阻Rp使SDA和SCL线都保持高电平。任一设备输出的低电平都将使相应的总线信号线变低,也就是说:各设备的SDA是“与”关系,SCL也是“与”关系。总线对设备接口电路的制造工艺和电平都没有特殊的要

28、求(NMOS、CMOS都可以兼容)。在I2C总线上的数据传送率可高达每秒十万位,高速方式时在每秒四十万位以上。另外,总线上允许连接的设备数以其电容量不超过400pF为限。总线的运行(数据传输)由主机控制。所谓主机是指启动数据的传送(发出启动信号)、发出时钟信号以及传送结束时发出停止信号的设备,通常主机都是微处理器。被主机寻访的设备称为从机。为了进行通讯,每个接到I2C总线的设备都有一个唯一的地址,以便于主机寻访。主机和从机的数据传送,可以由主机发送数据到从机,也可以由从机发到主机。凡是发送数据到总线的设备称为发送器,从总线上接收数据的设备被称为接受器。在I2C总线传输过程中,将两种特定的情况定

29、义为开始和停止条件(见图2.4):当SCL保持“高”时,SDA由“高”变为“低”为开始条件;当SCL保持“高”且SDA由“低”变为“高”时为停止条件。开始和停止条件均由主控制器产生。使用硬件接口可以很容易地检测到开始和停止条件,没有这种接口的微机必须以每时钟周期至少两次对SDA取样,以检测这种变化。图2.4 IIC开始、停止时序图2.2.4 RS-232、RS-485简介RS-232是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号。RS-232标准规定的数据传输速率为50、75、1

30、00、150、300、600、1200、2400、4800、9600、19200、38400波特。工业一般使用9600pbs较多。在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。RS-232-C接口(又称EIARS-232-C)是目前最常用的一种串行通讯接口。(“RS-232-C”中的“-C”只不过表示RS-232的版本,所以与“RS-232”简称是一样的)。在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-3到-15V;逻辑“0”为+3到+15V。在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-3到-15

31、V;逻辑“0”为+3到+15V。RS-232端口的缺点也很明显,例如:1、接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。2、传输速率较低,在异步传输时,波特率为20Kbps;因此在“南方的老树51CPLD开发板”中,综合程序波特率只能采用19200,也是这个原因。3、接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。4、传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。(通过外接RS-232增强器可将传输距离扩大到1000米左右)。RS485采用差分信号

32、负逻辑,-2V-6V表示“1”,+2V+6V表示“0”。RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,现在多采用的是两线制接线方式,这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。很多情况下,连接RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来。而忽略了信号地的连接,这种连接方法在许多场合是能正常工作的,但却埋下了很大的隐患,这有二个原因:(1)共模干扰问题: RS-485接口采用差分方式传输信号方式,并不需要相对于某个参照点来检测信号,系统只

33、需检测两线之间的电位差就可以了。但人们往往忽视了收发器有一定的共模电压范围,RS-485收发器共模电压范围为-7+12V,只有满足上述条件,整个网络才能正常工作。当网络线路中共模电压超出此范围时就会影响通信的稳定可靠,甚至损坏接口。(2)EMI问题:发送驱动器输出信号中的共模部分需要一个返回通路,如没有一个低阻的返回通道(信号地),就会以辐射的形式返回源端,整个总线就会像一个巨大的天线向外辐射电磁波。RS485网络:RS485/MODBUS是现在流行的一种布网方式,其特点是实施简单方便 ,而且现在支持RS485的仪表又特多,特别是在油品行业RS485/MODBUS简直是一统天下,现在的仪表商也

34、纷纷转而支持RS485/MODBUS,原因很简单,原来的 HART仪表想买一个转换口非常困难 而且价格昂贵,RS485的转换接口就便宜的多而且种类繁多。至少在低端市场RS485/MODBUS还将是最主要的组网方式,近两三年内不会改变。2.2.5 CAN总线简介CAN(Controller Area Network),中文名称为控制器局域网络,通常称为CAN bus,即CAN总线。是由德国BOSCH(博世)公司研究开发的,现已成为ISO国际标准化的串行通信协议,是目前在国际上应用最广泛的开放式现场总线之一。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制

35、系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的 CAN 通信协议。此后, CAN 通过 ISO11898 及 ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。现在, CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。图2.5是车载网络的构想示意图。 CAN 等通信协议的开发,使多种 LAN 通过网关进行数据交换得以实现。图2.5 车

36、载网络构想在硬件部分,汽车节点ECU的开发可以选择带有在片CAN的微控制器,也可以选择其它微控制器和相应的片外CAN控制器、收发器。本文以后者为例说明ECU的开发。带有CAN接口的ECU设计是总线开发的核心与关键,其中ECU的CAN总线模块有几个功能单元构成CAN控制器和CAN收发器。CAN控制器执行完整的CAN协议,完成通讯功能,包括信息缓冲和接收滤波。CAN控制器与物理总线之间需要一个接口CAN收发器,它实现CAN控制器与总线之间逻辑电平信号的转换。CAN控制器和收发器完成CAN物理层和逻辑电路层的所有功能。应用层的功能则由软件来实现。各节点的ECU主要由MCU、DSP、CAN控制器SJA

37、1000、CAN收发器PCA2C250和其它外围器件构成。在软件部分,CAN设计的三层结构模型为:物理层、数据链路层和应用层。物理层和数据链路层的功能由CAN接口器件完成,包括硬件电路和通讯协议两部分。CAN通讯协议规定了四种不同用处的网络通讯帧,即数据帧、远程帧、错误指示帧和超载帧。CAN通讯协议的实现,包括各种通讯帧的组织和发送,均是由集成在SJA1000通讯控制器中的电路实现的,因此系统的开发主要在应用层的设计上。应用层软件的核心部分是CPU与SJA1000通讯控制器之间的数据接收和发送程序,即CPU把待发的数据发给SJA1000通讯控制器,再由SJA1000通讯控制器发到总线上;当SJ

38、A1000通讯控制器从总线接受到数据后,CPU再把数据取走。对于单片机而言,操作SJA1000就象访问外部RAM一样简单。首先,应对SJA1000中的有关控制寄存器写入控制字,进行初始化。之后,CPU即可通过SJA1000接收/发送缓冲区向物理总线接收和发送数据。2.3触摸屏的选择及接口电路的设计现如今,市场普通使用的是四线电阻式触摸屏。其高解析度,高速传输反应一直都受到各界人士的青睐。但是这已经满足不了市场的需求了,自从电容触摸屏的面世,其高效的触摸计算方式更有取代电阻屏的趋势,电容式触摸屏技术是利用人体的电流感应进行工作的。电容式触摸屏是一块四层复合玻璃屏,玻璃屏的内表面和夹层各涂有一层I

39、TO,最外层是一薄层矽土玻璃保护层,夹层ITO涂层作为工作面,四个角上引出四个电极,内层ITO为屏蔽层以保证良好的工作环境。 当手指触摸在金属层上时,由于人体电场,用户和触摸屏表面形成以一个耦合电容,对于高频电流来说,电容是直接导体,于是手指从接触点吸走一个很小的电流。这个电流分别从触摸屏的四角上的电极中流出,并且流经这四个电极的电流与手指到四角的距离成正比,控制器通过对这四个电流比例的精确计算,得出触摸点的位置。其多点触摸的功能更让电容触摸屏技术更上一层楼。在此,本课题决定选择敦泰的FT5206驱动电容触摸屏,支持5点同时触摸,使用IIC读取数据。电路图如下2.3.1所示:图2.3.1 电容

40、触摸屏接口电路图2.3.2 触摸屏与STM32接口匹配在显示部分,使用SSD1963作为液晶驱动电路。ssd1963是1215k字节帧缓冲显示控制器,支持864 x 480 x 24位图形内容。它也配有不同宽度并行接口总线来接收图形数据和命令从单片机。它的显示界面,支持常见的内存更少的LCD驱动器, 每像素的颜色深度可达24比特。支持8位串行RGB接口,0、90°、180°、270°硬件旋转,硬件显示镜像,包含4个通用I/O口,内置时钟发生器,动态背光控制(DBC),具体驱动电路如下图2.3.1所示:图2.3.1 SSD1963驱动电路2.4下载电路CH340是一

41、个USB总线的转接芯片,实现USB转串口、USB转IrDA红外或者USB转打印口。在串口方式下,CH340提供常用的MODEM联络信号,用于为计算机扩展异步串口,或者将普通的串口设备直接升级到USB总线。STM32是支持串口下载与调试的,本课题选用CH340G作为串口调试IC,如下图2.4.1所示:图2.4.1 串口下载电路2.5电源管理电路对于电源输入端,首先应考虑的应该是纹波要求,纹波太大很容易对板载电路产生程度不一的损坏,这里第一级就是滤波电路。然后通过一个TVS管防静电,静电对电子设备的损坏是随时都能发生的,我们应做好必要的保护措施。接着,必须是放反接电路,由电源反接引起的损失是可以避

42、免的,简单的可以通过串联一个二极管保证,正常工作时二极管正向导通,反向电压时二极管截止; 尽量选择压降小的二极管,以减少系统供电低时对系统的影响。由于二极管正向压降基本不变,因此随着正常工作电流增加,消耗在二极管上的功率也要相应增加。不适用于工业应用,本设计选择使用承受电压电流能力更强的P沟道MOSFET电路。正常工作时首先电流正向经过体二极管,source端电压接近24V,Gate端电压为零,相对于Source端是负电压,MOSFET完全导通,电流由Drain流向Source,钳位二极管保证栅极电压不超过额定电压值。通过防反接电路之后,只利用型滤波电路二级滤波,最后再使用三个小磁珠进一步滤波

43、。由此,整个电源系统是非常干净的。图2.5.1 电源输入端电路由于工业控制板使用的是12VDC输入,需要通过降压电路降压后,再给板载IC通电,我们使用的单片机STM32和其它IC多为3.3V供电,但也有下载电路、显示屏驱动电路需要5V供电。考虑到Back电路的效率更高,输出电流大,适合于第一级降压。由于显示屏的稳定工作需要较大的功率,供电电压为5V,实测电流大概在400mA600mA之间,以及010V输出电路负载需要提供最大1A的电流,完成简单的电压输出电路,板载IC则功率很小,可忽略不计。合计总的最大功率为电压5V,电流1.6A。因此,我们选择TI公司的TPS5430,其输入电压范围是:5.

44、5V36V,最大输出电流为3A,保证了一定的余量,效率高达95%,开关频率为固定的500KHz,其简单的外围电路即可保证相当稳定的功率输出。输出电压纹波本应是开关电源无法逃避的缺陷,但其输出电压可以达到1.5%的精度要求,通过外围滤波器的设计,可以进一步降低输出噪声,对于一般IC的供电并没有问题,为防止对下级电路的损坏,特意添加了一个TVS管,保护输出电压稳定在5.0V。图2.5.2 Back降压电路在5V的基础之上,在使用一个低压差线性稳压器ASM1117-3.3V,输出一个很稳定的3.3V电源,经过LDO输出的电源比Back电路输出的更加稳定,更适合于单片机的供电。同样使用一个3.3V的T

45、VS管保护下级电路免受静电的损坏,同时使用一个LED灯显示供电情况。图2.5.3 LDO稳压电源另外,显示屏驱动芯片SSD1963需要3.3V和1.2V电源供电,我们选用了和3.3V LDO同系列的ASM1117-1.2V低压差线性稳压管。如下图2.5.4所示:图2.5.4 SSD1963供电电路2.6通讯接口电路设计为了满足工业各种环境的需求,本课题集成了RS-232、RS-48、CAN总线和USB(从)通讯接口。结合STM32F103RCT6系列单片机强大的处理能力,可以很好地兼容其他设备。首先是RS-485电路,SP3485是+3.3V电源的半双工收发器,符合RS-485和RS-422串

46、行协议标准。SP3485采用差分输入、平衡输出方式,输出、输入共用一对线路,管脚功能如下:A,同相端;B,是反相端;R0,接收器输出;DI,发送器输入;/RE(低电平有效),接收器输出使能;DE,发送器输出使能 。2.6.1图电路由DRE选择传输方向,RO、DI传输串行数据,R36电阻是终端匹配。选用SP3485电平转换IC,将差分电平信号转换成串口信息后,再由软件处理即可。图2.6.1 RS-485接口电路对于CAN总线通讯,选用的是高性能的TJA1050控制器,TJA1050 是控制器区域网络(CAN)协议控制器和物理总线之间的接口,是一种标准的高速CAN收发器。可以为总线提供差动发送性能

47、,为CAN控制器提供差动接收性能。如下图2.6.2中,电阻R25是中断匹配电阻,由D、R传输信息,CANH和CANL为CAN总线电平,设备之间传输信号的桥梁。图2.6.2 CAN总线接口电路对于RS-232通讯,选用的是SP3232芯片,SP3222E/3232E系列是RS232收发器对便携式或手持式应用如笔记本或掌上型电脑的一种解决方案。SP3222E/3232E系列有一个高效的电荷泵,工作电压为3.3V时只需0.1µF电容就可进行操作。电荷泵允许SP3222E/3232E系列在+3.3V到+5.0V 内的某个电压下发送符合RS-232的信号。图2.6.3 RS-232接口电路2.

48、7电压检测与输出电路设计对于电压检测电路,使用的是TI公司的高共模电压差动放大器INA149。INA149 是一款高精度单位增益差动放大器,此放大器具有很高的输入共模电压范围。 它是一款包含有高精度运算放大器和集成薄膜电阻器网路的单一单片器件。如下图2.8.1所示,通过外部端子输入,R37、R39、R44三个电阻分压,取1%精度。经计算,电流范围是:00.43mA,INA149的差分输入电压范围是:02.93V。根据其增益1V/V,则刚好适用于STM32F103RCT6读取器输出的电压值,并用R40限流,以防止烧毁单片机的I/O口。图2.8.1 电压检测电路对于电压输出电路,本课题避免了复杂的

49、放大、跟随、检测电路方案,而采取更加准确且易于理解的DAC输出02.5V,然后通过一个常用的4倍比例放大器输出010V即可。图2.8.2 电压输出电路2.8 SD卡电路SD卡一般使用SPI协议读写数据,也可以使用STM32F103RCT6自带的SDIO(Secure Digital Input and Output Card,即安全数字输入输出卡)读写方式访问,为了便于绝大多数人调试与操作方便,我们选择了SPI的操作方式,使用10K的上拉电阻,从而提高驱动能力。图2.8.1 SD卡电路2.9 测温电路在面对工业锅炉操作环境时,测出液体温度的工具时必不可少的,本课题采用的是PT100,其测温范围

50、在-50600范围内具有其他任何温度传感器无可比拟的优势,包括高精度、稳定性好、抗干扰能力强等。常用的Pt电阻接法有三线制和两线制,其中三线制接法的优点是将PT100的两侧相等的的导线长度分别加在两侧的桥臂上,使得导线电阻得以消除。常用的采样电路有两种:一为桥式测温电路,一为恒流源式测温电路。这里,我们选用常用的、精度最高的三线制惠斯通电桥的测量电路。电路采用TL431和电位器R26调节产生4.096V的参考电源;采用R27、R28、R34、Pt100构成测量电桥(其中R27R28,R34为100精密电阻),当Pt100的电阻值和R34的电阻值不相等时,电桥输出一个mV级的压差信号,这个压差信

51、号经过运放LM2904放大后输出期望大小的电压信号,该信号可直接连AD转换芯片。差动放大电路中R30R31、 R29R35、放大倍数R29/R30,运放采用单一5V供电。典型电路如下图2.9.1所示:图2.9.1 PT100测温电路2.10 存储电路由于具有外部SD卡作为存储介质,板载存储芯片选用W25Q64,可以存储大量的字库信息和其它非易失性数据的存储。W25Q64具有64M比特/8M字节,支持标准的SPI协议,40MB/ S的连续数据传输率。很低的指令开销,仅仅在8个时钟周期,以解决内存问题。2.11 防雷电路在通讯过程中,由于外部电磁情况较为复杂,干扰也相应增大。因此,在电路的信号输入

52、端,需要做好必要的防护措施。我们使用TVS管防止静电打坏,由于TVS管动作迅速,当达到击穿值时,在皮秒级别即可动作。但是,其通流量小,所以就选用了气体放电管提供较大的通流量,以便于泄流。如下图2.11.1所示:图2.11.1 防雷电路2.12 交互电路对于交互电路部分,使用LED显示,按键控制,便于更为直观的操作与指示作用。如下图2.12.1所示:图2.12.1 交互式电路2 软件设计3.1 总体设计基于以上强大的硬件基础,也需要搭载强大的软件环境,整体而言,软件部分主要包括FSMC液晶屏驱动、DAC输出、ADC检测、SPI读取、IIC读取、Fatfs32文件管理系统,串口读取以及LED与按键

53、控制。3.2 触摸屏程序设计3.2.1 显示部分在显示部分,我们选用的是晶门科技有限公司的SSD1963,由于STM32是通过FSMC访问SSD1963,从而驱动液晶屏。先初始化GPIO的引脚输入/输出方向,然后初始化FSMC功能,进而初始化SSD1963。简要代码如下:/*函数功能:初始化SSD1963输入: 无输出: 无注意: 无*/void LCD_Init(void) LCD_GPIO_Config(); LCD_FSMC_Config(); delay_ms(50); InitSSD1963();3.2.2 触摸部分在触摸部分,我们选择的是敦泰的FT5206。/*函数功能:初始化SS

54、D1963输入: 无输出: 无注意: 无*/u8 FT_Init(void) u8 res = 0;u16 Version = 0;NVIC_InitTypeDef NVIC_InitStructure; EXTI_InitTypeDef EXTI_InitStructure;GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOF, ENABLE); /使能PB、PF端口GPIO_InitStructure.GPIO_Pin = GPIO_Pin_

55、2; / PB.2 端口配置GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; /推挽输出GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; /IO口速度为50MHzGPIO_Init(GPIOB, &GPIO_InitStructure); /根据设定参数初始化GPIOB.2GPIO_SetBits(GPIOB,GPIO_Pin_2); /PB.2输出高GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; / PF10端口配置GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; /上拉输入GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; / IO口速度为50MHzGPIO_Init(GPIOF, &GPIO_InitStructure); / ¸ù¾ÝÉ趨²ÎÊý³õʼ»¯GPI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论