直流风扇电机转速测量与PWM控制毕业论文

上传人:l**** 文档编号:70187581 上传时间:2022-04-06 格式:DOC 页数:28 大小:1.06MB
收藏 版权申诉 举报 下载
直流风扇电机转速测量与PWM控制毕业论文_第1页
第1页 / 共28页
直流风扇电机转速测量与PWM控制毕业论文_第2页
第2页 / 共28页
直流风扇电机转速测量与PWM控制毕业论文_第3页
第3页 / 共28页
资源描述:

《直流风扇电机转速测量与PWM控制毕业论文》由会员分享,可在线阅读,更多相关《直流风扇电机转速测量与PWM控制毕业论文(28页珍藏版)》请在装配图网上搜索。

1、摘 要本课题是对直流电机PWM调速器设计的研究,主要实现对电动机的控制。因此在设计中,对直流调速的原理,直流调速控制方式以与调速特性,PWM基本原理与实现方式进行了全面的阐述。为实现系统的微机控制,在设计中,采用了STC89C51单片机作为整个控制系统的控制电路的核心部分,配以各种显示,驱动模块,实现对电动机的转速的显示和测量;由命令输入模块,光电隔离模块与H型驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序的控制下,不断给光电隔离电路发送PWM波形,H型驱动电路完成电机的正反转控制。在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机

2、的调速。设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大的简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。目录摘要11 直流电机31.1直流电机的结构31.2直流电机的工作原理31.3 直流电机的主要的技术参数41.4直流电机的调速的技术指标42 单片机的相关知识62.1单片机的简介62.2 单片机的发展史62.2.1 4位单片机62.2.2 8位单片机62.2.3 16位单片机62.2.4 32位单片机72.2.5 64位单片机72.3 单片机的特点72.4 STC89C51单片机介绍83硬件电路的设计123.1控制电路的设计123.2霍尔元件测速部分电路

3、的设计123.3 电机控制正反转电路设计133.4 显示设计164 软件设计184.1 主程序部分184.2 数码管显示设计194.2.1 设计要求194.2.2 程序设计注意事项194.2.3 数码管显示程序设计194.3 功能程序设计195 直流测速系统仿真215.1 直流测速系统仿真215.1.1单片机最小系统仿真225.1.2 数码管显示仿真226结束语24参考文献24附1 源程序代码25附2 原理图311 直流电机1.1直流电机的结构直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等

4、组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。直流电机的结构如图1.2直流电机的工作原理直流电机模型如图1.2所示,磁极N,S间装着一个可以转动的铁磁圆柱体,圆柱体的表面固定着线圈abcd。当线圈流过电流的时候,线圈受到电磁力的作用,产生旋转。根据左手定则可知,当流过线圈中电流改变方向时,线圈的受力方向也将改变,因此通过改变线圈电流的方向实现改变电机的方向。1.3 直流电机的主要的技术参数额定功率Pn:在额定电流和电压下,电机的负载能力。额定电压Ue:长期运行的最高电压。额

5、定电流Ie:长期运行的最大电流。额定转速n:单位时间里面电机转速的快慢。励磁电流If:施加到电极线圈上的电流。1.4直流电机的调速的技术指标1.4.1 调速围 调速围是指最低可控转速到最高可控转速的围,最低可控转速对最高可控转速的比值,叫电机的调速比。1.4.2 调速的相对稳定性和静差度 所谓相对稳定性,是指负载转矩在给定的围里面变化所引起的速度的变化,它决定于机械特性的斜率。静差度(又称静差率)是指当电动机在一条机械特性上运行时,由理想空载到满载时的转速降落与理想空载转速n0的比值。用百分数表示,即 ,在一般的情况下,取额定转矩下的速度落差,有1.4.3 调速的平滑性调速的平滑性是在一定的调

