全套毕业设计说明书单片机+触摸屏_第1页
全套毕业设计说明书单片机+触摸屏_第2页
全套毕业设计说明书单片机+触摸屏_第3页
全套毕业设计说明书单片机+触摸屏_第4页
全套毕业设计说明书单片机+触摸屏_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

1、数字电子技术课程设计说明书设计题目: 学 院(系): 专 业: 学 生 姓 名: 学 号: 指 导 教 师: 刘 畅 完 成 日 期: 2011.1.20 数字电子技术课程设计任务书学院(直属系):机械工程学院 时间:2016年1月11日学 生 姓 名 指 导 教 师 设计(论文)题目 设计要求用Altium Designer软件设计系统电路。用Protues软件仿真电路。焊接实体电路。 编写程序使触摸屏正确显示并实现对步进电机的触摸控制。要完成的任务用Altium Designer和Protues软件设计电路并验证电路的可行性。用Keil软件编写c语言程序并编译查看是否有语法或逻辑错误。 向

2、实体系统中写入程序,上电运行查看效果,同时对系统和程序进行调整。在系统实时运行过程中发现问题并加以解决。目录基于触摸屏的步进电机控制系统ITouch screen control system of step motorI引言1第一章 电阻式触摸屏的介绍21.1硬件介绍21.1.1 主要参数:21.2功能介绍31.2.1 接口电路(见图1-2)31.2.2 触摸控制电路(见图1-3)31.2.3 IO扩展电路41.2.4电源电路41.3触摸工作原理5第二章 步进电机的介绍72.1基本介绍72.2主要分类82.2.1反应式:82.2.2永磁式:82.2.3混合式:82.3基本原理和构造92.4参

3、数指标102.4.1静态指标术语102.4.2动态指标术语102.5主要特性12第三章 单片机的介绍133.1概述133.2应用分类143.2.1通用专用143.2.2线型143.2.3控制型143.3硬件和结构特性153.3.1硬件特性153.3.2基本结构153.4应用范围173.4.1智能仪器173.4.2工业控制173.4.3家用电器183.4.4网络和通信183.4.5设备领域183.4.6模块化系统18第四章 设计内容194.1 硬件准备194.1.1 2.8寸触摸屏194.1.2 永磁式步进电机194.1.3 单片机最小系统204.1.4步进电机驱动模块204.1.5 继电器模块

4、214.2软件平台214.3程序设计224.3.1液晶显示部分224.3.2触摸控制部分234.3.3主程序的功能实现274.4问题与解决314.5实体图34结论35参考文献36致谢38附录39-IV-基于触摸屏的步进电机控制系统引言触摸屏技术在近几年来得到了较快的发展,特别是在手机制造的应用中,从传统的键盘按键控制转变成了纯触摸屏控制,这不仅可以最大化手机的显示界面,而且还让操作控制更加简便直接,大大提高了用户的使用感受。随着其广泛的应用,又出现了电容式触摸屏,使触摸屏从电阻式的单点触控实现了电容式的多点触控,这也让触摸屏在一定程度上替代按键控制成为可能。在很多的科幻电影中,比如阿凡达,我们

5、都可以看见触摸屏的身影,它简便直观的操作方式给人留下了深刻的印象。在触摸屏技术得到如此广泛应用的今天,我们有理由相信,使用触摸屏完全替代键盘实现对电脑的控制和各种工程控制,将是未来发展的一个大方向。在很多工程控制中,比如医疗,对于控制的精度有很高的要求,而对于触摸屏,由于按键是由触摸屏显示虚拟出来的,没有像实体按键一样明显的分隔,容易造成误操作,也许对于手机、平板电脑这样的消费类电子产品,这样的误操作并不算什么,但在工程控制中,一次小小的误操作都可能造成无法挽回的损失。这对触摸屏控制提出了更高的要求。要应对以上的问题,不仅要在硬件上有技术的创新,而且在软件控制中也要引入更先进的算法,模糊控制,

6、尽量避免误操作的发生。本文设计的主要内容就是实现触摸屏对于步进电机的控制,模拟在机械行业的工程控制中对机械结构的精确控制,发现使用过程中出现的问题,并加以解决。第一章 电阻式触摸屏的介绍1.1硬件介绍Thin Film Transistor (薄膜场效应晶体管),是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。从而可以做到高速度高亮度高对比度显示屏幕信息。目前在手机上TFT(外观如图1-1)使用最为广泛,中高端彩屏手机中普遍采用的屏幕,分65536色及26万色,1600万色三种,其显示效果非常出色。随着技术的进步,TFT不仅应用在手机上,许多智能仪表,工控人机界面也都在使用

