单片机占空比可调的PWM波形发生器_第1页
单片机占空比可调的PWM波形发生器_第2页
单片机占空比可调的PWM波形发生器_第3页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、机电高等专科学校电气工程系微控制器技术课程设计报告设计题目:占空比可调的 PWM波形发生器微控制器技术课程设计任务书设计题目:占空比可调的PWM波形发生器设计时间:2013.10.212013.10.27设计任务:在Proteus中画出原理图或使用实物,编制程序,实现以下功能:1、理解PWM勺工作原理。2、编制PWM程序,使用八段发光字符管显示占空比。3、可与电机连接,驱动电机以不同的转速旋转。背景资料:1、单片机原理与应用2、检测技术3、计算机原理与接口技术进度安排:1、第一天,领取题目,熟悉设计容,分解设计步骤和任务;2、第2天,规划设计软硬件,编制程序流程、绘制硬件电路3、第3天,动手制

2、作硬件电路,或编写软件,并调试。4、第4天,中期检查,书写设计报告。5、第5天,提交设计报告,整理设计实物,等待答辩。6、第6天,设计答辩。题目:占空比可调的PWM波形发生器一、设计目的掌握PW啲工作原理;学会编制PWM程序,使用八段发光字符管显示占空比; 并与电机连接,驱动电机以不同的转速旋转。二、设计思路直流电机PWM控制系统的主要功能包括:实现对直流电机转速的调整,能够 很方便的实现电机的智能控制。主体电路:即直流电机PWM控制模块。这部分电路主要由 AT89C5仲片机的 I/O端口、定时计数器、外部中断扩展等调整直流电机的转速,能够很方便的实 现电机的智能控制。其间是通过AT89C51

3、单片机产生脉宽可调的脉冲信号并输入 到L298驱动芯片来控制直流电机工作的。该直流电机PWM控制系统由以下电路模块组成:设计输入部分:这一模块主要是利用带中断的独立式键盘来实现对直流电机 的加速、减速控制。设计控制部分:主要由AT89C51单片机的外部中断扩展电路组成。直流电机 PWM控制实现部分主要由一些二极管、电机和 L298直流电机驱动模块组成。设计显示部分:LED数码显示部分,实现对PWM脉宽调制占空比的实时显示。三、方案设计系统框架设计总体设计方案的硬件部分详细框图如图一所示。方案说明:直流电机PWM调速系统以AT89C51单片机为控制核心,由命令输 入模块、LED显示模块及电机驱动

4、模块组成。采用带中断的独立式键盘作为命令的 输入,单片机在程序控制下,定时不断给L298直流电机驱动芯片发送PW波形,H型驱动电路完成电机正,反转和急停控制;同时单片机不停的将PWM脉宽调制占 空比送到LED数码管完成实时显示。四、系统硬件设计4.1硬件模块组成(1)单片机控制模块(2)L298电机驱动模块(3)LED显示模块(4)独立键盘控制模块3.3系统硬件各模块电路4.2单片机整个控制模块这里利用定时计数器让单片机 P2 口的P2.6、P2.7引脚输出占空比不同的方 波,然后经驱动芯片L298放大后控制直流电机。驱动芯片的输入电压是两引脚的 电压差,在调速时一根引脚线为低电平,另一个引脚

5、产生调速方波,这样两个引 脚的电压差就可通过控制其中一个引脚来控制。当需要改变电机转动方向时,两个引脚的输出相反定时计数器若干时间(1us)中断一次,就使P2.6或P2.7产生一个高电平或 低电平。直流电机的速度分成100个等级,因此一个周期就有100个脉冲,周期 为一百个脉冲的时间,速度等级对应一个周期的高电平脉冲的个数。占空比为高 电平脉冲个数占一个周期总脉冲个数的百分数。一个周期加在电机两端的电压为 脉冲高电压乘以占空比。占空比越大,加在电机两端的电压越大,电机转动越快。 电机的平均速度等于在一定的占空比下电机的最大速度乘以占空比。当我们改变 占空比时,就可以得到不同的电机平均速度,从而

6、达到调速的目的。五、PWM勺基本工作原理PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压, 进而达到控制要求的一种电压调整方法。在 PW驱动控制的调整系统中,按一个 固定的频率来接通和断开电源,并根据需要改变一个周期“接通”和“断开”时 间的长短。通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小, 从而控制电动机的转速。六、软件设计主程序设计:主程序部分主要对定时计数器 T1的工作方式、中断入口地址、计 数初值、中断产生、进行设置,为了方便程序编程。程序开始定时中断子程序设计1. 定时计数器TMO设置选用T0作为产生脉冲用的定时器并且使它工作在模式 1下。在模式1中