6、速围,相邻两极速度变化的程度,用平滑系数表示,即式中和相邻两极,即i级与i-1级的速度1.4.4 调速时的容许输出 调速时的容许输出是指电动机在得到充分利用的情况下,在调速的过程中轴能够输出的功率和转矩。2 单片机的相关知识2.1单片机的简介单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。2.2 单片机的发展史2.2.1 4位单片机1975年,美国德克

7、萨斯公司首次推出4位单片机TMS-1000,此后各个计算机公司竞相推出4位单片机。日本松下公司的MN1400系列。美国洛克威尔公司的PPS/1系列等。4位单片机的主要的应用的领域有:PC机的输入装置。电池的充电器,运动器材,带液晶显示器的音/视频产品控制器,一般家用电器的控制与遥控器,电子玩具,钟表,计算器,多功能等。2.2.2 8位单片机1972年,美国Intel公司首先推出8位微处理器8008,并与1976年9月率先推出MCS-48系列单片机。在这以后,8位单片机纷纷面世。例如莫斯特克和仙童公司合作生产的3870系列,摩托罗拉公司生产的6801系列等。随着集成电路工艺水平的提高,一些高性能

8、的8位单片机相继问世,例如1978年摩托罗拉公司的MC6801。这类单片机的寻址能力达到64KB,片ROM的容量达4-8KB,片除带有并行I/O口,甚至还有A/D转换器的功能。8位单片机由于性能强大,被广泛用于自动化装置,智能接口,过程控制等各领域。2.2.3 16位单片机1983年以后,集成电路的集成度可达几十万只管/片,各系列16位单片机纷纷面世,这一阶段的代表产品有1983年Intel公司推出的MCS-96系列,1987年Intel公司推出了80C96 ,美国半导体公司推出了HPC16040。16位单片机主要用于工业控制,智能仪器仪表等场合。2.2.4 32位单片机随着高新技术智能机器人

9、,激光打印机,图像与数据实时处理,复杂实时控制,网络服务器等领域的应用和发展,20世纪80年代末,推出了32位单片机,如摩托罗拉公司的MC683XX系列。32位单片机是单片机的发展趋势,随着技术的发展和开发成本的降低,将会和8位单片机并驾齐驱。2.2.5 64位单片机近年来,64位单片机在引擎控制,智能机器人,磁盘控制,算法密集的实时控制场所已有应用。如英国的Inmos 公司的Transputer T800是高性能的64位单片机2.3 单片机的特点1、单片机的特点 (1)高集成度,体积小,高可靠性 单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的。芯片本身是按工业测控环境

10、要求设计的,部布线很短,其抗工业噪音性能优于一般通用的CPU。单片机程序指令,常数与表格等固化在ROM中不易破坏,许多信号通道均在一个芯片,故可靠性高。 (2)控制功能强 为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:分支转移能力,I/O口的逻辑操作与位处理能力,非常适用于专门的控制功能。 (3)低电压,低功耗,便于生产便携式产品 为了满足广泛使用于便携式系统,许多单片机的工作电压仅为1.8V3.6V,而工作电流仅为数百微安。 (4)易扩展 片具有计算机正常运行所必需的部件。芯片外部有许多供扩展用的三总线与并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。 (5)优异

11、的性能价格比 单片机的性能极高。为了提高速度和运行效率,单片机已开始使用RISC流水线和DSP等技术。单片机的寻址能力也已突破64KB的限制,有的已可达到1MB和16MB,片的ROM容量可达62MB,RAM容量则可达2MB。由于单片机的广泛使用,因而销量极大,各大公司的商业竞争更使其价格十分低廉,其性能价格比极高。2.4 STC89C51单片机介绍STC89C51单片机是一款低功耗、低电压、高性能CMOS8位单片机,片含8KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器(EPROM),器件采用CMOS工艺和ATMEL公司的高密度,非易失性存储器(NURAM)技术制造