7、TFT取代之前的黑白屏。图1-1手机触摸屏1.1.1 主要参数:表1-1触摸屏的主要参数类目参数模块尺寸(长*宽)80mm*54mm像素320*240颜色26万色驱动ICILI9328触摸类型电阻式背光类型LED1.2功能介绍2.8寸TFT模块电路共分为FPC接口电路、触摸控制电路、IO扩展电路、电源电路、TFT控制接口电路、SD接口电路等6部分。1.2.1 接口电路(见图1-2)图1-2接口电路1.2.2 触摸控制电路(见图1-3)图1-3控制电路1.2.3 IO扩展电路 为了节省IO资源,通过IO扩展仅需要使用8位控制器的IO口即可驱动16位数据模式,控制器的8位IO与锁存器的D0D7连接

8、,锁存器的输出与TFT的低8位数据口连接(见图1-4),当写16位数据时,先将16位数据的低8位送到D10D17,此时通过控制LE管脚将数据锁存到TFT的低8位数据口,然后再将16位数据的高8位送到D10D17,即完成16位数据送至TFT数据口的工作。图1-4锁存器1.2.4电源电路由于TFT只能在3.3V电压下工作,所以当输入电压VIN为5V时,需要通过3.3V稳压IC降到3.3V电压,当输入电压为3.3V时,需要使用0欧电阻将J2短接,相当于不通过稳压IC直接给模块供电。(见图1-5)图1-5电源电路1.3触摸工作原理触摸屏结构工作时的导体层典型触摸屏的结构一般由三部分(见图1-6)组成:

9、两层透明的阻性导体层、两层导体之间的隔离层、电极。触摸屏工作时,上下导体层相当于电阻网络。当某一层电极加上电压时,会在该网络上形成电压梯度。如有外力使得上下两层在某一点接触,则在电极未加电压的另一层可以测得接触点处的电压,从而知道接触点处的坐标。比如,在顶层的电极(X+,X-)上加上驱动电压,则在顶层导体层上形成电压梯度,当有外力使得上下两层在某一点接触,在底层就可以测得接触点处的电压,再根据该电压与电极(X+)之间的距离关系,知道该处的X坐标。然后,将驱动电压切换到底层电极(Y+,Y-)上,并在顶层测量接触点处的电压,从而知道Y坐标。(见图1-7)图1-6触摸屏结构图1-7触摸屏电阻线路计算

10、触点的X,Y坐标具体分为如下两步:1. 通过触摸屏控制芯片ADS7843/XPT2046分别采集触点在X轴和Y轴上产生的电压数字量,(见图1-8)公式中的X值和Y值。2计算坐标图1-8坐标公式式中,X和Y分别为触点在X工作面和Y工作面上产生的电压的数字量的测量值;(XY)反映了触点在触摸屏上的坐标。Xmin,Ymin,Xmax和Ymax分别为触摸屏上最小和最大坐标点在X轴和Y轴上产生的电压的数字量的实际测量值,它们是常量,可通过测量得到;(Xmin,Ymin)和(Xmax,Ymax)反映了触摸屏上最小、最大坐标点的坐标;W和H分别是LCD显示屏X轴和Y轴上的像素点总数,例如本2.8寸TFT,W

11、为240,H为320;(XLCD,YLCD)为触点映射到LCD显示屏上的像素点坐标。第二章 步进电机的介绍2.1基本介绍步进电机(见图2-1)是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器虽然步进电机已被广泛地应用,但步进电机并不能像普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用

12、在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。图2-1步进电机2.2主要分类按定子上绕组来分,共有二相、三相和五相等系列。最受欢迎的是两相混合式步进电机,约占97%以上的市场份额,其原因是性价比高,配上细分驱动器后效果良好。该种电机的基本步距角为1.8&

13、#176;/步,配上半步驱动器后,步距角减少为0.9°,配上细分驱动器后其步距角可细分达256倍(0.007°/微步)。由于摩擦力和制造精度等原因,实际控制精度略低。同一步进电机可配不同细分的驱动器以改变精度和效果。步进电机在构造上有三种主要类型:反应式(Variable Reluctance,VR)、永磁式(Permanent Magnet,PM)和混合式(Hybrid Stepping,HS)。2.2.1反应式:定子上有绕组、转子由软磁材料组成。结构简单、成本低、步距角小,可达1.2°、但动态性能差、效率低、发热大,可靠性难保证。2.2.2永磁式:永磁式步进电