7、,寄 存器TH0和TL0以全8位参与操作,构成一个16位定时/计数器,当TH0溢出时 向中断标志位TFC进位,并申请中断。在这种模式下 T0定时时间最长,有利于在 更大的围对电机进行调速。工作模式寄存器TMODTMOD勺高4位用于T1,低4位用于T0,4种符号含义如下:GATE门控位。C/T :定时/计数器方式选择位。C/T =0为定时器方式,C/T =1时为计数器方式。M1M0工作模式选择位,具体如下:TMO寄存器GATE C/TM1M2 GATE C/T M1 M00 0 010 0 0 0M1MO=O0模式0 (13位定时/计数器)M1M0=01模式1 (16位定时/计数器)M1M0=1

8、0模式2 (8位自动重装常数的定时/计数器)M1M0=11模式3( 2个8位定时/计数器,仅对TO)因在程序中T0是作为定时器,T0的C/T控制位就应设置为0; T0工作在模 式1,TMO中控制T0的M1M应设置为01,其它位全部设置为0,即应给工作模式寄 存器TMO赋值01H,2. 工作方式1及初值计算当M1,M0=01时,定时/计数器处于工作方式1,此时,定时/及数器的等效电路仍以定时器0为例,定时器1与之完全相同。方式0和方式1的区别仅在于计数器的位数不同,方式 0为13位,而方式1 则为16位,由TH0作为高8位,TL0为低8位,有关控制状态字(GATA C/T、 TF0 TR0和方式

9、0相同。在工作方式1下,计数器的计数值围是:165536(216)。当为定时工作方式1时,定时时间的计算公式为:(216计数初值)X晶振周期X 12如果单片机的晶振选为6.000MHz则最小定时时间为:213( 216 1) X1/6X10-6X 12=2X 10-6(s)=2(us)(2160) X1/6 X10-6 X 12=13107旅 10-6(s)=131072(us)定时/计数器中的计数器是在计数初值基础上以加法计数的,并能在计数器从全“T变为全“0”时自动产生溢出中断请求。因此,可以把计数器计数初值设 定为TC,定时器定时时间T的计算公式为:T= ( M-TC T计数2式中M为计

10、数器 模值,该值和计数器工作模式有关。在模式1时M为216。在定时器模式下,T计 数是单片机振荡周期的12倍。上式也可写成:TC=M-T/T计数在程序设计中工作 模式为模式1,则计数器模值M=216=65536假设单片机仿真器的晶振频率为22.1184MHz 则:T 计数=12/(22.1184 X 106)=5.425347 X 10若定时时间长度为 30ms,贝U: TC=6553630X 10-3/5.425347 X 10-7=10240=2800H给定时器赋值时:MOV TL0, #00H;MOV TH0, #28H3. 中断设置除特殊功能寄存器TCON和SCON中的某些位与中断有关

11、以外,还有一个特殊 功能寄存器即中断允许寄存器IE用来设定各个中断源的打开和关闭。中撕允呼寄存黑中断总 中断忧宪 中斷弭腋允许红寄存器口f EHOfl ETO_uNTI0FoI0 E HT I>rfTIRI,-rJLJT|.ri*EK1crS-ETl9-E5查询晅件中断系统的结构框图IE寄存器各位的含义如下:EA(IE.7): CPU勺中断总允许标志位。当 EA=1时,CPU允许中断;当EA=0 时,CPU禁止所有的中断请求。ES(IE.4 ):串行口中断允许位。当 ES=1时,允许串行口中断;当ES=0时, 禁止中断。ET1 (IE.3 ):定时器T1的溢出中断允许位。当ET1=1时,

12、允许T1中断;当 ET1= 0时,禁止T1中断。EX1 (IE.2 ):外部中断1的中断允许标志位。当 EX1=1时,允许外部中断1 中断;当ES=0时,禁止外部中断1中断。ET0(IE.1 ):定时器T0溢出中断允许位。当ET0=1时,允许T0中断;当ET0=0 时,禁止T0中断。EX(IE.O ):外部中断0允许位。当EX0=1时,允许外部中断0中断;当EXO=O 时,禁止外部中断0中断。定时中断子程序流程根据程序的需要,先为IE的各位赋值:外部中断0的中断允许位:EX0=1,允许外部中断SETB EX0定时器T0溢出中断允许位:ET0=1,允许中断请求SETB ET0允许中断(EA=1,

13、 CPU允许中断)SETBEA串行口中断允许位: ES=1,允许串行口中断 SETB ES以上各位等于1时,CPU开放中断;等于0时,CPU禁止该中断。单片机系 统复位后,IE中各位均被清零,即禁止所有中断。因此程序中开 T0中断则应将 ET0置 1,另外如果要使用中断EA也要置1,故应给IE赋值为82耳七、系统功能调试"j丿L IT AM 削L<0 IC44EWZ3円神 ?15*-13i1.! ";卜.i:HPTEifT 闻-册直流电机的调试功能仿真如下图: Mun I 7'7 II > > 1 - PH =Hire-I I 也穢iH rtijm

14、pzP0?A|3iPUilE-Faw¥il7FZJFJe 陀二人匚 FZ.Jk.KIZPJ J*|二” m二BblXllF1VP-Brz jrirsiflir加速分5档,波形依次如下:减速分5档,波形如下:八、设计总结通过本次课程设计,使我学到了许多书本上无法学到的知识,也使我深刻体会 到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固, 同时也对单片机这一门课程产生了更大的兴趣。在本次课程设计过程中,我学会 了有关本设计的各硬件的资源,其中包括:直流电机PW调速、AT89C5仲片机、L289引脚图及其引脚功能、LED数码管显示等知识。参考文献1 林志琦.基于Pro

15、teus的单片机可视化软硬件仿真M.:航空航天大学,2006.92周润景,丽娜.基于PROTEU的电路及单片机系统设计与仿真M.:航空航天大学,2006.53靖武,周灵彬.单片机系统的PROTEU设计与仿真M.:电子工业,2007.44周润景,丽娜.PROTEU入门实用教程M.:机械工业,2007.9楼然苗,光飞.51系列单片机设计实例M.:航空航天大学,2003.3楼然苗,光飞.单片机课程设计指导M.:航空航天大学,2007.7 直流电机PW碉速C语言程序:#in clude<reg51.h>#in clude<absacc.h>#in clude vintrin s

16、.h>/*自定义变量 */#defi ne uint un sig ned int /#defi ne uchar un sig ned charchar gw,sw,bw,qw;uchar j; /定时次数,每次 20ms自定义变量uchar f=5; /计数的次数sbitP10=P1A0;/PWM输出波形1sbitP11=P1A1;/PWM输出波形2sbitP13=P1A3;/加速sbitP14=P1A4;/减速sbitP15=P1A5;/停止sbitP16=P1A6;/启动uchar k;uchar t; /脉冲加减/*制位定义 *ucharsmg12=0x3f,0x06,0x5b

17、,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x71;存储区定义字型码表char data led4=0x08,0x04,0x02,0x01;/uint x;/display。; /delays。; /key();displays();/*数码管显示的数值数码管显示延时函数主函*/位码code程序main (void)TMOD=Ox51; /TO方式1 定时计数T1方式1计数THO=Oxb1; / 装入初值20MSTL0=0xe0;TH1=0x00;/计数 567TL1=OxOO;TR0=1;/启动 tOTR1=1;/启动 t1gw=sw=bw=qw=O;

18、 /数码管初始化P0=0xc0;P2=1;while(1) /无限循环display。; /数码管显示key();码管显示 *display()uchar i;gw=x%10;/sw=(x/10)%10;/bw=(x/100)%10; / qw=x/1000;/求速度个位值,送到个位显示缓冲区 求速度十位值,送到十位显示缓冲区 求速度百位值,送到百位显示缓冲区求速度千位值,送到千位显示缓冲区for(i=0;i<4;) P2=ledi;if(i=0)/显示个位P0=smggw;delays();else if(i=1)/显示十位P0=smgsw;delays();else if(i=2) /显示百位P0=smgbw;delays();else if(i=3)/ 显示千位延时函*delays。uchar i;for(i=5000;i>0;i-); /*t0定时*中断函数*/void t0() in terrupt 1 using 2 TH0=0xb1; / 重装 t0 TL0=0xe0;f-;if(k=0)if(f<t)P10=1;elseP10=0;P11=0;elseif(f<t)P11=1;elseP11=0;P10=0;if(f=0)f=5;j

温馨提示

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

评论

0/150

提交评论