12、,其输出引脚和指令系统都与MCS-51兼容,片的FLASH存储器允许在系统可改编程序或用常规的非易失性存储编程器来编程。因此,AT89C52是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域1。STC89C51具有以下主要性能:1.4KB可改编程序FLASH存储器;2.全表态工作 :024HZ;3.256X8字节部RAM;4.32个外部双向输入,输出(I、O)口;如图2.1。图2.1 STC89C51引脚说明引脚功能说明如下2:VCC:电源电压。GND:地。P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据线复用口。作为输出口时,每位能吸收电流的方式驱动8个TTL

13、逻辑门电路,对端口写“1”可作为高阻抗输入端。在访问外部数据储存器或程序储存器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活部上拉电阻。FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过部的上拉电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。FLASH编程和程序校验期间,P1接收低8位地址。P2口:P2是一个带部上拉电阻的8位双向I/

14、O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过部的上拉电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序储存器或16位地址的外部数据储存器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据储存器(例如执行MOVXRI指令)时,P2口线上的容(也即特殊功能寄存器(SFR)区中R2寄存器的容),在整个访问期间不改变。FLASH编程或校验时,P2亦接收高位地址和其他控制信号。P3口:P3是一个带部上拉电阻的8位双向I/O口,P3的输出缓冲级可

15、驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过部的上拉电阻把端口拉到高电平,此时可作为输入口。作为输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。P3除了作为一般的I/O口线外,更重要的用途是它的第二功能,具体功能说明如表2-1。P3口还接收一些用于FLASH闪速存储器编程和程序校的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。端口引脚第二功能P3.0RXD(串行输出口)P3.1TXD(串行输

16、入口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器0)P3.6WR(外部数据写选通)P3.7RD(外部数据读选通) 表3-1 P3口的第二功能表即使不访问外部存储器,ALE仍以是时钟振荡频率的1/6输出固定的正脉冲信号,因此他可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令ALE才会被激活

17、。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT80C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。EA/VPP:外部访问允许。欲使CPU仅访问外部程序储存器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时部会锁存EA端状态。如EA端为高电平(Vcc端),CPU则执行部程序储存器中的指令。FLASH储存器编程时,该引脚加上+12V的编程允许

18、电源Vpp,当然这必须是该器件是使用12v编程电压。XTAL1:振荡器反相放大器的与部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端3硬件电路的设计对题目进行深入的分析和思考,可以将整个模块分为以下几个部分:控制部分,显示电路,按键电路,霍尔元件测速电路,电机驱动电路。系统的框图如图3.1所示。 单 片 机电机驱动晶振电路复位电路显示电路按键电路测速电路图3.1 系统框图3.1控制电路的设计控制电路主要由单片机来控制,编写一段程序使单片机发出的PWM脉冲来实现对驱动的控制。新一代的单片机增加了很多的功能,其中包括PWM功能。单片机通过初始化设置,使其能自动的发出PWM脉冲波,只有在改

19、变占空比的时候CPU才干预。3.2霍尔元件测速部分电路的设计 霍尔传感器是基于霍尔效应的一种磁敏式传感器。霍尔效应1897年首次被美国物理学家霍尔在金属材料中发现,但由于霍尔效应在金属材料中太微弱而没有得到人们的重视与较好的应用。直到20世纪50年代,随着半导体技术的发展,利用半导体材料做成的霍尔元件的霍尔效应比较显著,从而霍尔效应被人们所重视和充分利用,霍尔式传感器得到了快速的应用和发展。目前霍尔传感器已经广泛的应用于电磁、电流、水位、速度、振动等的测量领域。由于霍尔元件产生的电势差很小,故通常将霍尔元件与放大器电路、温度补偿电路与稳压电源电路等集成在一个芯片上,称之为霍尔传感器。霍尔传感器

