51单片机控制直流电机.doc

上传人:仙人指路1688 文档编号:4143903 上传时间:2023-04-07 格式:DOC 页数:33 大小:1.28MB
返回 下载 相关 举报
51单片机控制直流电机.doc_第1页
第1页 / 共33页
51单片机控制直流电机.doc_第2页
第2页 / 共33页
51单片机控制直流电机.doc_第3页
第3页 / 共33页
51单片机控制直流电机.doc_第4页
第4页 / 共33页
51单片机控制直流电机.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《51单片机控制直流电机.doc》由会员分享,可在线阅读,更多相关《51单片机控制直流电机.doc(33页珍藏版)》请在三一办公上搜索。

1、江阴职业技术学院项目设计报告项目: 专 业 应用电子技术专业学生姓名 班 级 学 号 指导教师 完成日期 2012年6月10日摘要电机在各行各业发挥着重要的作用,而电机转速是电机重要的性能指标之一,因而测量电机的转速和电机的调速,使它满足人们的各种需要,更显得重要,而且随着科技的发展,PWM调速成为电机调速的新方式。随着数字技术的迅速发展,微控制器在社会的各个领域得到了广泛的应用,由于数字系统有着模拟系统所没有的优势,如抗干扰性强、便于和PC机相联、系统易于升级维护。本设计是以单片机AT89S52和L298控制的直流电机脉宽调制调速系统。利用AT89S52芯片进行低成本直流电动机控制系统的设计

2、,能够简化系统构成、降低系统成本、增强系统性能、满足更多应用场合的需要。系统实现对电机的正转、反转、急停、加速、减速的控制,以及PWM的占空比在LCD上的实时显示。关键词 直流电机;AT89S52;PWM调速;L298AbstractMotors play important roles in all walks of life and the rotation speed of motors is one of the vatal performance indexs.In addition,it is more important to meet peoples demands by te

3、sting the rotation speed and the speed governing of motors.Whats more ,with the development of science,a new way of speed governing turned up which called PWM.With the rapid development of digital technology, micro-controller in all areas of society have been widely used.Because digital system has m

4、any advantages which analog system does not have,such as strong anti-interference, simple interface with the PC, easy upgrade and maintenance for system. This project is a speed governing system of the pulse width of DC motor controlled by microcontroller AT89S52 and L298.Making the use of the chip

5、of AT89S52 ,I design a controlling system of DC motor of low cost.It can simplify the system structure reduce system cost,strengthen system performance and meet more needs from more applications.And the system can control the corotation,reversal,scraming,accelerating and slowdown of motors and displ

6、ay the duty ratio of PWM on LCD in real time.Keywords DC Motor AT89S52 PMW Speed Automatic L298目 录摘 要IAbstractI目 录II第一章 绪论11.1直流电机的介绍11.2单片机的介绍1第二章 总体方案22.1系统框架设计22.2设计思路2第三章各模块的介绍33.1 PWM脉宽调制原理33.2系统硬件设计33.4独立式键盘控制模块33.5 L298电机驱动模块33.6光电测速模块33.7 LCD显示模块33.8系统软件设计3第四章 结论44.1总结和感想4致 谢5参考资料6说明:61、对于著作

7、类参考文献依次为:主编名、著作名称M、出版地址、出版社名称、出版年份、页码(参考上例1)。62、对于期刊类参考文献依次为:作者名、文章名、期刊名J,年份、卷号(期号)、页码(参考上例2)。61 绪论1.1直流电机 1.1.1直流电机的发展直流电动机在冶金、矿山、化工、交通、机械、纺织、航空等领域中已经得到广泛的应用。而以往直流电动机的控制只是简单的控制,很难进行调速,不能实现智能化。如今,直流电动机的调速控制已经离不开单片机的支持,单片机应用技术的飞速发展促进了自动控制技术的发展,使人类社会步入了自动化时代,单片机应用技术与其他学科领域交叉融合,促进了学科发展和专业更新,引发了新兴交叉学科与技

8、术的不断涌现。现代科学技术的飞速发展,改变了世界,也改变了人类的生活。由于单片机的体积小、重量轻、功能强、抗干扰能力强、控制灵活、应用方便、价格低廉等特点,计算机性能的不断提高,单片机的应用也更加广泛特别是在各种领域的控制、自动化等方面。在实际应用中,电动机作为把电能转换为机械能的主要设备,一是要具有较高的能量转换效率;二是应能根据生产工艺的要求调整转速。电动机的调速性能如何对提高产品质量、提高劳动生产率和节省电能有着直接的决定性影响。因此,调速技术一直是研究的热点。1.1.2直流电机控制方法和工作原理直流电动机转速的控制方法可分为两类:励磁控制法与电枢电压控制法。励磁控制法控制磁通,其控制功

