《基于51单片机PWM控制直流电机.docx》由会员分享,可在线阅读,更多相关《基于51单片机PWM控制直流电机.docx(11页珍藏版)》请在第壹文秘上搜索。
1、机械工程学院课程设计报告课程:运动控制系统实践题目:基于51单片机PWM控制直流电机目录培黎机械工程学院-1-程:动.C.C.-1题目:基于51单片机PWN控制直流电机-1-基于51单片机PWM控制直流电机-3-一、论述-3-1 .实训目的-3-2 .实现功能-3-二、硬件设计-3-1 .基本组成-3-2 .仿真图-4-3 .单片机性能-4-4 .电机驱动-5-5 .数码管显示-6-6 .流程图-8-三、程序设计-8-1.定时器变量定义-8-四、结论-10-基于51单片机PWM控制直流电机一、论述1 .实训目的学习知道单片机的性能与功能,在现实生活中的应用。并且设计并制作一一采用PWM调制方式
2、实现直流电机调速系统。并熟练对单片机编程及Protues仿真软件的实际应用。2 .实现功能(1) 1.298驱动直流电机;(2)数码管显示转动方向和PWM占空比;(3)按键控制PWM占空比来加减速;(4)按键控制正反转、停止转动;二、硬件设计1 .基本组成(1)单片机控制模块(2) 1.298电机驱动模块(3) 1.ED显示模块(4)独立键盘控制模块RP1RESPACK-81.JPWMiWlPWM减1正反转停止ATS5w3P3正反PWM(O-100)FT。肛;。PotMDIP0#AD2HJADJP04AD4P05AD5POGMPQJfADT图1仿真图MA9101112131415器三三3 .单
3、片机性能AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATME1.公司的高密度非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和FIaSh存储器结合在
4、一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。182930227567KU1人I1.IXTA1.2RSTPSEN1.U.U1.UP0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11A1.EEAP2.4/A12P2.5/A13P2.6/A14P1.0/T2P2.7/A15P3.0/RXDRl.1/1ztzP1.2rzJ.I/IUP3.2/INT0P1.3P3.3/INT1P1.4P3.4/T0P1.5P3.5/T1P1.6P3.6/WRP1.7P3.7/RDAT
5、89C52383736353433322122232425262728101112131415161739图2AT89C524 .电机驱动1.298N是意法半导体集团旗下量产的一种电机驱动芯片,拥有工作电压高、输出电流大、驱动能力强、发热量低、抗干扰能力强等特点,通常用来驱动继电器、螺线管、电磁阀、直流电机以及步进电机。半导体功率器件工作在线性区优点是控制原理简单,输出波动小,线性好,对邻近电路干扰小,缺点为功率器件工作在线性区,功率低和散热问题严重。开关驱动方式是使半导体功率器件工作在开关状态,通过脉调制(PWM)来控制电动机的电压,从而实现电动机转速的控制。1.298逻辑功能INlIN2E
6、NA电机状态XXO停止1O1正转O11反转OOO停止11O停止当使能端为高电平时,输入端INI为PWM信号,IN2为低电平信号时,电机正转;输入端INl为低电平信号,IN2为PWM信号时,电机反转;INl与IN2相同时,电机快速停止。当使能端为低电平时,电动机停止转动。在对直流电动机电压的控制和驱动中,半导体功率器件(1.298)在使用上可以分为两种方式:线性放大驱动方式和开关驱动方式在线性放大驱动方式。5 .数码管显示多位数码管,即是两个或两个以上单个数码管并列集中在一起形成一体的数码管。当多位一体时,它们内部的公共端是独立的,而负责显示什么数字的段线全部是连接在一起的,独立的公共端可以控制
7、多位一体中的哪一位数码管点亮,而连接在一起的段线可以控制这个能点亮数码管亮什么数字,通常我们把公共端叫做“位选线”,连接在一起的段线叫做“段选线有了这两个线后,通过单片机及外部驱动电路就可以控制任意的数码管显示。一般一位数码管有10个引脚,二位数码管也是10个引脚,四位数码管是12个引脚。三、程序设计1.定时器变量定义voidinit(void)(启动中断TMOD=OxOI;EA=1;ET0=1;TR0=1;设置定时时间THO=Oxff;T1.O=Oxf6;voidtimer00interrupt1重置定时器时间THO=Oxff;T1.0=0xf6;T+;定时标记加1dispO;数码管显示if
8、(k=O)if(TW)MOTORA1=0;elseMOTORA1=1;)else(if(TW)MOTORA2=0;elseMOTORA2=1;if(T=100)T=0;四、结论通过本次课程设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣。在本次课程设计过程中,我学会了在网络上查找有关本设计的各硬件的资源,其中包括:直流电机PWM调速、AT89C52单片机、1.289引脚图及其引脚功能等,1.ED数码管显示,为本次毕业设计提供了一定的资料。我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。在这次难得的课程设计过程中我锻炼了自己的思考能力和动手能力。通过题目选择和设计电路的过程中,加强了我思考问题的完整性,在实训过程中要注意增加的功能写好程序流程图,在程序流程图的基础上,根据芯片的功能写出相应的程序。然后再进行程序调试和相应的修改,以达到能够实现所要求的功能的目的。