20、也称为霍尔集成电路,其外形较小,如图1所示,是其中一种型号的外形图。3.3 电机控制正反转电路设计H桥部分控制电路设计知道通过调节直流电机的电压可以改变电机的转速,但是一般我们设计的电源大都是固定的电压,而且模拟可调电源不易于单片机控制,数字可调电源设计麻烦。所以这里用脉宽调制(PWM)来实现调速。方波的有效电压跟电压幅值和占空比有关,我们可以通过站空比实现改变有效电压。一般用软件模拟PWM可以有延时和定时两种方法,延时方法占用大量的CPU,所以这里采用定时方法。直流电机旋转方向一般利用H桥电路来实现调速。H桥驱动电路:图3.3.1中所示为一个典型的直流电机控制电路。电路得名于“H桥驱动电路”

21、是因为它的形状酷似字母H。4个三极管组成H的4条垂直腿,而电机就是H中的横杠(注意:图3.3.1与随后的两个图都只是示意图,而不是完整的电路图,其中三极管的驱动电路没有画出来)。如图所示,H桥式电机驱动电路包括4个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。图3.3.1 H桥驱动电路 要使电机运转,必须使对角线上的一对三极管导通。例如,如图4.13所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转

22、动。当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。图3.3.2H桥电路驱动电机顺时针转动 图3.3.3所示为另一对三极管Q2和Q3导通的情况,电流将从右至左流过电机。当三极管Q2和Q3导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动(电机周围的箭头表示为逆时针方向)。图3.3.3 H桥驱动电机逆时针转动实际电路图如下图所示:图3.3.4 H桥原理图3.4 显示设计LED数码管是一种半导体发光器件,其基本单元是发光二极管,通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字。可以显示:时间、日期、距离等可以用数字

23、代替的参数。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳极数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳极数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,通过由各自独立

24、的I/O线控制,当单片机的P0口输出字形码时,所有数码管都接收到一样的字形码,但究竟是那个数码管会显示出字形,取决于单片机对P2.4-P2.7位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在本设计中采用了四位七段数码管,用动态驱动来显示距离的值,如图3.4所示。图3.4.1 数码管结构图4 软件设计4.1 主程序部分程序的完整流程图如图4.1所示:本程序的功能是通过对测量的转速,并用L293D器件来控制电机的转速,与电机转动的方向。然后用4位数

25、码管显示出来当前的转速与转动方向。主程序程序设计如源程序代码。开始初始化是否启动否 是变速电机转动电机转动电机转动切换方向电机转动显示当前转速电机转动计算转速电机转动是否切换转是否加减速是 否 是否是否停止 否 是结束电机转动 图 4.1.1 主程序流程图4.2 数码管显示设计4.2.1 设计要求数码管要显示当前各种状态,当前转速与当前转动方向。当电机转速发生改变的时候,数码管显示容立即显示当前转速。4.2.2 程序设计注意事项(1) 消除各个数码管之间的显示阴影部分;(2) 由于硬件没有锁存器,需要延长数码管的点亮时间,从而使数码管显示的更加清晰;(3) 合理运用程序空间,避免数码管显示不清

26、晰;(4) 动态扫描可以实现各个数码管的不同显示。4.2.3 数码管显示程序设计if(flat=0)P0=table11;/CelseP0=table12;/AP2=0xfe;delayms(3);P2=0xfd;P0=tableshuju/100;delayms(3);P2=0xfb;P0=tableshuju%100/10;delayms(3);P2=0xf7;P0=tableshuju%10;delayms(3);P2=0xff; /消隐部分4.3 功能程序设计功能程序部分,主要实现各个按键的功能。主要功能如下:(1) 启动/停止键:用来控制电机的启动和停止按键;(2) 加速按键 :用来