9、率虽然小但低速时受到磁场饱和的限制,高速时受到换向火花和转向器结构强度的限制,而且由于励磁线圈电感较大动态响应较差。所以常用的控制方法是改变电枢端电压调速的电枢电压控制法。传统的改变端电压的方法是通过调节电阻来实现的,但这种调压方法效率低。随着电力电子技术的发展,创造了许多新的电枢电压控制方法。其中脉宽调制(Pulse Width Modulation,PWM)是常用的一种调速方法。其基本原理是用改变电机电枢电压的接通和断开的时间比(即占空比)来控制马达的速度,在脉宽调速系统中当电机通电时,其速度增加,电机断电时其速度降低。只要按照一定的规律改变通断电的时间,就可使电机的速度保持在一稳定值上。

10、直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种:直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号)。直流电机电路模型如图1-1所示,磁极N、S间装着一个可以转动的铁磁圆柱体,圆柱体的表面上固定着一个线圈abcd。当线圈中流过电流时,线圈受到电磁力作用,从而产生旋转。根据左手定则可知,当流过线圈中电流改变方向时,线圈的方向也将改变,因此通过改变线圈电路的方向实现改变电机的方向。直流电机模型见图1-1。 图1-1 直流电动机电路模型1.2单片机及微处理器

11、控制系统的发展单片微型计算机的诞生是计算机发展史上的一个新的里程碑。近年来,随着技术的发展和进步,以及市场对产品功能和性能的要求不断提高,直流电动机的应用更加广泛,尤其是在智能机器人中的应用。直流电动机的起动和调速性能、过载能力强等特点显得十分重要,为了能够适应发展的要求,单闭环直流电动机的调速控制系统得到了很大的发展。而作为单片嵌入式系统的核心单片机,正朝着多功能、多选择、高速度、低功耗、低价格、大存储容量和强I/O功能等方向发展。随着计算机档次的不断提高,功能的不断完善,单片机已越来越广泛地应用在各种领域的控制、自动化、智能化等方面,特别是在直流电动机的调速控制系统中。这是因为单片机具有很

12、多优点:体积小,功能全,抗干扰能力强,可靠性高,结构合理,指令丰富,控制功能强,造价低等。所以选用单片机作为控制系统的核心以提高整个系统的可靠性和可行性。早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。所以,全数字直流调速控制精度、可靠性和稳定性比模拟直流调速系统大大提高。所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的阶

13、段。微处理器诞生于上个世纪七十年代,随着集成电路大规模及超大规模集成电路制造工艺的迅速发展,微处理器的性价比越来越高。此外,由于电力电子技术的发展,制作工艺的提升,使得大功率电子器件的性能迅速提高。为微处理器普遍用于控制电机提供了可能,利用微处理器控制电机完成各种新颖的、高性能的控制策略,使电机的各种潜在能力得到充分的发挥,使电机的性能更符合工业生产使用要求,还促进了电机生产商研发出各种如步进电机、无刷直流电机、开关磁阻电动机等便于控制且实用的新型电机,使电机的发展出现了新的变化。对于简单的微处理器控制电机,只需利用用微处理器控制继电器、电子开关元器件,使电路开通或关断就可实现对电机的控制。现

14、在带微处理器的可编程控制器,已经在各种的机床设备和各种的生产流水线中普遍得到应用,通过对可编程控制器进行编程就可以实现对电机的规律化控制。对于复杂的微处理器控制电机,则要利用微处理器控制电机的电压、电流、转矩、转速、转角等,使电机按给定的指令准确工作。通过微处理器控制,可使电机的性能有很大的提高。目前相比直流电机和交流电机他们各有所长,如直流电机调速性能好,但带有机械换向器,有机械磨损及换向火花等问题;交流电机,不论是异步电机还是同步电机,结构都比直流电机简单,工作也比直流电机可靠,但在频率恒定的电网上运行时,它们的速度不能方便而经济地调节2。高性能的微处理器如DSP (DIGITAL SIG

15、NAL PROCESSOR即数字信号处理器)的出现,为采用新的控制理论和控制策略提供了良好的物质基础,使电机传动的自动化程度大为提高。在先进的数控机床等数控位置伺服系统,已经采用了如DSP等的高速微处理器,其执行速度可达数百万兆以上每秒,且具有适合的矩阵运算。2总体方案2.1系统框架设计方案说明:直流电机PWM调速系统以AT89S52单片机为控制核心,由命令输入模块、LCD显示模块及电机驱动模块组成。采用独立式键盘作为命令的输入,单片机在程序控制下,定时不断给L298直流电机驱动芯片发送PWM波形,完成电机正,反转和急停控制;同时单片机不停的将PWM脉宽调制占空比送到LCD数码管完成实时显示,

