《方案设计书并实现红外遥控步进电机单片机课程方案设计书 .docx》由会员分享,可在线阅读,更多相关《方案设计书并实现红外遥控步进电机单片机课程方案设计书 .docx(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品名师归纳总结课程设计任务书同学姓名:专业班级:指导老师:工作单位:题 目:设计并实现红外遥控步进电机初始条件:(1) ) Proteus仿真软件或 XL1000 综合仿真试验仪一台。(2) )课程设计辅导书:1. 李群芳、 张士军,单片微型运算机与接口技术 , 电子工业出版社, 20212.张毅刚、彭喜元、董继成,单片机原理及应用,高等训练出版社,20043. 赵晓安 ., MCS-51 单片机原理及应用,天津高校出版社,2001(3) 先修课程:微机原理与接口技术、单片机原理。要求完成的主要任务 :(包括课程设计工作量及其技术要求,以及说明书撰写等详细要求)(1) 课程设计时间: 1 周
2、。(2) )本课程设计统一技术要求:依据要求对选定的设计题目进行分析,画出实现电路原理图,设计出各模块电路的功能,编写C51 或汇编程序,上机调试、仿真, 记录试验结果,对试验结果进行分析。除了代码,运行结果可以打印,其他手写(3) )课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,并标明参考文献至少 5 篇。(4) 写出本次课程设计的心得体会(至少500 字)。时间支配:课程设计时间为:6 月 26 日至 7 月 1 日, 7 月 2 日上午答辩。指导老师签名:年月日系主任(或责任老师)签名:年月日可编辑资料 - - - 欢迎下载精品名师归纳总结目录1. 设计原理及方法 1
3、1.1 步进电机的工作原理11.2 红外遥控器的原理 11.3 红外遥控步进电机的设计方法2 2.系统硬件线路设计 22.1 红外遥控及 LED 模块 22.2 步进脉冲产生模块: 52.3 硬件线路设计图 7 3.程序框图 84. 资源安排表 :95. 源程序: 107. 心得及体会: 218. 参考文献 :219. 本科生课程设计成果评定表 22可编辑资料 - - - 欢迎下载精品名师归纳总结1. 设计原理及方法1.1 步进电机的工作原理步进电机是数字掌握电机,它将电脉冲信号转化为角位移,实质上是一种数字/角度转换器。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定
4、的角度 称为“步距角” ,它的旋转是以固定的角度一步一步运行的。可以通过掌握脉冲个数来掌握角位移量,从而达到精确定位的目的,因此,单步和连续的动作区分只 是单片机给步进电机脉冲个数不同而已。每按一次单步键就是给电机一个脉冲,而连续 就是不断的给电机脉冲,达到连续运转的目的。同时可以通过掌握脉冲频率来掌握电机 转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种掌握用的特种电机,利用其没有积存误差 精度为 100%的特点,广泛应用于各种开环掌握。步进电机可分为反应式步进电机( VR)、永磁式步进电机( PM)和混合式步进电机( HB)三种。永磁式一般为两相,转矩和体积较小,步进角一般为7
5、.5或 15。反应是一般为三相,可实现大转矩输出,步进角一般为1.5,但噪声和振动都很大,在欧美等发达国家在 20 世纪 80 岁月已被剔除。混合式应用最为广泛,它混合了永磁式和反应式的优点。步进电机区分其他掌握电机的最大特点是,它通过输入脉冲信号来进行掌握的,即电机的总转到角度由输入脉冲数打算,而电机的转速由脉冲信号频率打算。1.2 红外遥控器的原理红外线遥控系统就是指利用红外线来传递掌握信号, 实现对掌握对象的远距离掌握的目的。由发射器发出红外线指令信号 , 由接收器接收信号并对信号进行处理 ,最终实现对对象的各种功能的远距离掌握。通用红外发射器由指令键、指令信号产生电路、调制电路、驱动电
6、路及红外发射器组成。红外遥控的发射电路是采纳红外发光二极管来发出经过调制的红外光波。红外接收电路由红外接收二极管、三极管或硅光电池组成,它们将红外发射器发射雕红外光转换为相应的电信号,再送后置放大器。接收电路将发射器发出的已调制的编码指令信号接收下来,并进行放大后送解调电路,解调电路将已调制的指令编码信号解调出来,即仍原为编码信号。指令译码器将编码指令信号进行译码,最终由驱动电路来驱动执行电路可编辑资料 - - - 欢迎下载精品名师归纳总结实现各种指令的操作掌握(机构)。红外遥控器的特点是不影响周边环境,不干扰其他电器设备,在室内近距离(小于10m)遥控中得到了广泛的应用。例如在录音机、音响设
7、备、空调机以及玩具等其他小型电器装置上都纷纷采纳红外线遥控。1.3 红外遥控步进电机的设计方法红外遥控器掌握步进电机是利用LED 发射红外线传递按键信息。由于红外采纳脉宽调制的串行码,以脉宽为0.565ms、间隔 0.56ms、周期为 1.125ms 的组合表示二进制的“ 0”。以脉宽为0.565ms、间隔 1.685ms、周期为 2.25ms 的组合表示二进制的“ 1”, 在解码时通过判定高低电平连续时间的长短来识别发送的键值。单片机的晶振为 12MHz ,单周期指令执行时间为1MHz ,由于机械动作需要肯定时间来完成,假如以这么快的速度来给脉冲,电机是不会转动的,因此,在两个脉冲之间必需要
8、有肯定时间差,电机才有时间来执行动作。电机转动的速度与脉冲频率成正比, 掌握脉冲间隔时间就相当于掌握了步进电机的转动角频率即快慢。依据该系统设计要求 , 需要通过红外遥控器按下按键和显示器来转变步进电机的运动状态以及显示 , 只需要红外遥控器中7 个按键就可满意需求,外加 8 位 LED数码显示管即可。由于试验箱上只有8 个连体数码管,因此需要动态扫描。通过从键盘上输入正、反转命令, 按键数值显示在数码管上 ,CPU 再读取正、反转命令 , 加减速后执行。经键盘可完成启动、停止、正转、反转、速度设置掌握功能。按下红外遥控器上的相关按钮电机执行相关动作,同时数码管上显示按键的数值。2. 系统硬件
9、线路设计2.1 红外遥控及 LED 模块本模块应完成对红外遥控器有无键按下进行确认,当有键按下时 ,确定按键值 ,并依据所得键值进行处理 包括所按键是不是停止键仍是执行键。如是停止键,不断扫描键盘程序, 等待执行键按下。如是执行键就启动产生步进电机掌握信号程序。显示模块主要是完成在进行键盘按下时 ,显示输入的数据值 转矩数、转动方向、转动速率及运行方式。可编辑资料 - - - 欢迎下载精品名师归纳总结2.1.1 红外遥控编解码原理红外遥控系统由发射和接收两大部份组成,应用编 /解码专用集成电路芯片来进行掌握操作。发射部份包括键盘矩阵、编码调制、 LED 红外发送器。接收部份包括光、电转换放大器
10、、解调、解码电路。由于采纳不同芯片其发送和接受的过程是不一样的,我们用的试验箱采纳的是 HT6221 红外编码芯片,因此以 HT6221 为例来说明红外遥控器编码和解码原理,其管脚图如图 1 所示。可编辑资料 - - - 欢迎下载精品名师归纳总结1. HT6221 键码的形成图表 1 HT6221管脚图可编辑资料 - - - 欢迎下载精品名师归纳总结当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特点:采纳脉宽调制的串行码,以脉宽为0.565ms、间隔 0.56ms、周期为1.125ms 的组合表示二进制的“ 0”。以脉宽为 0.565ms、间隔 1.685m
11、s、周期为 2.25ms 的组合表示二进制的“ 1”。当一个键按下超过36ms 振荡器使芯片激活假如这个键按下且推迟大约108ms,这108ms 发射代码由一个起始码 9ms ,一个结果码 4.5ms ,低 8 位的址码 9ms18ms ,高 8 位的址码 9ms18ms ,8 位数据码 9ms18ms和这 8 位数据的反码 9ms18ms 组成 假如键按下超过 108ms 仍未松开接下来发射的代码连发代码将仅由起始码 9ms 和终止码 2.5ms 组成。1.12ms为 0,2.24ms 为 1,如下图:可编辑资料 - - - 欢迎下载精品名师归纳总结图表 2 发送波形每发送一个码, HT62
12、21 会先送出一个 9ms 的头码和 4.5ms 的间隙,然后依次送出16位的的址码( 18ms36ms)、8 位数据码( 9ms18ms)和 8 位数据反码,如下图: 注: 代码宽度算法: 16 位的址码的最短宽度: 1.12 *16=18ms16 位的址码的最长宽度 2.24ms *16=36ms易知 8 位数据代码及其 8 位反代码的宽度和不变:( 1.12ms+2.24ms)* 8=27ms 32 位代码的宽度为 18ms+27ms 36ms+27ms2 .代码格式(以接收代码为准,接收代码与发射代码反向)位定义单发代码格式连发代码格式3. 解码方法1. 解码的关键是如何识别 0 和
13、1 从位的定义我们可以发觉 0 1 均以 0.56ms的低电平开头不同的是高电平的宽度不同0 为 0.56ms, 1 为 1.68ms,所以必需依据高电平的宽度区分 0 和 1 假如从 0.56ms 低电平过后开头延时0.56ms 以后 如读到的电平为低说明该位为0 反之就为 1 为了牢靠起见 延时必需比 0.56ms 长些 但又不能超过 1.12ms,否就假如该位为 0 读到的已是下一位的高电平因此取 1.12ms+0.56ms /2=0.84ms最为牢靠一般取 0.84ms2. 依据码的格式应当等待 9ms 的起始码和 4.5ms 的结果码完成后才能读码左右均可这样接收到的仅仅是一般的代码
14、要得到标准的键值仍必需进行代码识别和代码转换。2.1.2 LED显示部分可编辑资料 - - - 欢迎下载精品名师归纳总结共阳接法:低电平亮,高电平灭数码管部分 JP5(掌握数码管的 8 段)JP8(输入高电平选中相应的数码管)数码管实际上是由 7 个发光管组成的 8 字形构成的,加上小数点就是8 个。分别把它命名为 ABCDEFGH ,由于接法是共阳接法,所以低电平是亮,高电平是灭。例如,要显示一个数字 2 就是 C、F、H(小数点)不亮, P0.0-P0.7掌握数码管的 8 段, 0 为亮, 1 为灭,从高往低排列, P0.0-P0.7 写成二进制为 10100010,把它转化为十六进制数为
15、A2H,当然在此之前,仍必需指定哪一个数码管亮。CPU 向字段输出口送出字形码,全部显示器接收到相同的字形码,由 8 个 PNP的三极管,来掌握这 8 位哪位工作假如要选中第一位,只需将该位清零即可。全部数码管的 8 个笔划段 a-h 同名端连在一起,在这种接法中同一瞬时全部的数码管显示都是相同的,不能显示不同的数字。在单片机里,第一显示一个数,然后关掉,然后显示其次个数,又关 掉,那么将看到连续的数字显示,轮番点亮扫描过程中,每个显示器的点亮时间是极为 短暂的(约 1ms),由于人的视觉暂留现象及发光二极管的余晖效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一
16、组稳固的显示数据, 不会由闪耀感。2.2 步进脉冲产生模块:可编辑资料 - - - 欢迎下载精品名师归纳总结2.2.1 步进电机的掌握步进电机系统中有两个重要电路:脉冲安排电路和驱动电路。脉冲安排电路有两个输入信号:步进脉冲和转向掌握。脉冲安排电路在步进脉冲和转向掌握信号的共同作用下产生正确转向的4 相鼓励信号。此鼓励信号经过驱动电路送至步进电机,从而掌握步进电机向正确的方向转动,此鼓励信号的频率打算了步进电机的转速。脉冲安排可通过脉冲安排器实现,也可通过软件实现。驱动电路的主要作用是实现功率放大。一般脉冲安排器输出的驱动才能是有限的, 它不行能直接驱动步进电机,而必要经过一级功率放大。对于功
17、率比较小的步进电机, 厂家已经生产出了集成度较高、脉冲安排与驱动电路集成在一起的芯片,应用中只需将它的输出端与步进电机相连即可。步进电机步进时是机械转动,因此存在惯性。当从静止状态启动步进时相当于开头转动的速度为 0,它不行能立刻就达到最大转速(频率),因此需要一个逐步加速的过程,否就可能由于惯性儿导致“失步”。比如,开头应当走20 步。却只走了 19 步,丢失了一步。步进电机的最高启动频率(又称突调频率)一般为0.1KHZ 到 3-4KHZ ,以超过最高启动频率的频率直接启动,将会显现失步现象,甚至无法启动。同理,当步进电机正以最高启动频率(可达几百千赫兹)步进时,他不行能立刻停下来,很可能
18、显现多走几步的情形,这当然也会造成错误,因此在停止之前应当有一个预先减速的过程,到该停止的位置时,速度已经很慢,惯性已经很小,可以立刻停止。步进电机在转换方向时,也肯定要在电机降速停止或降到突跳频率范畴之类再换向,以免产生较大的冲击儿损坏电机。换向信号肯定要在前一个方向的最终一个鼓励信号脉冲终止后以及下一个方向的第一个鼓励脉冲前发出。步进电机在某一高速下运行时的正反向切换实质上包含了降速换向升速三个过程。2.2.2 步进电机的调速假如给步进电机发送一个掌握脉冲,它就转一步,再发送一个脉冲,它会再转一步。假如两个脉冲的间隔越短,步进电机就转得越快。调整步进电机发出的脉冲频率, 就可以对步进电机进
19、行调速,而脉冲频率可以通过软件延时和硬件定时两种方式实现。通过调用标准延时子程序产生脉冲的方法称软件延时,该法第一设置两个字节作为延时程序的入口的址,再依据需要延时的时间长短给这两个字节赋值,就单片机就会依据设可编辑资料 - - - 欢迎下载精品名师归纳总结置的延时时间不断的产生脉冲信号掌握步进电机转动。软件延时的方法程序简洁、思路清楚,而且不占用单片机的硬件资源。通过使用单片机的定时 /计数器 T0 或 T1,定时产生脉冲的方法称为硬件定时,该法第一依据定时的时间长短设定定时器的工作模式,然后输入定时器的定经常数,就定时器就会定时溢出,单片机就会每溢出一次就产生一个脉冲信号掌握步进电机转动。
20、硬件定时的方法既需要硬件(定时 /计数器 T0 或 T1),又需要软件来产生所需频率的脉冲信号,是一种软硬结合的方法,虽然占用了一个定时器,但是提高了CPU 的利用率, CPU在定时器没产生溢出时运行其它程序。用定时中断方式来掌握电动机变速时,实际上是不断转变定时器装载值的大小。在程序中,每按一次加减速键,程序中speed都会加减 1,最终通过查表的方法转变定时计数器初值,达到加减速的目的。至于步进电机的正反转就是公用一个键,按下转动方向就相反,正反转的实现是通过判定 20 号单元的第 2 位即 20H.1 是 0 仍是 1,如是 0 就去查反转的表否就去查正转的表,实行起来比较便利。电机的加
21、减速掌握,只需掌握好脉冲频率即可,可以采纳中断计时的方法,内部定时器中断主要是利用单片机的内部定时器的方式116 位计数方式 产生不同周期的定时信号,每次中断都给步进电机三个绕组一次脉冲,使得步进电机转动一个节拍。因此步进电机的转速是由单片机内部定时器的中断频率打算的,不断转变定时器的装载初值就可转变电机的运转速度。不论步进电机处于何种状态,只要按下复位键,立刻跳转到主程序,停止给脉冲, 电机停止运转。2.3 硬件线路设计图原理图:可编辑资料 - - - 欢迎下载精品名师归纳总结可编辑资料 - - - 欢迎下载精品名师归纳总结1234VCC540639P0.0738P0.1837P0.2936
22、P0.31035P0.41134P0.51233P0.61332P0.7143130VCC151629282726252423VCC2221VCCP3.2VCCR210 kJ. CON61 2 3 4 5 6R415K123C84.7 ufU5123HS0038U2R3VCC10 0GND VCCVOVCCP1.0 P1.1 P1.2P1.3C3U11P1.02P1.134P1.2P1.35P1.467P1.58P1.6P1.79 RST10 Rx D/P3.0 1112TxD/P3.1INT0/P3.213INT1/P3.314T0/P3.41516T1/P3.5WR/P3.617RD/P3
23、.718XTAL2 1920XTAL1GNDVCC P0.0/AD0P0.1/AD1 P0.2/AD2 P0.3/AD3P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7EA/Vp pALE PSENP2.7/A15 P2.6/A14 P2.5/A13P2.4/A12P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8RSR/W E DB0DB1 DB2 DB3DB4 DB5 DB6 DB7BG VCC BG GNDLCD6 5 4 3 2 1 01 1 1 1 1 1 19S1C410 41 2 3 4 5 6 7C22 ufT T T T T T TU U
24、 U U U U U O O O O O O OCV1 2 3 4 5 6 7 DN N N N N N N NR110 kP3.2I I I I I I I G1 2 3 4 5 6 7 8C10. 1. 2. 3.1 1 1 1P P P PVCC30 pfR2 3Y111.059 2MHzC24.7 kR2 2AT89S5230 pf4.7 k R2 14.7 k R2 04.7 k3. 程序框图U3 ULN20 03可编辑资料 - - - 欢迎下载精品名师归纳总结程序流程图4. 资源安排表 :10H,单步正转 03H 单步逆转01H 连续正转 06H 连续逆转09H 加速1DH,减速1
25、FH 停止TH031HTL030H P1 OUTP2 选通P0 送数可编辑资料 - - - 欢迎下载精品名师归纳总结5. 源程序:ORG 0000H SJMP START0 ORG 000BH AJMP ZHDUANORG 0030HSTART0:MOV SP,#60HMOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#0FFHMOV 35H,#00H MOV 31H,#3CH MOV 30H,#0B0H MOV 32H,#1START:HWAI: JB P3.7, $ 。等待遥控信号显现SB:MOV R4,#8。8 毫秒为高电平错误SBA:MOV R
26、5,#250 SBB:JB P3.7,SXB1DJNZ R5,SBB DJNZ R4,SBA MOV R4,#2 JMP SBCSXB1:可编辑资料 - - - 欢迎下载精品名师归纳总结MOV R5,#5SXB2:。去掉 20US 的尖峰干扰信号JNB P3.7,SBBDJNZ R5,SXB2 JMP STARTSBC:MOV R5,#250 SB1:JB P3.7,SB2 。2MS 内不为高电平错误DJNZ R5,SB1 DJNZ R4,SBC JMP STARTSB2:。去掉 20US 的尖峰干扰信号MOV R5,#5 SB2_A:JNB P3.7,SB1DJNZ R5,SB2_A MOV
27、 R4,#3SB2_1:MOV R5,#250SB3:。监测 4.5MS 高电平,如 3MS 内显现低电平错误JNB P3.7,SXCDJNZ R5,SB3 DJNZ R4,SB2_1 MOV R4,#2 JMP SB3_1SXC:。去掉 20US 的尖峰干扰信号MOV R5,#5 SXC1:可编辑资料 - - - 欢迎下载精品名师归纳总结JB P3.7,SB3 DJNZ R5,SXC1 JMP STARTSB3_1:。监测 4.5MS 高电平,如 5MS 内不为低错误MOV R5,#250 SB3_2:JNB P3.7,SB4 DJNZ R5,SB3_2 DJNZ R4,SB3_1 JMP
28、STARTSB4:。去掉 20US 的尖峰干扰信号MOV R5,#5 SB4_1:JB P3.7,SB3_2DJNZ R5,SB4_1MOV R1,#1AH。设定 1AH 为起始 RAM 区MOV R2,#4 PP: MOV R3,#8 JJJJ:MOV R5,#250JJJJ2:。1MS 内不为低电平错误JB P3.7,JJJJ3DJNZ R5,JJJJ2 JMP STARTJJJJ3:LCALL YS1。高电平开头后用882 微秒的时间尺去判定信号此时的高低电平状态MOV C,P3.7。将 P3.7 状态 0 或 1 存入 C 中JNC UUU。假如为 0 就跳转到 UUU MOV R5,
29、#250可编辑资料 - - - 欢迎下载精品名师归纳总结JJJJ4:JNB P3.7,UUU NOPDJNZ R5,JJJJ4 JMP STARTUUU:MOV A,R1。将 R1 中的址的给 ARRC A。将 C 中的值移入 A 中的最低位MOV R1,A 。将 A 中的数暂存在 R1 中DJNZ R3,JJJJ。接收的址码的高 8 位INC R1 。对 R1 加 1,换成下一个 RAMDJNZ R2,PP。以下对代码是否正确和定义进行识别MOV A,1AH 。比较高 8 位的址码XRL A,#00000000B。判定 1AH 的值是否等于 00000000,相等的话 A 为 0 JNZ E
30、XIT 。假如不等解码失败退出MOV A,1BH 。比较低 8 位的址XRL A,#11111111B。再判高 8 位的址是否正确JNZ EXIT 。假如不相等说明解码失败退出LCALL YS3MOV A,1CH 。比较数据码和数据反码是否正确 . CPL AXRL A,1DH 。将 1CH 的值取反后和 1DH 比较不同就无效丢弃,核对数据是否精确JNZ EXIT 。假如不相等说明解码失败退出LCALL YS3CLR P2.6 。选中数码管CLR P3.3 。解码胜利喇叭响 .AJMP BIJIAO 。判定在 118 毫秒内是否有连发码AA: MOV R1,#25XX: ACALL YS2可
31、编辑资料 - - - 欢迎下载精品名师归纳总结JNB P3.7,HH 。跳转到 HH DJNZ R1,XXEXIT: 。对全部端口清零AJMP START。连发码判定程序段 -HH: MOV R6,#4S: ACALL YS1 。调用 882 微秒延时子程序JB P3.7,EXIT 。延时 882 微秒后判定 P3.7 脚是否显现高电平假如有就退出解码程序DJNZ R6, S 。重复 4 次,目的是确认JNB P3.7, $ 。等待高电平LCALL YS3 AJMP AABIJIAO:MOV A,1CH。红外键值。显示按键MOV P2,#01H CJNE A,#10h,TT1MOV P0,#7
32、EH。数码管显示1TT1:CJNE A,#03h,T2MOV P0,#0A2H。数码管显示2T2:CJNE A,#01h,T3T3:MOV P0,#62H。数码管显示CJNE A,#06h,T43T4:MOV P0,#74H。数码管显示 4CJNE A,#09h,T5MOV P0,#61H。数码管显示5T5:CJNE A,#1dh,T6MOV P0,#21H。数码管显示6T6:CJNE A,#1fh,NEXTMOV P0,#7AH。数码管显示7可编辑资料 - - - 欢迎下载精品名师归纳总结。单步正转NEXT:CJNE A,#10H,NZHUAN2 CLR ET0SJMP SZHUAN1 SZ
33、HUAN:MOV 35H,#00H SZHUAN1: MOV A,35HMOV DPTR,#TABS MOVC A,A+DPTR JZ SZHUANMOV P1 , A INC 35H AJMP HWAI。单步逆转NZHUAN2: CJNE A,#03H,LSZHUAN2 CLR ET0SJMP NZHUAN1 NZHUAN:MOV 35H,#00H NZHUAN1: MOV A,35HMOV DPTR,#TABN MOVC A,A+DPTR JZ NZHUANMOV P1 , A INC 35H AJMP HWAI。连续正转LSZHUAN2: CJNE A, #01H,LNZHUAN2可编辑
34、资料 - - - 欢迎下载精品名师归纳总结SETB20H.0。标志位为 1,说明正转MOVTMOD ,#01HMOVTH0,31HMOVTL0,30HSETBTR0SETBEASETBET0。AJMPHWAI。连续逆转LNZHUAN2: CJNE A, #06H,JIASUCLR 20H.0。标志位为 0,说明反转MOV TMOD ,#01HMOV TH0,31H MOV TL0,30H SETB TR0 SETB EA SETB ET0 AJMP HWAI。JIASU:CJNE A, #09H,JIANSU MOV A,32HCJNE A,#5,JIA1 AJMP HWAIJIA1:INC
35、32HINC AMOV DPTR,#TABLE MOVC A,A+DPTR MOV P2,#03H可编辑资料 - - - 欢迎下载精品名师归纳总结MOV P0,A MOV A,32H CJNE A,#1,JIA2 MOV 31H,#3CHMOV 30H,#0B0H AJMP HWAIJIA2:CJNE A,#2,JIA3 MOV 31H,#63H MOV 30H,#0C0H AJMP HWAIJIA3:CJNE A,#3,JIA4MOV 31H,#8AH MOV 30H,#0D0H AJMP HWAIJIA4:CJNE A,#4,JIA5 MOV 31H,#0B1H MOV 30H,#0E0H
36、 AJMP HWAIJIA5:CJNE A,#5,JIAMAXMOV 31H, #0D8H MOV 30H, #0F0HJIAMAX:AJMP HWAI。JIANSU:CJNE A,#1DH,STOP MOV A,32HCJNE A,#1,JIAN1 AJMP HWAIJIAN1:DEC 32H DEC A可编辑资料 - - - 欢迎下载精品名师归纳总结MOV DPTR,#TABLE MOVC A,A+DPTR MOV P2,#03HMOV P0,A MOV A,32HCJNE A,#1,JIAN2MOV 31H,#3CH MOV 30H,#0B0H AJMP HWAIJIAN2:CJNE A
37、,#2,JIAN3 MOV 31H,#63H MOV 30H,#0C0H AJMP HWAIJIAN3:CJNE A,#3,JIAN4MOV 31H,#8AH MOV 30H,#0D0H AJMP HWAIJIAN4:CJNE A,#4,JIAN5 MOV 31H,#0B1H MOV 30H,#0E0H AJMP HWAIJIAN5:CJNE A,#5,JIANMAXMOV 31H, #0D8H MOV 30H, #0F0H JIANMAX:AJMP HWAI。STOP:CJNE A,#1FH,FANHUI CLR ET0MOV P3,0FFH可编辑资料 - - - 欢迎下载精品名师归纳总结A
38、JMP HWAI。FANHUI:AJMP HWAI。 中断ZHDUAN:JB 20H.0,SZH NZH : MOV DPTR,#TABNSJMP XHUANSZH: MOV DPTR,#TABS SJMP XHUANXHUAN1: MOV 35H,#00HXHUAN: MOV A,35H MOVC A,A+DPTR JZ XHUAN1MOV P1 , A INC 35HMOV TMOD ,#01H MOV TH0,31H MOV TL0,30H SETB TR0RETI。YS1:MOV R4,#20 。延时子程序 1, 882 微秒D1: MOV R5,#20DJNZ R5,$ DJNZ R
39、4,D1 RETYS2: MOV R4,#10。延时子程序 2, 4740 微秒D2: MOV R5,#235可编辑资料 - - - 欢迎下载精品名师归纳总结DJNZ R5,$ DJNZ R4,D2 RETYS3:MOV R4,#2。延时程序 3, 1000 微秒D3:MOV R5,#248 DJNZ R5,$DJNZ R4,D3 RETTABLE: DB 28h,7eh,0a2h,62h,74h,61h,21h,7ah,20h,60hTABS: DB 03H,09H,0CH,06H,00HTABN: DB 03H,06H,0CH,09H,00H 。0 1 2 3 4 5 6 7 8 9 EN
40、D6. 性能分析:由于电机步进角为 7.5,一圈需要 360/7.5=48 个脉冲。电机转速为 1/(T*48 ),其中 T 为 定时 计数器中 断时间, 开头 时电 机以 最小 速度 运行, 即 查表中第 一个 数据, HT0=15H,TL0=A0H, 通过运算为 60ms,由于单片机给 48 个脉冲步进电机才转一圈,因此电机的速度为 0.35 转/s。表中各种值对应的速度如下表:转速( r/s)中断时间(ms)TH0TL00.356015HA0H0.385529H28H0.42503CHB0H0.464550H38H0.524063HC0H0.603577H48H0.69308AHD0H0
41、.83259EH58H1.0420B1HE0H1.3915C5H68H可编辑资料 - - - 欢迎下载精品名师归纳总结电机单步运行: 7.5/次电机连续运行: 0.35 r/s1.39r/s数码管显示:红外按键值 1-7在试验箱上演示的结果说明程设计是符合要求的,利用红外遥控器按键1-7 分别能够实现步进电机单步正转,单步反转,连续正转,连续反转,加速,减速,停止操作,所以此次课程设计是比较胜利的。7. 心得及体会:这次课程设计已经终止,经受的时间比较长,在这段时间里我收成了学问,同时也收成了乐趣。一开头根本不知道步进电机,对红外遥控器也没有接触过。第一就是依据题目要求设计程序,虽然语言不限,
42、但我仍是挑选了汇编语言。但是设计起来仍是很困难的,所以我又把微机原理跟单片机的书拿出来温习了一遍,终于有了点底气。我把整个按键分为两大部分:单步和连续。它们共有一个动作:正反转和停止,在连续时有加速和减速。确定好思路后,写代码就特别简洁了。但是仍是遇到很多不懂的的方,所以向同学请教了很多,很多问题也通过争论得到明白决。程序写好后就是上机调试了,其实假如汇编语言学得好的话,调试是很快的,但我却用了很多时间,这也让我熟悉到自己理论学问把握的并不坚固,必需加强学习。然后就可以将调试好的程序写入试验箱了,由于设计程序时就考虑到要实现的全部功能,而且程序已经调试胜利,所以试验结果是很让人中意的,步进步进
43、电机能够启动,而且通过遥控可以使其单步、连续转动,正反向变换和加减速。通过此次课程设计,我巩固了自己的理论学问,也增强了实际动手才能,在设计与调试的过程中我体会到了欢乐与艰辛,熟悉到理论学问对于时间的重要性,以及团队合作的力气。任何人都不行能单枪匹马的去胜利的干成一件事,团队合作才是硬道理。总之,我收成了很多,也为我以后的工作奠定了肯定的基础。8. 参考文献 :1 韩全立。单片机掌握技术及应用。北京 :电子工业出版社 ,20042 胡汉才。单片机原理及系统设计。北京 :清华高校出版社 ,20023 王晓明。电动机的单片机掌握。北京 :北京航天航空高校出版社 ,2002可编辑资料 - - - 欢迎下载精品名师归