14、机的转子用永磁材料制成,转子的极数与定子的极数相同。其特点是动态性能好、输出力矩大,但这种电机精度差,步矩角大(一般为7.5°或15°)。2.2.3混合式:混合式步进电机综合了反应式和永磁式的优点,其定子上有多相绕组、转子上采用永磁材料,转子和定子上均有多个小齿以提高步矩精度。其特点是输出力矩大、动态性能好,步距角小,但结构复杂、成本相对较高。2.3基本原理和构造通常电机的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉

15、冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。通常见到的各类电机,内部都是有铁芯和绕组线圈的。绕组有电阻,通电会产生损耗,损耗大小与电阻和电流的平方成正比,这就是我们常说的铜损,如果电流不是标准的直流或正弦波,还会产生谐波损耗;铁心有磁滞涡流效应,在交变磁场中也会产生损耗,其大小与材料,电流,频率,电压有关,这叫铁损。铜损和铁损都会以发热的形式表现出来,从而影响电机的效率。步进电机一般追求定位精度和力矩输出,效率比较低,电流一般比较大,且谐波成

16、分高,电流交变的频率也随转速而变化,因而步进电机普遍存在发热情况,且情况比一般交流电机严重。步进电机利用电磁学原理,将电能转换为机械能, 人们早在20世纪20年代就开始使用这种电机。随着嵌入式系统(例如打印机、磁盘驱动器、玩具、雨刷、震动寻呼机、机械手臂和录像机等)的日益流行,步进电机的使用也开始暴增。不论在工业、军事、医疗、汽车还是娱乐业中,只要需要把某件物体从一个位置移动到另一个位置,步进电机就一定能派上用场。步进电机有许多种形状和尺寸,但不论形状和尺寸如何,它们都可以归为两类:可变磁阻步进电机和永磁步进电机。步进电机是由一组缠绕在电机固定部件-定子齿槽上的线圈驱动的。通常情况下,一根绕成

17、圈状的金属丝叫做螺线管,而在电机中,绕在齿上的金属丝则叫做绕组、线圈、或相。2.4参数指标2.4.1静态指标术语1、相数:产生不同对极N、S磁场的激磁线圈对数。常用m表示。2、拍数:完成一个磁场周期性变化所需脉冲数或步进电机导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A。3、步距角:对应一个脉冲信号,电机转子转过的角位移用表示。=360度/(转子齿数*运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为=360度/(50*4)=1.8度(俗称整

18、步),八拍运行时步距角为=360度/(50*8)=0.9度(俗称半步)。4、定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)。5、静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积的标准,与驱动电压及驱动电源等无关。 虽然静转矩与电磁激磁安匝数成正比,与定齿转子间的气隙有关,但过分采用减小气隙,增加激磁安匝来提高静力矩是不可取的,这样会造成电机的发热及机械噪音。2.4.2动态指标术语1、步距角精度:步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差/步距角*100%。不同运行拍数其值不同,四拍运

19、行时应在5%之内, 八拍运行时应在15%以内。2、失步:电机运转时运转的步数,不等于理论上的步数。称之为失步。3、失调角:转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。4、最大空载起动频率:电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。5、最大空载的运行频率:电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。6、运行矩频特性:电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。7、电机的共振点:步进电机均有固定的共

20、振区域,二、四相感应子式的共振区一般在180-250pps之间(步距角1.8度)或在400pps左右(步距角为0.9度),电机驱动电压越高,电机电流越大,负载越轻,电机体积越小,则共振区向上偏移,反之亦然,为使电机输出电矩大,不失步和整个系统的噪音降低,一般工作点均应偏移共振区较多。8、电机正反转控制:当电机绕组通电时序为AB-BC-CD-DA或()时为正转,通电时序为DA-CD-BC-AB或()时为反转。其它特性还有惯频特性、起动频率特性等。 电机一旦选定,电机的静力矩确定,而动态力矩却不然,电机的动态力矩取决于电机运行时的平均电流(而非静态电流),平均电流越大,电机输出力矩越大,即电机的频