16、见图2-1。图2-1 系统框架设计采用传统的直流电机调速系统的模拟电路容易随时间漂移,会产生一些不必要的热损耗,以及对噪声敏感等。而在用了PWM技术后,避免了以上的缺陷,实现了用数字方式来控制模拟信号,可以大幅度降低成本和功耗。另外,由于PWM 调速系统的开关频率较高,仅靠电枢电感的滤波作用就可获得平稳的直流电流,低速特性好;同样,由于开关频率高,快速响应特性好,动态抗干扰能力强,可以获得很宽的频带;开关器件只工作在开关状态,主电路损耗小,装置效率高。PWM 具有很强的抗噪性,且有节约空间、比较经济等特点。2.2设计思路直流电机PWM控制系统的主要功能包括:实现对直流电机的加速、减速以及电机的

17、正转、反转和急停,能够很方便的实现电机的智能控制。主体电路:即直流电机PWM控制模块。这部分电路主要由AT89S52单片机的I/O端口、定时计数器、外部键盘等控制直流电机的加速、减速以及电机的正转和反转,能够很方便的实现电机的智能控制。其间是通过AT89S52单片机产生脉宽可调的脉冲信号并输入到L298驱动芯片来控制直流电机工作的。该直流电机PWM控制系统由以下电路模块组成:设计输入部分:这一模块主要是利用独立式键盘来实现对直流电机的加速、减速以及电机的正转、反转和急停控制。设计控制部分:主要由AT89S52单片机的外部键盘扩展电路组成。直流电机PWM控制实现部分主要由一些二极管、电机和L29

18、8直流电机驱动模块组成。设计测速部分:主要有光电对管和AT89S52实现。设计显示部分: LCD数码管显示部分,实现对速度实时显示。3 PWM脉宽调制原理3.1 PWM调速原理PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,比如:电机调速、温度控制、压力控制等等。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。也正因为如此,PWM又被称为“

19、开关驱动装置”,见图3-1所示。图3-1 PWM信号的占空比设电机始终接通电源时,电机转速最大为Vmax,设占空比为D= t1 / T,则电机的平均速度为Va = Vmax * D,其中Va指的是电机的平均速度;Vmax 是指电机在全通电时的最大速度;D = t1 / T是指占空比。由上面的公式可见,当我们改变占空比D=t1/T时,就可以得到不同的电机平均速度Va,从而达到调速的目的。严格来说,平均速度Va与占空比D并非严格的线性关系,但是在一般的应用中,我们可以将其近似的看成是线性关系。3.2 PWM调速方法基于单片机类由软件来实现PWM:在PWM调速系统中占空比D是一个重要参数在电源电压U

20、d不变的情况下,电枢端电压的平均值取决于占空比D的大小,改变D的值可以改变电枢端电压的平均值从而达到调速的目的。改变占空比D的值有三种方法:A、定宽调频法:保持t1不变,只改变t2,这样使周期(或频率)也随之改变。B、调宽调频法:保持t2不变,只改变t1,这样使周期(或频率)也随之改变。C、定频调宽法:保持周期T(或频率)不变,同时改变t1和t。前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用定频调宽法来改变占空比从而改变直流电动机电枢两端电压。利用单片机的定时计数器外加软件延时等方式来实现脉宽的自由调整,此种方式可简化硬件电路

21、,操作性强等优点。3.3 PWM实现方式方案一:采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个us。方案二:采用软件延时方式,这一方式在精度上不及方案一,特别是在引入中断后,将有一定的误差。故采用方案一。3.4 PWM控制流程图在本设计中PWM脉冲调制的控制流程见下图3-2。图3-2 PWM控制流程4系统硬件设计4.1系统基本组成4.1.1硬件模块组成(1)单片机控制模块(主)(2)光电对管测速(主)(3)L298电机驱动模块(4)独立键盘控制模块(5)LCD显示模块4.1.2单片机整个控制模块直流电机调速系统的控制模块见下图4-14.1.2单片机整个控制模块直