27、控制电机的转速,可以增加电机的当前转速;(3) 减速按键 :用来控制电机的转速,减缓电机的转速;(4) 正/反转按键:改变电机的转动方向。主要功能按键程序如下:if(K4=0)/启动 停止delayms(5);if(K4=0)while(!K4); num=!num;if(K1=0)/加速键delayms(5);if(K1=0)while(!K1);if(num0)num-;if(K3=0) /电机正反转按键delayms(5);if(K3=0)while(!K3);flat+;if(flat=2)flat=0;5 直流测速系统仿真硬件电路完成以后,进行系统软件设计和仿真。首先要分析系统对软件

28、的要求,然后进行软件的总体的设计,包括程序的总体设计和对程序的模块化设计。按整体功能分为多个不同的模块,单独设计、编程、调试,然后将各个模块装配联调,组成完整的软件。根据设计的要求,单片机的任务是:部进行计数,在计算出速度后显示。软件编程用C语言完成的,需要能掌握C语言,还要熟练AT89C51单片机。从程序流程图、编写程序、编译,到最后的调试,是很复杂的。下面作简单介绍:系统软件主程序的功能是完成系统的初始化、显示程序。5.1 直流测速系统仿真与以往的80C51单片机不同,AT89C51具有在线调试和下载功能,它由支持AT89C51的开发工具包Keil uVersion2.0开发系统来提供。也

29、就是说,在用户系统保留AT89C51的情况下,通过开发系统与AT89C51的串行接口通信,直接对用户系统进行调试,并在调试完成后将调试好的程序下载到AT89C51中。Keil uVersion3.0开发系统提供四项功能:编译、下载、调试和模拟,分别由Keil uVersion2.0提供的编译器、在线串行下载器、调试器和模拟器来实现。Keil uVersion2.0编译器可在Windows操作系统下直接使用,编译C语言源程序,并生成16进制文件和列表文件。调试器采用Windows系统,允许用户使用AT89C51的UART串行接口在芯片上调试代码执行。在典型调试对话中,调试器提供对片所有外围设备的

30、访问、单步和设置断点的代码执行控制方式。模拟器采用Windows系统,能完全模拟AT89C51的所有功能。模拟器使用简单,结合了许多标准调试特征,包括多断点、单步以与代码执行跟踪等能力。同样伟福仿真器是国较好的仿真器之一,它能够仿真的CPU品种多、功能强。通过更换仿真头POD,可以对不同的CPU进行仿真。可仿真51系列,196系列,PIC系列,飞利蒲公司的552、LPC764、DALLAS320,华邦438等51增强型CPU。由于伟福编译过程没有Keil uVersion2.0那么繁琐,能对程序进行直接编译,省去了建立和设置工程等步骤,使用方便、快捷。所以本设计以Keil uVersion2.

31、0为基础,运用C语言来编译程序。 当程序设计完以后,仿真部分运用Proteus仿真软件来实现,Proteus 软件是一款强大的单片机仿真软件,它除了具有和其他工具一样的原理编辑、印制电路板(PCB)自动或人工布线与电路仿真外,最大的特色是其电路仿真是交互的、可视化的。对于单片机学习和开发帮助极大。Proteus ISIS 是英国Labcenter 公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和数字集成电路,包括单片机。通过Proteus可以绘制硬件原理图,并设置元件参数;为单片机与其程序以与外部接口电路的仿真提供可能,验证设计的可

32、行性与合理性;还可以为连接实际的硬件电路做好准备;如有必要时,可以利用它来设计电路板。5.1.1单片机最小系统仿真最小系统的仿真实验如图5-1所示。图5-1 最小系统的仿真图5.1.2 数码管显示仿真 数码管动态显示仿真模拟实验如图5-2 所示。 图5-2 动态显示仿真图6结束语通过本次课程设计,使我学到了许多书本上无法学到的知识,也使我深刻领会到单片机技术应用领域的广泛。不仅让我对我学过的单片机知识的巩固,同时也对单片机这门课产生了很大的兴趣,在课程设计的之中,体会良多,收获很大。主要有以下方面:1. 巩固了书本上学习的知识,通过本次的课程设计,对书本上面的知识更加的了解,也对编写程序有了一