21、率特性越硬。要使平均电流大,尽可能提高驱动电压,采用小电感大电流的电机。2.5主要特性1、一般步进电机的精度为步进角的3-5%,且不累积。2、步进电机外表允许的最高温度。步进电机温度过高首先会使电机的磁性材料退磁, 从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。3、步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电

22、流减小,从而导致力矩下降。4、步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。5、步进电机必须加驱动才可以运转,驱动信号必须为脉冲信号,没有脉冲的时候,步进电机静止,如果加入适当的脉冲信号,就会以一定的角度(称为步角)转动。转动的速度和脉冲的频率成正比。6、三相步进电机的步

23、进角度为7.5度,一圈360度,需要48个脉冲完成。7、步进电机具有瞬间启动和急速停止的优越特性。8、改变脉冲的顺序,可以方便的改变转动的方向。因此,打印机、绘图仪、机器人等设备都以步进电机为动力核心。第三章 单片机的介绍3.1概述单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机(见图3-1)又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的

24、讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。因为简单可靠而性能不错获得了很大的好评。尽管2

25、000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在基于8051的单片机还在广泛的使用。在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。图3-1单片机现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。 汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作!单片机的数量不仅远超过PC机和其他计算机的总和,甚至比人类的数量还要

26、多。3.2应用分类单片机作为计算机发展的一个重要分支领域,根据发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。3.2.1通用专用这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。3.2.2线型这是按单片机是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数单片机 单片机据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件

27、及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。3.2.3控制型这是按照单片机大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。 显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。3.3硬件和结构特性3.3.1硬件特性1、主流单片机包括CPU、4KB容量的ROM、128 B容量的RAM、 2个16位定时/计数器、4个8位并行口、全双工串口行口、ADC/DAC、SPI、I2C、ISP、I

28、AP;2、系统结构简单,使用方便,实现模块化;3、单片机可靠性高,可工作到106 107小时无故障;4、处理功能强,速度快。5、低电压,低功耗,便于生产便携式产品6、控制功能强7、环境适应能力强。3.3.2基本结构1.运算器运算器由运算部件算术逻辑单元(Arithmetic & Logical Unit,简称ALU)、累加器和寄存器等几部分组成。ALU的作用是把传来的数据进行算术或逻辑运算,输入来源为两个8位数据,分别来自累加器和数据寄存器。ALU能完成对这两个数据进行加、减、与、或、比较大小等操作,最后将结果存入累加器。例如,两个数6和7相加,在相加之前,操作数6放在累加器中,7放在

29、数据寄存器中,当执行加法指令时,ALU即把两个数相加并把结果13存入累加器,取代累加器原来的内容。运算器有两个功能:(1) 执行各种算术运算。(2) 执行各种逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。运算器所执行全部操作都是由控制器发出的控制信号来指挥的,并且,一个算术操作产生一个运算结果,一个逻辑操作产生一个判决。2.控制器控制器由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:(1) 从内存中取出一条指令,并指出下一条指令在内存中的位置。(2) 对指令进行译码和测试,并产生相应的操作控制信号

30、,以便于执行规定的动作。(3) 指挥并控制CPU、内存和输入输出设备之间数据流动的方向。微处理器内通过内部总线把ALU、计数器、寄存器和控制部分互联,并通过外部总线与外部的存储器、输入输出接口电路联接。外部总线又称为系统总线,分为数据总线DB、地址总线AB和控制总线CB。通过输入输出接口电路,实现与各种外围设备连接。3.主要寄存器(1)累加器A是微处理器中使用最频繁的寄存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个操作数;运算后,用于保存所得的和、差或逻辑运算结果。(2)数据寄存器DR通过数据总线向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在译码的指令,

31、也可以保存正在送往存储器中存储的一个数据字节等等。(3)指令寄存器IR和指令译码器ID指令包括操作码和操作数。指令寄存器是用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存中取到数据寄存器中,然后再传送到指令寄存器。当系统执行给定的指令时,必须对操作码进行译码,以确定所要求的操作,指令译码器就是负责这项工作的。其中,指令寄存器中操作码字段的输出就是指令译码器的输入。(4)程序计数器PC用于确定下一条指令的地址,以保证程序能够连续地执行下去,因此通常又被称为指令地址计数器。在程序开始执行前必须将程序的第一条指令的内存单元地址(即程序的首地址)送入PC,使它总是指向下一条要执行指令的地