22、流电机调速系统的控制模块见图4系统硬件设计4.1系统基本组成4.1.1硬件模块组成(1)单片机控制模块(2)L298电机驱动模块(3)LCD显示模块(4)独立键盘控制模块4.1.2单片机整个控制模块直流电机调速系统的控制模块这里利用定时计数器让单片机P2口的P2.7引脚输出占空比不同的方波,然后经驱动芯片L298放大后控制直流电机。驱动芯片的输入电压是两引脚的电压差,在调速时一根引脚线为低电平,另一个引脚产生调速方波,这样两个引脚的电压差就可通过控制其中一个引脚来控制。当需要改变电机转动方向时,两个引脚的输出相反。 定时计数器50us中断一次,就使P2.7产生一个高电平或低电平。占空比为高电平

23、脉冲个数占一个周期总脉冲个数的百分数。一个周期加在电机两端的电压为脉冲高电压乘以占空比。占空比越大,加在电机两端的电压越大,电机转动越快。电机的平均速度等于在一定的占空比下电机的最大速度乘以占空比。当我们改变占空比时,就可以得到不同的电机平均速度,从而达到调速的目的。4.2 AT89S52的简介4.2.1 AT89S52主要性能AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的

24、8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。与MCS-51单片机产品兼容;8K字节在系统可编程Flash存储器;1000次擦写周期;全静态操作:0Hz33Hz;三级加密程序存储器;32个可编程I/O口线;三个16位定时器/计数器;六个中断源;全双工UART串行通道;低功耗空闲和掉电模式;掉电后中断可唤醒;看门狗定时器;双数据指针;掉电标识符。4.2.2 AT89S52各引脚功能介绍图4-2 AT89S52单片机各引脚 AT89S52 有6个中断源:两个外部中断(INT0 和INT1),三个定时中断(定时器0、1、2)和一个串行

25、中断。这些中断每个中断源都可以通过置位或清除特殊寄存器IE中的相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。 AT89S52内部具有看门狗定时器及3个16位可编程定时器/计数器。16位是指他们都是由16个触发器构成,故最大计数模值为。可编程是指它们的工作方式由指令来设置,或者当计数器用,或者当定时器用,并且记数(定时)的范围也可以由指令来设置。这种控制功能是通过定时器方式控制器TMOD来完成的。 存储器结构:MCS-51器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。程序存储器:如果EA引脚接地,程序读取只

26、从外部存储器开始。对于 89S52,如果EA 接VCC,程序读写先从内部存储器(地址为0000H1FFFH)开始,接着从外部寻址,寻址地址为:2000HFFFFH。数据存储器:AT89S52 有256 字节片内数据存储器。4.3独立式键盘控制模块4.3.1独立式键盘独立式键盘的按键相互独立,每个按键接一根I/O口线,一根I/O口线上的按键工作状态不会影响其它I/O口线的工作状态。因此,通过检测I/O口线的电平状态,即可判断键盘上哪个键被按下,独立式键盘见图4-12。图4-12 独立式键盘4.3.2本系统中独立式键盘与单片机的链接本设计中有五个独立式按键,分别控制电机的加速、减速、正反转、急停和

27、系统的复位,独立式按键与单片机的具体连接4.4 L298电机驱动模块4.4.1 L298电机驱动简介L298是SGS公司的产品,L298N为15个管角的单块集成电路,高电压,高电流,四通道驱动,设计用L298N来接收DTL或者TTL逻辑电平,驱动感性负载(比如继电器,直流和步进马达)和开关电源晶体管。内部包含4通道逻辑驱动电路,其额定工作电流为 1 A,最大可达 1.5 A,Vss 电压最小 4.5 V,最大可达 46 V;Vs 电压最大值也是 46 V。L298N可直接对电机进行控制,无须隔离电路,可以驱动双电机。4.4.2 L298内部的原理L298内部H桥电路,电路得名于“H桥驱动电路”

28、是因为它的形状酷似字母H。4个三极管组成H的4条垂直腿,而电机就是H中的横杠。如图所示,H桥式电机驱动电路包括4个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。要使电机运转,必须使对角线上的一对三极管导通。例如,如图4-5所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。图4-5 H桥