33、定的认识。2. 在本次的课程设计中,我进一步加强了自己的动手的能力和运用专业知识的能力,从中学到如何去思考和解决问题3. 通过本次的课程设计,让我了解到单片机技术对当今人们生活的重要性。同时这次课程设计也让我明白不管做什么事都要脚踏实地,刻苦努力的去做。参考文献1.何立明,单片机中级教程M :航天航空大学2006.102邹久朋,80C51单片机实用技术M航天航空大学2008.043湘涛,江世明 单片机原理与应用M:电子工业出本社 2007.044全利 单片机原理与接口技术(第二版)高等教育 2009.01附1 源程序代码/* = 直流电机控制+速度显示 =*/#include /头文件#def

34、ine uchar unsigned char /宏定义#define uint unsigned int#define CYCLE 10 /定义PWM的周期T为10msuchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0Xff,0xc6,0x88;/0-9 R 共阳数码管段选数据/* 端口定义*/sbit PWM1=P14;/PWM输出口1(电机正转)sbit PWM2=P15;/PWM输出口2(电机反转)sbit K1=P11;/加速sbit K2=P12;/减速sbit K3=P13;/正反转sbit K

35、4=P10;/启动停止/*/uchar PWM_ON=0;/PWM高电平时间uchar count=0; /中断计时uchar num=0;uchar num1=0; /中断时间计数uint num2=0; /外部中断次数uchar flat=0;/正反转标示位uchar flag=0; /刷新数据标示位/*函数名称:延时子函数 函数功能:按键消抖*/void delayms(uint xms)uint i,j;for(i=xms;i0;i-)for(j=110;j0;j-);/* 函数名称:按键子函数 函数功能:*/void key()if(K4=0)/启动 停止delayms(5);if(

36、K4=0)while(!K4); num=!num;if(K1=0)/加速键delayms(5);if(K1=0)while(!K1);if(num0)num-;if(K3=0) /电机正反转按键delayms(5);if(K3=0)while(!K3);flat+;if(flat=2)flat=0;switch(num)case 0: PWM_ON=0; break;/占空比为00%case 1: PWM_ON=4; break;/占空比为40%case 2: PWM_ON=7; break;/占空比为70%case 3: PWM_ON=10; break;/占空比为100%default:

37、break;/*速度数据采集*/void sudu()uint shuju;if(flag=1)flag=0;shuju=num2*2; /电机一秒转的圈数num2=0;if(flat=0)P0=table11;/CelseP0=table12;/AP2=0xfe;delayms(3);P2=0xfd;P0=tableshuju/100;delayms(3);P2=0xfb;P0=tableshuju%100/10;delayms(3);P2=0xf7;P0=tableshuju%10;delayms(3);P2=0xff;void init() PWM1=1; /初始化PWM2=1;TMOD

38、=0x11; /打开定时器TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;TR0=1;EX0=1;IT0=1;TH1=(65536-1000)/256;TL1=(65536-1000)%256;EA=1;ET1=1;TR1=1;/* 函数名称:主函数 函数功能:*/void main() init();while(1)key();sudu();/* 函数名称:定时器/计数器0中断子函数 函数功能:*/void T1_time() interrupt 3TH1=(65536-1000)/256;TL1=(65536-1000)%256;coun

39、t+;if(countCYCLE)count=0;if(countPWM_ON) /如果计时时间在不大于高电平时时间,电机转if(flat=0)PWM1=0;PWM2=1;if(flat=1)PWM1=1;PWM2=0;else /如果计时时间大于高电平时时间,电机停PWM1=1;PWM2=1;void T0_time() interrupt 1 /定时器0TH0=(65536-50000)/256;TL0=(65536-50000)%256;num1+;if(num1=10) /每0.5s刷新一次数据num1=0;flag=1;void timer() interrupt 0 /外部中断1 num2+;附2 原理图28 / 28

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!