32、址。(5)地址寄存器AR用于保存当前CPU所要访问的内存单元或I/O设备的地址。由于内存与CPU之间存在着速度上的差异,所以必须使用地址寄存器来保持地址信息,直到内存读/写操作完成为止。显然,当CPU向存储器存数据、CPU从内存取数据和CPU从内存读出指令时,都要用到地址寄存器和数据寄存器。同样,如果把外围设备的地址作为内存地址单元来看的话,那么当CPU和外围设备交换信息时,也需要用到地址寄存器和数据寄存器。3.4应用范围单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置电路板,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处

33、理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:3.4.1智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化

34、、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(电压表、功率计,示波器,各种分析仪)。3.4.2工业控制单片机具有体积小、控制功能强、功耗低、环境适应能力强、扩展灵活和使用方便等优点,用单片机可以构成形式多样的控制系统、数据采集系统、通信系统、信号检测系统、无线感知系统、测控系统、机器人等应用控制系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。3.4.3家用电器家用电器广泛采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备和白色家电等。3.4.4网络和通信现代的单片机普遍具备通

35、信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。3.4.5设备领域单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。3.4.6模块化系统某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似

36、于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。其中比较有代表性的是单片机在汽车电子中的应用,例如汽车中的发动机控制器,基于CAN总线的汽车发动机智能电子控制器、GPS导航系统、abs防抱死系统、制动系统、胎压检测等。此外,单片机在工商、金融、科研、教育、电力、通信、物流和国防航空航天等领域都有着十分广泛的用途。第四章 设计内容4.1 硬件准备4.1.1 2.8寸触摸屏触摸屏是本设计中的控制的输入和输出设备,采用了电阻式触摸屏模块

37、(见图4-1),接口是兼容单片机通用的12864接口。图4-1设计用触摸屏4.1.2 永磁式步进电机 步进电机是本设计中的受控对象,为了方便观察步进电机的运动情况,采用了永磁式的步进电机(见图4-2),步距角为7.5°。图4-2永磁式步进电机4.1.3 单片机最小系统单片机最小系统(见图4-3)包括震荡时钟和复位电路,为了方便电路的搭建和运行的稳定,设计中直接使用了单片机最小系统模块,将IO口全部引出,方便用杜邦线连接。图4-3单片机最小系统4.1.4步进电机驱动模块 单片机IO口的输出电流不足以驱动步进电机,所以需要大电流驱动模块驱动负载,本设计直接采用5线4相的步进电机驱动模块(

38、见图4-4)。图4-4步进电机驱动模块4.1.5 继电器模块为了实现对步进电机通断电控制,本设计引入了5V继电器模块(见图4-5)。图4-5继电器模块 4.2软件平台 本设计基于Keil软件并使用C语言对单片机编程控制,C语言编程较为灵活,有很好的可移植性,再配合STC_ISP下载软件,可以实现单片机在线硬件仿真。本程序编写过程中的软件界面(见图4-6),程序编写完成后,在编译的过程中,软件会自动检查程序的语法和部分逻辑错误,并提示出现错误的位置和警告,如果还未达到预期的设计要求,还可以使用软件自带的调试功能对程序逐行调试,监测关键变量,找出问题。图4-6软件编程界面4.3程序设计如果说单片机

39、像是人的肉体,那程序就是灵魂所在,如果没有程序,单片机什么也不是,无法实现任何功能。同样,程序设计部分也是本设计的核心内容。4.3.1液晶显示部分前面已经说过,为了节省IO口,液晶模块集成了74HC573锁存器,锁存器对应数据的低8位,所以在向液晶屏送数据时,先送低8位数据,然后锁存住,然后再送高8位数据,这样就可以实现16位数据的传送。然后在通过控制数据命令选择端RS、写控制端RW、读控制端RD和片选端CS,就可以向液晶屏写需要的数据和命令了。液晶显示的内容包括图形、字符和汉字,图形的大小自己设定,字符相当于8*16的点阵,汉字显示相当于16*16的点阵。本液晶屏分辨率是240*320,就相