29、电路驱动电机顺时针转动另一对三极管Q2和Q3导通的情况,电流将从右至左流过电机。当三极管Q2和Q3导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动(电机周围的箭头表示为逆时针方向,上图反方向)。驱动电机时,保证H桥上两个同侧的三极管不会同时导通非常重要。如果三极管Q1和Q2同时导通,那么电流就会从正极穿过两个三极管直接回到负极。此时,电路中除了三极管外没有其他任何负载,因此电路上的电流就可能达到最大值(该电流仅受电源性能限制),甚至烧坏三极管。基于上述原因,在实际驱动电路中通常要用硬件电路方便地控制三极管的开关。4.4.4 L298的逻辑功能当使能端为高电平时,输入端IN1为PWM信

30、号,IN2为低电平信号时,电机正转;输入端IN1为低电平信号,IN2为PWM信号时,电机反转;IN1与IN2相 同时,电机快速停止。当使能端为低电平时,电动机停止转动。在对直流电动机电压的控制和驱动中,半导体功率器件(L298)在使用上可以分为两种方式:线性放大驱动方式和开关驱动方式。线性放大驱动方式是半导体功率器件工作在线性区,优点是控制原理简单,输出波动小,线性好,对邻近电路干扰小,缺点为功率器件工作在线性区,功率低和散热问题严重。开关驱动方式是使半导体功率器件工作在开关状态,通过脉调制(PWM)来控制电动机的电压,从而实现电动机转速的控制,L298逻辑功能见表4-2。表4-2 L298逻

31、辑功能IN1IN2ENA电机状态XX0停止101顺时针011逆时针000停止110停止4.4.6本系统中单片机与L298的连接L298为直流电机的驱动,在本设计中L298与单片机以及直流电机的连接见4.6 光电测速模块4.6.1光电测速的参数发射管:由红外辐射效率高的材料(常用砷化镓)制成PN结,外加正向偏置电压时,向PN结注入电流激发红外光. 接收管:光敏二极管或光敏三极管,PN结受照射后产生光电流. 红外发光二极管发出红外光(近红外线约0.93m )。管压降约1.4V ,正向工作电流一般小于20mA。实物图:4.6.2光电测速的原理红外线发射与接收的方式有两种,其一是直射式,其二是反射式。

32、直射式指发光管和接收管相对安放在发射与受控物的两端,中间相距一定距离;反射式指发光管与接收管并列一起,平时接收管始终无光照,只在发光管发出的红外光线遇到反射物时,接收管收到反射回来的红外光线才工作。我们采用直射式,也就是码盘红外发射管的驱动有直流驱动和脉冲驱动两种。红外发射管在直流驱动方式下,只适合近距离传输。当红外发射管在脉冲驱动方式下,最远传输距离可达20米。光电对管的电路图:测速模块流程图初始化T0、T1,然后开始定时器T0,接着开启计数器T1,判断是否满足条件,然后关闭计数器用公式计算速度,送到显示。4.5 LCD显示模块1602LCD简介引脚功能说明1602LCD采用标准的14脚(无

33、背光)或16脚(带背光)接口,各引脚接口说明如表3-1所示:表3-1:引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电

34、平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。1602LCD的RAM地址映射及标准字库表液晶显示模块是一个慢显示器件,所以在执行每条指令前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图3

35、-5是1602的内部显示地址。图3-5 1602LCD内部显示地址例如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母

36、的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。其中字符代码与字符图形对应关系如图3-6所示:液晶显示模块的设计本设计液晶显示模块的设计如上图4-1所示,该电路实现的功能是:通过AT89S52的P00P07八个口输出控制信号,控制液晶的8位双向数据线,通过单片机的P2.0、P2.1、P2.2向液晶模块发送命令,控制液晶执行各种命令,其中P2.2控制液晶的使能端,当E端由高电平跳变成低电平时,液晶模块执行命令,P2.0控制液晶模块的读写,高电平时

37、进行读操作,低电平时进行写操作。当P2.0和P2.1共同为低电平时可以写入指令或者显示地址,当P2.1为低电平P2.0为高电平时可以读忙信号,当P2.1为高电平P2.0为低电平时可以写入数据,P2.1控制寄存器的选择,高电平时选择数据寄存器、低电平时选择指令寄存器。5系统软件设计直接应用AT89S52的软件方法实现PWM信号输出,这比硬件实现PWM信号成本低,限制少,实现便捷。其流程图如下所示。5.1主程序流程图 主程序描述:首先运行程序主函数main,进行系统初始化,设置定时/计数器工作方式1,开启T1中断,定时50us。然后进行按键查询,本系统有五个按键,加速、减速、正反转、急停。如果有按