40、当于一块240*320的点阵,要显示任何字符和汉字都要对每一个点单独控制。比如说字符的显示,要先设定显示的区域,然后再在此区域里面写入数据,液晶屏默认写入数据的方式是固定不变的,该液晶屏默认0点在右上角(见图4-7)液晶屏默认写入数据的方向是从选定区域的低坐标到高坐标写入,X轴方向写满,Y轴方向移动一位,继续写X轴,以此类推,直到该区域数据写满。图4-7液晶屏坐标知道了液晶屏的基本显示原理以后,只要写循环函数控制在要显示的点显示需要的颜色,在不需要的地方显示背景颜色即可。这也是本设计显示图形、字符和汉字的一般方法。要显示字符和汉字,需要有相应的字符和汉字的库函数,字符是按照ASCII码的顺序对

41、应显示的,只要按照ASCII码的顺序写成字符库函数就行。而汉字的显示控制是通过2字节的GBK码对应判断实现的,因此显示中和汉字的库函数中都要有对应的”汉字”,才能判断出是库函数中的哪个32位编码,并最终正确显示出来。另外,由于单片机的RAM存储空间有限,所以对于这些大量的库函数编码要用code命令将其放入ROM中,避免出错。还有要注意的是为了让显示控制尽可能的简单,要先把显示字符和显示汉字的程序分别写成子函数,然后在一个显示的程序中调用。单片机在处理字符时,先将字符编译成ASCII码,所以可以先判断生成的ASCII码是否小于128,如果小于128,就调用显示字符的子函数,否则就调用显示汉字的子

42、函数。此外,由于一次要显示的汉字和字符不止一个,因此要用到指针。每一次显示完成后指针和位置都自加1即可。显示图形,如果是长方形,很简单,在选中的区域里面全部循环写入数据就行了,但其他的图形,例如圆形,显示就比较困难,本设计中暂时没有使用,只是显示长方形的图标,按键和滚动条都用长方形显示代替。4.3.2触摸控制部分电阻式触摸屏的触控原理在前面已经讲到,所以现在说说在本设计中程序实现的方法。该液晶屏采用XPT2046芯片来实现触摸控制,先介绍一下XPT2046:XPT2046数据接口是串行接口,其典型工作时序(见图4-8),图中展示的信号来自带有基本串行接口的单片机或数据信号处理器。处理器和转换器

43、之间的的通信需要8个时钟周期,可采用SPI、SSI和Microwire等同步串行接口。一次完整的转换需要24个串行同步时钟(DCLK)来完成。 前8个时钟用来通过DIN引脚输入控制字节。当转换器获取有关下一次转换的足够信息后,接着根据获得的信息设置输入多路选择器和参考源输入,并进入采样模式,如果需要,将启动触摸面板驱动器。3个多时钟周期后,控制字节设置完成,转换器进入转换状态。这时,输入采样保持器进入保持状态,触摸面板驱动器停止工作(单端工作模式)。接着的12个时钟周期将完成真正的模转换。如果是度量比率转换方式(SER/DFR0),驱动器在转换过程中将一直工作,第13个时钟将输出转换结果的最后

44、一位。剩下的3个多时钟周期将用来完成被转换器忽略的最后字节(DOUT置低)。 图4-8 XPT2046时序图XPT2046有两种工作模式:1、SER/DFR置为高电平时,XPT2046工作在为单端模式,单端工作模式的应用原理图(见图4-9)。单端模式简单,在采样过程完成后,转换过程中可以关闭驱动开关,降低功耗。但这种模式的缺点是精度直接受参考电压源的精度限制,同时由于内部驱动开关的导通电阻存在,导通电阻与触摸屏电阻的分压作用,也会带来测量误差。图4-9单端工作原理图2、SER/DFR置为低电平时,XPT2046为差分工作模式(见图4-10)。 差分模式的优点是:+REF和-REF的输入分别直接

45、接到YP、YN上,可消除由于驱动开关的导通电阻引入的坐标测量误差。缺点是:无论是采样还是转换过程中,驱动开关都需要接通,相对单端模式而言,功耗增加了。 图4-10差分工作原理图XPT2046进行掉电控制如下:表4-1掉电控制寄存器位7(MSB)位6位5位4位3位2位1位0(LSB)SA2A1A0MODESER/DFRPD1PD0起始位第一位,即S位。控制字的首位必须是1,即S1。在XPT2046的DIN引脚检测到起始位前,所有的输入将被忽略。 地址接下来的3位(A2、A1和A0)选择多路选择器的现行通道,触摸屏驱动和参考源输入。 MODE模式选择位,用于设置ADC的分辨率。MODE0,下一次的