38、键按下,得到相对应的脉冲W,最后利用LCD数码管实时显示速度。流程图见下图5.3总硬件图结论通过本次毕业设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣。通过本设计,较系统地掌握有关单片机控制的设计思想和设计方法,主要对51系列单片机的结构、功能、及内部资源,LCD显示器等的了解,并对其进行测试和加以应用的知识得到学习。在做毕业设计的初期阶段没有头绪。在图书馆里、网上查阅资料,攻克了毕业设计中的道道难题。通过本次毕业设计实践,我学到了许多东西,知道光靠书本上的东西是不够的,需额

39、外去查资料。无论是在硬件还是软件设计上,我都遇到了不少的问题,在克服困难的过程中,我学到了许多,特别是在课堂上学不到的东西如(PWM)。通过这次的毕业设计, 我体会到应该掌握丰富的理论知识,理论知识是设计的前提,但同时又决不能局限于理论,要多动手才能将理论与实际工作联系起来。在设计过程中,深深感受到自己在对一些器件的了解上,还存在很大差距,对它们的功能,参数都不是太熟悉。但是通过这次理论与实际的结合之后,认识比以前有不少提高,在系统硬件设计及软件设计方面都有了长足的进步。致谢经过近半学期的忙碌和工作,本次毕业设计已经接近尾声。在设计过程中,从理论到实践,从构建系统框图到画系统框图,再到具体的电

40、路设计及相关的硬件和软件设计,从学习认识元器件,到最后完成一个系统,在这个过程中学习了许多新的专业知识,同时也学会了许多社会人文知识,锻炼了自己动手动脑的能力。在此,对我毕业设计提拱指导帮助的所有老师,表示是衷心的感谢,对在设计过程中遇到困难时,得到帮助的朋友、同学,表示诚挚的谢意! 在此,我还要感谢我的老师。授人以鱼不如授人以渔,他不会告诉我们程序是什么,硬件图是怎么画的,实物是怎么焊接的,但是他教会了我自己动手的能力,给我解答问题,让我知道如何才能做的更好。同时也感谢学院为我提供良好的做毕业设计的环境。 最后再一次感谢所有在毕业设计中曾经帮助过我的良师益友和同学,以及在设计中被我引用或参考

41、的论著的作者。参考文献1赵德安,单片机原理与应用,机械工业出版社,20042胡乾斌,单片机微型计算机原理与应用M,华中科技大学出版社,19963黄惠媛,李润国,单片机原理与接口(自动化控制专业)M,海军出版 社,20064郭天祥,新概念51单片机C语言教程电子工业出版社,20095王东峰,单片机C语言应用100例电子工业出版社,20096 张毅坤 编. 单片微型计算机原理及其应用 西安电子科技大学出版19987 吕俊芳. 传感器接口与检测仪器电路 北京:北京航空航天出版社 1994附录附录一:程序流程图主流程图按键模块流程图测速模块流程图LCD主流程图写指令子程序流程图送程序子程序流程图附录二

42、:程序#include#include#defineucharunsignedchar#defineuintunsignedintunsignedchari;sbitMA=P15;sbitMB=P16;sbitPWM1=P17;sbitK1=P10;sbitK2=P11;sbitK3=P12;sbitK4=P13;sbitK5=P14;sbitrs=P26; /定义引脚sbitrw=P25;sbite=P27;unsignedintV;unsignedintLedNumVal=0;staticcharclick=0;unsignedcharZK1=42;unsignedcharcodeASCI

43、I14=0,1,2,3,4,5,6,7,8,9,.,-,C,M;staticunsignedcharDisNum=0;/显示用指针 unsignedlongS=0;unsignedchardisbuff4 =0,0,0,0,;voidConut(void)LedNumVal=TH1;/取出高八位数值LedNumVal=LedNumVal*256;/LedNumVal=LedNumVal+TL1;/计算脉冲个数高八位*256加上低八位V=(LedNumVal/6);disbuff0=V%1000/100;disbuff1=V%1000%100/10;disbuff2=V%1000%10%10;

44、voiddelay_1(void)/误差0usunsignedchara,b; for(b=215;b0;b-)for(a=45;a0;a-);voiddelay(uchara)uchari;while(a-)for(i=0;i250;i+)_nop_();_nop_();_nop_();_nop_();/判忙voidlcd_mang()rs=0;rw=1;e=1;_nop_();_nop_();_nop_();_nop_();while(P0&0x80);e=0;/1602的写voidwrite_lcd1602(ucharcmd,uchari) /当i为0的时候为向1602写指令为1写数据lcd_mang();rs=i;rw=0;e=0;_nop_();_nop_(); e=1;_nop_();_nop_(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号