46、转换将是12位模式;MODE1,下一次的转换将是8位模式。 SER/DFRSER/DFR位控制参考源模式,选择单端模式(SER/DFR1),或者差分模式(SER/DFR0)。在X坐标、Y坐标和触摸压力测量中,为达到最佳性能,首选差分工作模式。参考电压来自开关驱动器的电压。在单端模式下,转换器的参考电压固定为VREF相对于GND引脚的电压。 PD0和PD1展示了掉电和内部参考电压配置的关系。ADC的内部参考电压可以单独关闭或者打开,但是,在转换前,需要额外的时间让内部参考电压稳定到最终稳定值;如果内部参考源处于掉电状态,还要确保有足够的唤醒时间。ADC要求是即时使用,无唤醒时间的。另外还得注意,

47、当BUSY是高电平的时候,内部参考源禁止进入掉电模式。XPT2046的通道改变后,如果要关闭参考源,则要重新对XPT2046写入命令。 XPT2046输出的位置数据是标准的2进制格式,默认情况下,一次输出12位有效数据,即把参考电压分成4096份,精度较高,用2字节char型变量接收一次数据。XPT2046可以采用8位的转换模式。切换到8位转换模式,完成提前4个时钟完成一次转换。不仅每次转换缩短了都4位(数据吞吐量提高了25),而且由于精度的降低,可以工作在更快的转换速率下,时钟速度可以提高50%,时钟速度的提高和转换周期的减少,共同可以使转换速率提高2倍。由于一次采集的数据坐标有X、Y两个数

48、据,所以要用到结构型变量,结构型变量的基本格式是 struct + 类型名 +变量;变量:+ 结构名 ,要注意的是在大括号之前的不是定义的该结构变量的名,它只是一个类型的名字,表示该类型的结构变量包含如后面大括号所示这样的一个结构变量,而在引用结构型变量中的变量时,要用结构名引用,即 结构名 . 变量 这样的格式。最后,为了防止噪声干扰,要在每次读取坐标值之前先进行采样分析,若2次采样的结果偏差过大,则直接视为是干扰,而不进行坐标值的读取和对于全局变量的赋值。4.3.3主程序的功能实现1、步进电机的控制在前面介绍步进电机的时候已经讲到步进电机是要给脉冲信号才能正常运行的,其中有四相四拍和四相八

49、拍两种形式,本设计采用的是四相八拍的方法。对于步进电机的速度调节主要依靠每一拍之间的延时函数控制,通过对于拍间延时函数的实时控制达到控制转速的目的。方向的控制实际上就是节拍顺序的控制,只要将正转的节拍顺序颠倒过来在输入给步进电机就可以实现反转。至于步进电机的暂停,本设计是通过增加一个步进电机控制标志位实现的,如果满足暂停的条件,就关闭标志位,这样就不能调用步进电机的运行子函数,步进电机就暂停了。此外,本设计目的之一就是要通过滚动条来实现步进电机快慢的调节,这就需要在滚动条在不同位置时赋给步进电机不同的速度,因此本设计是通过读取每一次在滚动条上触点的位置坐标的纵坐标值,再通过一定的计算,再赋给步

50、进电机就可以实现步进电机的实时坐标控制了,至于方向是通过对于一次触点坐标的判断,若坐标纵坐标的值满足条件就调用正转函数,否则就调用反转函数。2、显示初始化在屏幕的最顶端要显示“步进电机控制演示系统”这几个字,这要用到取模软件(见图4-11),按ctrl+enter输入汉字,由于本设计是横屏显示,所以要用“修改图像”将“步”旋转90度,然后在“取模方式”中选择C51格式,在“点阵生成区”就会出现相应的字模,将生成的字模复制到汉字字库中就可以调用了,其他汉字以此类推。图4-11字模软件在汉字标题下面是两个按键,一个是开关按键,一个是暂停按键,两个按键设计成正方形的,初始化连个按键是黑色的,开关健上

51、面显示“OFF”暂停键上显示“P”字体颜色都是白色。这两个按键只要通过“写字符串”和“填充颜色”两个子函数就可以实现,唯一要注意的就是要调整好显示的位置,尽量对称美观。按键下面就是滚动条了,一个完整的滚动条分三部分组成,滚动条、光标和刻度。这三部分实现都是通过画长方形实现的,只是位置、形状和颜色不同。完成以上步骤后就完成了显示的初始化(见图4-12),但这只是一个静态的显示,没有任何功能,要实现触控动态显示还需要对每一个部分编写程序。图4-12屏幕初始化开关的主要功能是控制继电器的开和关,对于继电器,只要分配一个管脚分别给高、低电平就可以,而开关的显示部分,要先判断触点的位置是否在开关的图形之

52、内,用if语句,如果是,那么在松手后执行开关的动作,防止抖动造成多次误操作,用while语句。当按下开关以后要将开关变色显示,整体开关变成红色,并显示“ON”字体为绿色,同时让标题字体变成红色(见图4-13)。除此之外,还要将开关的标志位打开,该标志位的作用是使屏幕的其他部分在开关处于关闭状态时,触摸不会作出反应。图4-13按下开关暂停按键触控显示效果与开关键原理相同,只是标题变成黄色,但要在再次触摸暂停键时,使标题再变回成红色,这实际上是同一个按键的两种不同情况,所以本设计在暂停按键里面也用了一个标志位,分别控制这两种情况。滚动条的动态显示,实际上就是在每一次触摸滚动条不同位置时快速刷新滚动

53、条的显示部分,如果刷新的速度足够快,由于人眼的暂留效应,看、滚动块就像是跟着手指在运动一样。但由于51单片机的运算速度有限,刷新较慢,效果不明显,但基本的现象能够完成。当系统检测到触点在滚动条的范围内时,系统将检测出当前触点的纵坐标,同时刷新整个滚动条显示区域为背景颜色,然后重新显示出滚动条和中心刻度,并在触点位置左右个十个像素的范围内(横坐标不变)重新显示出光标,为突出显示,颜色为粉色,然后用while语句检测松手,若松手则再刷新滚动条显示区域,在松手时最后位置显示光标,并恢复为红色。这样,滚动条的动态显示就完成了,暂停和滚动条显示(见图4-14)。图4-14按下暂停4.4问题与解决在完成毕

54、业设计的过程中,遇到过大大小小的各种问题,很多都是意想不到的,正是这些问题,让我看到了自己的不足,同时也让我在解决这些问题的过程中不断提高了自己的能力,现把几个有代表性的问题总结如下:问题1、在用ISP下载器向单片机下载程序时,STC-ISP提示请给MCU上电,程序无法下载进去。解决:实际上用ISP下载器下载程序的过程就是利用单片机的串行输入和输出接口通讯的过程,当然要实现通讯,必须要将输出接输入、输入接输出,其中单片机的P3.0和P3.1接口分别是串行输入和串行输出接口,要分别接ISP下载器的串行输出和串行输入(见图4-15),否则无法通讯,自然无法下载程序。图4-15连接图问题2、编程完成

55、后,编译程HEX文件下载进单片机进行在线调试,无论怎么修改程序,各模块没有反应。解决:最后发现原来是在工程中没有将编写的C语言程序加到新建的工程中去,而编译是对整个工程而言,所以编译再多次,也没有对编写的C语言程序变动,自然没有任何反应了。这虽然是个很小很小的问题,但也是最容易被忽略的,而且不容易检查到,所以在以后的编程过程中,要严格按照步骤进行,不能马虎。问题3、连接好继电器以后,将P3.7口直用杜邦线连接到继电器模块的控制位,发现控制继电器没有反应。解决:经过反复实验发现,之所以无法控制继电器是因为IO口的电压电流太小带不起继电器模块,加一个10K的上拉电阻(见图4-16)以后,继电器正常

56、工作。图4-16上拉电阻问题4、在焊接电路板的时候,焊接完成后,并把杜邦线连接完毕,发现程序下载完成后,液晶屏上面没有正常显示,只有背景灯亮。解决:本设计使用的是洞洞板,电路是自己飞线连接成的,不能像印刷电路板一样稳定,再加上本身洞洞板的质量就参差不齐,焊接的过程中很可能会造成短路和虚焊的发生,要想尽量避免这样的问题,除了要在焊接的过程中认真仔细以外,就是在焊接完成后一定要用万用表对每个管脚的连接进行测量,目的是检查出是否有管脚短路和短路的现象,一旦发现,及时改正就可以了。问题5、编写好液晶屏的触控程序以后,程序能够运行,显示和触控也算正常,但触控的反应非常慢,要一直点触很长时间才有反应,无法正常使用。解决:检查程序发现由于步进电机的控制要一直给脉冲信号,于是把步进电机的控制写成了w

温馨提示

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

评论

0/150

提交评论