课程设计(论文)-基于单片机的步进电机控制系统设计.doc

上传人:yyf 文档编号:3292770 上传时间:2019-08-08 格式:DOC 页数:41 大小:806.01KB
返回 下载 相关 举报
课程设计(论文)-基于单片机的步进电机控制系统设计.doc_第1页
第1页 / 共41页
课程设计(论文)-基于单片机的步进电机控制系统设计.doc_第2页
第2页 / 共41页
课程设计(论文)-基于单片机的步进电机控制系统设计.doc_第3页
第3页 / 共41页
课程设计(论文)-基于单片机的步进电机控制系统设计.doc_第4页
第4页 / 共41页
课程设计(论文)-基于单片机的步进电机控制系统设计.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《课程设计(论文)-基于单片机的步进电机控制系统设计.doc》由会员分享,可在线阅读,更多相关《课程设计(论文)-基于单片机的步进电机控制系统设计.doc(41页珍藏版)》请在三一文库上搜索。

1、课程设计(论文) 题 目 名 称 基于单片机的步进电机控制系统设计 课 程 名 称 单 片 机 学 生 姓 名 学 号 系 、专 业 电气工程系 指 导 教 师 年 月 日 邵阳学院课程设计(论文)任务书 年级专业07 电本 1 班学生姓名学 号 题目名称基于单片机的步进电机控制系统设计设计时间 2009 年 6 月 8 日 7 月 1 日 课程名称单片机原理课程编号1212000105设计地点 数字控制与 PC 实验室 一、课程设计(论文)目的 单片机原理课程是一门实践性、应用性很强的课程。通过课程设计使学生较系统 的掌握有关单片机控制的设计思想和设计方法,为学生今后的从事单片机控制系统开发

2、工 作打下坚实的基础。本课程设计的基本要求是使学生全面的掌握单片机控制系统设计的基 本理论,熟悉掌握 MCS-51 系列单片机的编程方法,让学生在接近实际工作环境下,完成 一个简单的单片机控制系统设计。 二、已知技术参数和条件 1、2 相 4 线步进电机; 2、开发环境:MCS-51 系列单片机开发系统,Proteus 单片机仿真系统; 3、硬件:实验室提供 PC 机、光电编码器、设计控制系统所需的电子元器件、可调 直流电源等; 4、单片机设计相关书籍资料、试验场地等; 三、任务和要求 设计任务: 利用 MCS-51 系列单片机设计一个步进电机控制的系统,用四位数码管显示圈数和角 度,能实现步

3、进电机的正反转控制,在给定的圈数和步进角度实现精确定位。 设计要求: 1、 要求进行方案论证,说明控制系统的工作原理; 2、 要求设计控制系统的硬件电路,给出电路原理图和元件清单; 3、 要求给出软件流程图并编写程序源代码; 4、 完成系统调试,给出调试结果并分析; 5、 撰写符合要求的课程设计说明书。 注:1此表由指导教师填写,经系、教研室审批,指导教师、学生签字后生效; 2此表 1 式 3 份,学生、指导教师、教研室各 1 份。 四、参考资料和现有基础条件(包括实验室、主要仪器设备等) 1、THKSCM-1 型单片机实验室指导书、KEIL 软件,WAVE 软件; 2、数字控制与 PLC 实

4、验室“THKSCM-1 型单片机实验系统”。 五、进度安排 1、2009 年 6 月 8 日至 14 日:搜集相关资料,熟悉课题任务; 2、2009 年 6 月 15 日至 16 日:系统总体方案论证与比较,系统总体硬件电路设计; 3、2009 年 6 月 17 日至 19 日:系统各模块硬件电路设计; 4、2009 年 6 月 20 日至 23 日:系统软件设计; 5、2009 年 6 月 24 日至 25 日:系统调试改进; 6、2009 年 6 月 26 日至 28 日:整理书写设计说明书; 7、2009 年 6 月 29 日至 7 月 1 日:答辩。 六、教研室审批意见 教研室主任(签

5、字): 年 月 日 七|、主管教学主任意见 主管主任(签字): 年 月 日 八、备注 指导教师(签字): 学生(签字): 邵阳学院课程设计(论文)评阅表 学生姓名: 学 号: 系: 电气工程系 专业班级: 07 电本一班 题目名称:基于单片机的步进电机的控制系统 课程名称: 单片机原理 一、学生自我总结 对我来说,这次的课程是一次难得的长途旅行,在旅行中有汗水有欢笑,但当自己迈向 重点的那一刻,才知道这次旅行的意义。 在做课程设计的这段时间,我与组员们一起查阅有关单片机的资料,并做下一些笔记, 并对课题进行深入的研究。每一次调试都让我兴奋不已,因为没做一步就将向成功迈进一步。虽 然有些许失败,

6、但失败是成功之母,失败让我不断积累经验,也为我指出了通向成功的明灯。 通过本次课程设计,我学到了许多书本上无法学到的知识,也深刻体会到单片机技术应用 领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了 更大的兴趣,让我对专业知识有了更深的理解。以后我将更加努力学习单片机,希望自己能更进 一步。 学生签名: 高志勇 2009 年 6 月 28 日 二、指导教师评定 评分项目综合成绩 权 重 单项成绩 指导教师评语: 指导教师(签名): 年 月 日 注:1、本表是学生课程设计(论文)成绩评定的依据,装订在设计说明书(或论文)的“任务书”页后 面; 2、表中的“评分

7、项目”及“权重”根据各系的考核细则和评分标准确定。 摘 要 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超 载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而 不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这 一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。 本设计首先介绍了 AT89C51 单片机、L298、驱动电路及两相四拍步进电 机的基本原理与功能,并由这些器件的特点设计了系统组成的基本框架。 整个系统通过单片机内部程序的控制,从 I/O 口输出控制脉冲,经过 L298 驱动电路的处理,输入能直接适合步进电机的控制

8、信号;,使能控制两相四拍 步进电机的独立的启停、转向等控制, 以及七段显示管的显示圈数。 关键字:AT 89C51 单片机; LED;键盘;L298;两相四拍步进电机 Abstract step-by-steps the electrical machinery is transforms the electricity signal impulse into the angular displacement or the linear displacement open-loop control part. In the non-overloads situation, electrical

9、 machinerys rotational speed, the stop position is only decided by the signal impulse frequency and the pulse number, but variation of loads influence, namely is not added to the electrical machinery a signal impulse, the electrical machinery has transferred a step pitch angle. This linear relations

10、hips existence, step-by-steps in addition the electrical machinery only then the periodic error, but characteristic and so on non-accumulated error this design first introduced at89C51 monolithic integrated circuit, L298, the driving circuit and two four rackets step-by-step electrical machinerys ba

11、sic principle and the function, and has designed the system composition bare bone by these components characteristic. the overall system through the monolithic integrated circuit internal procedures control, from the I/O mouth output control pulse, undergoes L298 driving circuits processing, the inp

12、ut can direct suitable step-by-step electrical machinerys control signal; , enables to control two four rackets to step-by-step electrical machinerys independence to open stops, changes and so on controls, as well as display tubes demonstration turn. key words: AT 89C51 monolithic integrated circuit

13、; LED; Keyboard; L298; Two four rackets step-by-step electrical machinery 目目 录录 1 1 概概 述述.7 1.1 设计概述设计概述7 1.2 设计主要功能设计主要功能7 2 2 系统硬件设计系统硬件设计.7 2.1 步进电机步进电机 2.1.1 步进电机原理步进电机原理. 2.1.2 步进电机特点步进电机特点 2.2 89C51 相关知识相关知识 2.2.1 组成框图及内部总体结构组成框图及内部总体结构. 2.2.2 寄存器和存储器寄存器和存储器. 2.3 步进电机的控制设计步进电机的控制设计7 2.3.1 步进电机

14、电路设计步进电机电路设计.8 2.3.2 数码管显示数码管显示. 2.3.3 键盘设计键盘设计.8 3 3 控制系统软件设计控制系统软件设计.11 3.1 主程序设计主程序设计12 3.2 键盘程序设计键盘程序设计.14 3.3 PROTEUS 软件仿真软件仿真.17 4 4 结束语结束语.19 参考文献参考文献.20 1 1 概概 述述 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进 驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的 角度(及步进角)。您可以通过控制脉冲个数来控制角位移量,从而达到准确 定位的目的;同时您可以通过控制脉冲频率来控制电机转动

15、的速度和加速度, 从而达到调速的目的。由实验中进行过步进电机的控制实验。经过一个学期的 学习对 8051 单片机有了一定的了解,对实验思考题进行思考和多方资料的参考 做了有 8051 单片机来实现步进电机转数控制。 1.11.1 设计概述设计概述 结合对步进电机的了解,然后对步进电机的控制原理包括步进电机的控制方 式和驱动方式作了系统的说明,采用8051单片机来控制步进电机,并给出了步进 电机的双相三拍控制单片机控制和三相六拍的单片机控制的具体实现方法,用 汇编程序进行控制运行。 1.21.2 设计主要功能设计主要功能 使用单片机以软件方式驱动步进电机,通过编程方法,对步进电机的转速、 往返转

16、动的角度以及转动次数等进行控制使其在一定范围下运行,还可以方便 灵活地控制步进电机的运行状态,以满足不同用户的要求。 图 1.2-1 步进电机 2 2 系统的硬件设计系统的硬件设计 2.12.1 步进电机步进电机 2.1.12.1.1 步进电机的控制原理 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在 非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数, 而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。 这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。 使得在速度、位置等控制领域用步进电机来控制变的非常的简单。虽然步进电

17、机已被广泛地应用,但步进电机并不能像普通的直流电机,交流电机在常规下 使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。 如图按右表 2.1.1 的时序给步机绕组通电,步进电机将产生转动,改变相序 通电,步进电机的转向将反相,停止发送脉冲,步机电机将停止运转。 表2.1-1 通电次序 2.1.22.1.2 步进电机的特点 步机电机之所以得到广泛应用的原因是由于步进电机有下列特性: 1:步机电机是在脉冲作用下工作,步机电机的速度与加在绕组上的脉冲频率 成正比。 2:步进马达具有瞬间起动与急速停止的特性。 3:改变线圈励磁的顺序,可就能改变马达的转动方向。 2.22.2 89C51

18、89C51 单片计算机的组成原理 AB AB 0 1 2 3 0100 0110 0011 1001 相 顺序反方向旋转 正方向旋转 2.2.12.2.1 组成框图及内部总体结构组成框图及内部总体结构 89C5l 内部组成方框图如图 2 所示,内部总体结构框图如图 3 所示。 64KB 总线 扩展控制器 可编程 I/O 可编程全双 工串行口 振荡器和时序 OSC 程序存储器 4KB Flash ROM 256 字节 RAM/SFR 216 位定时 器/计数器 80C51 CPU 图 2.2-1 89C51 单片机组成方框图 89C51 主要包括算术逻辑部件 ALU、累加器 A(有时也称 ACC

19、)、只 读存储器 ROM、随机存储器 RAM、指令寄存器 IR、程序计数据 PC、定时器 计数据、 IO 接口电路、程序状态寄存器 PSW、寄存器组,指令译码器 ID,此外,还有堆栈寄存器 SP、数据指针寄存器 DPTR 等部件。这些部件集成 在一块芯片上,通过内部总线连接,构成完整的微型计算机。下面按其部件功 能分类予以介绍。 图 2.2-2 89C51 总体结构框图 2.2.22.2.2 寄存器和存储器寄存器和存储器 微处理器中的寄存器是学习指令系统和程序设计中常会接触到的、寄 存器是由触发器组成的,8 位寄存器由 8 个触发器组成,16 位寄存器由 16 个触 发器组成。MCS51 中的

20、寄存器较多,大体可分为通用寄存器和专用寄存器两 类。 图 2.2-3 微处理器存储器结构 MCS51 存储器配置:微型计算机必须配置一定数量的存储器,但不同 的微型计算机存储器的配置不同。一种是程序与数据共用一个存储器,如图 3(a)所 示。一般的通用计算机都采用此种形式。另一种是将程序与数据分别放在两个 存储器内,一个称程序存储器,另一个称数据存储器,如图 3(b)所示。MCS 5l 单片机属于此类。这是由单片机的应用特点所决定的,因为单片机往往是为 某个特定对象服务的,这是与通用计算机不同的一个显著特点。它的程序设计 调试成功后,一般是固定不变的,因而程序(包括常数表)可以而且也应该一次

21、性地永久放到单片机内。这样不仅省去了每次开机后台程序重新装入步骤,还 可以有效地防止围掉电和其它干扰而引起的程序丢失的错误。MCS51 片内集 成有一定容量的程序存储器(803180c318032 除外)和数据存储器并具有较大 的外部存储器扩展能力。物理上,MCS51 有 4 个存储器空间:片内程序存储 器、片外程序存储器,片内数据存储器、片外数据存储器。 图 5 给出了访问程序存储器时,程序取指所涉及到的信号和时序。如果 程序存储器是外部的,则程序存储器读选 PSEN 一般是每个机器周期两次有效, 如图 5(a)所示,如果是访问外部数据存储器,如图 5(b)所示,则要跳过两个 PSEN,因为

22、地址和数据总线正在用于访问数据存储器。应该注意的是,数据存 储器总线周期为程序存储器总线周期的 2 倍,图 5 给出了端口 0 和端口 2 所发 送的地址 ALE 和 PSEN 的相对时序。ALE 用于将 P0 的低位地址字节锁存到地址 锁存器中。 图 2.2-4 MCS-51 执引外部程序存储器中指令码时的总线周期 2.32.3步进电机的控制设计步进电机的控制设计 键盘系统由命令输入单元,微处理器和功率放大器三部分组成。键盘负责发布命令、 输入数据,采用带中断的行列式键盘,微处理器负责将命令转化成控制信号。功率放大器 具有信号放大的功能。 图 2.3-1 单片机控制步进电机原理图 1 4 7

23、 Esc 2 5 8 6 9 0 3 Enter B B A P1.0 74HC30 停止 反转 正转 设置 A AT89C2051 P3.5 P3.4 P3.1 P3.0 INT0 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 步进 电机 驱动 电路 2.3.12.3.1 步进电机电路设计步进电机电路设计 在 Proteus 环境选用下例元器件,设计电路如图 8 所示。 IN4003、BUTTON:二极管、按纽; 7SEG-MPX4-CA、RESPACK-8、80C51、共阳四位一体数码管、排阻、 单片机; RES、CAP、CAP-ELEC、AND-4、CRYSTAL

24、:电阻、电容、电解电容、 4 输入与门、晶振; MOTOR-BISTEPPEA、L298:步机直流电机、电机驱动模块; 图 2.3-2 整个电路设计图 2.3.22.3.2 数码管显示 用一位共阴极数码管和单片机的 P0 口相连,显示电机转速的档位, 有一档、二档、三档,分别显示 1、2、3,在启动时初显示 0,清零后也显示 0. 图 2.3-3 .共阴极数码管 2.3.32.3.3 键盘设计键盘设计 当按键数大于8时,通常采用行列式键盘电路。如图所示为用单片机扩展I/O 口组成的行列式键盘电路。该图中行线P2.0到P2.5通过上拉电阻接+Vcc,且P2.0- P2.3为列线处于输出状态,P2

25、.4-P2.5为行线,处于输入状态。按键设置在行、列线 交点上,行、列线分别连接按键开关的两端。 当键盘上没有键闭合时,行线和列线之间时断开的,所有行线输入全部为高电 平。当按下键盘上的某个键使其闭合时,则对应的行线和列线短路,行线输入即为列线输 出。如果此时把所有列线初始化为输出低电平,则通过读取行线输入值的状态是否全为 1,即可判断有无键按下。共设八个按键,为一档、二档、三档、正转、反转、暂停、继续 和清零。具体键盘电路如下图: H1 H0 L3 L2 L1 L0 清零继续暂停反转 正转三档二档一档 图 2.3-4 键盘电路 3 3 控制系统软件设计控制系统软件设计 程序主要分为主程序、键

26、盘(中断)程序 3.13.1 主程序设计主程序设计 主程序主要完成初始化,设置中断入口程序,并将 R7 寄存器的 5、6、7 三位做为功能标志位,R7 中的值不停地送累加器,并检测累加器高三 位是否为 1,若其中有某位为 1 则转向相应的功能程序。主程序不断的循环处 于等待中断状态。 流程图如图所示: 图 3.1-1 主程序流程图 3.23.2键盘程序设计键盘程序设计 主程序运行期间,若产生中断则转入键盘程序。键盘程序分为 5 部分: 1 . 判断键盘上有无键按下 2 . 去除抖动的影响 3 . 扫描键盘,得到按下键的键号 4 . 判别闭合的键是否释放 5 . 键号入累加器,结束中断 中断流程

27、图如图所示: 开始 初始化 R71? 调用反转子程序调用正转子程序 调用显示子程序 Y N 主程序流程 图 3.1-2 中断子程序流程图 3.33.3ProteusProteus 软件仿真软件仿真 在该设计中,利用 Proteus 软件进行仿真。Proteus 是英国 Labcenter 公司开发的电路分析与仿真软件。运行于 Windows 操作系统上, 可以仿真、分析(SPICE)数字电路、模拟电路、数模混合电路,是目前唯一 能实现对 51、PIC、AVR、HC11、ARM 等处理器的仿真软件。Proteus 与 其它单片机仿真软件不同的是,它不仅能仿真单片机 CPU 的工作情况,也 能仿真

28、单片机外围电路或没有单片机参与的其它电路的工作情况。因此在 仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器 内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。 对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节 的矛盾和现象 图 3.3-1 原始数码管显示 图 3.3-2 开始运行程序时数码管显示 图 3.3-3 正转一段时间后数码管显示 图 3.3-4 反转一段时间后数码管显示 具体程序清单 ORG 0000H LJMP MAIN ORG 0013H LJMP KEYL ORG 0030H MAIN:MOV SP,#60H ;初始化 MOV R

29、0,#00H MOV R1,#00H MOV R3,#40 MOV 72H,#40 MOV P2,#0F0H CLR P3.4 CLR 06H CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 MOV 43H,#00H MOV 42H,#00H MOV 41H,#00H MOV 40H,#00H MOV R7,#00H SETB EA SETB IT1 SETB EX1 START:SETB 20H ;主程序 CJNE R7,#1,L1 CLR 20H LCALL ZZ SETB 20H L1:CJNE R7,#2,L2 CLR 20H LCALL FF SETB 20H

30、 L2:LCALL LED NNT3:LJMP START LED:MOV DPTR,#TAB ;显示程序 SETB P1.4 CLR P1.5 CLR P1.6 CLR P1.7 MOV A,43H MOVC A,A+DPTR MOV P0,A LCALL TT CLR P1.4 SETB P1.5 CLR P1.6 CLR P1.7 MOV A,42H MOVC A,A+DPTR MOV P0,A LCALL TT CLR P1.4 CLR P1.5 SETB P1.6 CLR P1.7 MOV A,41H MOVC A,A+DPTR MOV P0,A LCALL TT CLR P1.4

31、CLR P1.5 CLR P1.6 SETB P1.7 MOV A,40H MOVC A,A+DPTR MOV P0,A LCALL TT CLR P1.7 RET KEYL: MOV DPTR,#JS CLR EX1 MOV 70H,R0 MOV 71H,R1 MOV 72H,R3 MOV A,P2 MOV P2,#0FH MOV 01H,P2 MOV P2,#0F0H JNB ACC.4,E1 JNB ACC.5,E2 JNB ACC.6,E3 JNB ACC.7,E4 SETB EX1 RETI E1: MOV 20H,#0 LJMP KEYH E2: MOV 20H,#4 LJMP K

32、EYH E3: MOV 20H,#8 LJMP KEYH E4: MOV 20H,#12 LJMP KEYH KEYH:MOV A,01H ;键盘程序 JNB ACC.0,D0 JNB ACC.1,D1 JNB ACC.2,D2 JNB ACC.3,D3 SETB EX1 RETI D0: MOV A,#0 ADD A,20H MOV B,#3 MUL AB JMP A+DPTR D1: MOV A,#1 ADD A,20H MOV B,#03H MUL AB JMP A+DPTR D2: MOV A,#2 ADD A,20H MOV B,#3 MUL AB JMP A+DPTR D3: MO

33、V A,#3 ADD A,20H MOV B,#3 MUL AB JMP A+DPTR JS: LJMP LOOP1 LJMP LOOP2 LJMP LOOP3 LJMP LOOP10 LJMP LOOP4 LJMP LOOP5 LJMP LOOP6 LJMP LOOP11 LJMP LOOP7 LJMP LOOP8 LJMP LOOP9 LJMP LOOP15 LJMP LOOP0 LJMP LOOP12 LJMP LOOP13 LJMP LOOP14 LOOP0:JB 20H,SS0 LJMP WX SS0: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV

34、40H,#0 LJMP RRT LOOP1:JB 20H,SS1 LJMP WX SS1: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#1 LJMP RRT LOOP2:JB 20H,SS2 LJMP WX SS2: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#2 LJMP RRT LOOP3:JB 20H,SS3 LJMP WX SS3: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#3 LJMP RRT LOOP4:JB 20H,SS4 LJMP WX S

35、S4: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#4 LJMP RRT LOOP5:JB 20H,SS5 LJMP WX SS5: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#5 LJMP RRT LOOP6:JB 20H,SS6 LJMP WX SS6: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#6 LJMP RRT LOOP7:JB 20H,SS7 LJMP WX SS7: MOV 43H,42H MOV 42H,41H MOV 41H,40H MO

36、V 40H,#7 LJMP RRT LOOP8:JB 20H,SS8 LJMP WX SS8: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#8 LJMP RRT LOOP9:JB 20H,SS9 LJMP WX SS9: MOV 43H,42H MOV 42H,41H MOV 41H,40H MOV 40H,#9 LJMP RRT LOOP10:MOV A,43H MOV B,#10 MUL AB ADD A,42H MOV R0,A MOV A,41H MOV B,#10 MUL AB ADD A,40H MOV R1,A MOV R3,#40

37、SETB P3.4 SETB 06H MOV R7,#1 MOV 73H,R7 SETB EX1 RETI LOOP11:MOV A,43H MOV B,#10 MUL AB ADD A,42H MOV R0,A MOV A,41H MOV B,#10 MUL AB ADD A,40H MOV R1,A MOV R3,#40 SETB P3.4 SETB 06H MOV R7,#2 MOV 73H,R7 SETB EX1 RETI LOOP12:CLR 06H SETB EX1 MOV R0,70H MOV R1,71H MOV R3,72H MOV R7,73H RETI LOOP13:SE

38、TB P3.4 SETB 06H MOV R0,70H MOV R1,71H MOV R3,72H CJNE R0,#00H,GP1 CJNE R1,#00H,GP2 LJMP GP GP1: INC R3 LJMP GP GP2: DEC R1 GP: MOV R7,73H SETB EX1 RETI LOOP14:MOV SP,#60H MOV R0,#00H MOV R1,#00H MOV R3,#40 MOV 72H,#40 MOV P2,#0F0H CLR P3.4 CLR 06H CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 MOV 43H,#00H MO

39、V 42H,#00H MOV 41H,#00H MOV 40H,#00H MOV R7,#00H SETB EA SETB IT1 SETB EX1 SETB EX1 RETI LOOP15:JB 20H,SS10 LJMP WX SS10: MOV 40H,#00H MOV 41H,#00H MOV 42H,#00H MOV 43H,#00H SETB EX1 RETI RRT: SETB EX1 CLR P3.4 CLR 06H RETI WX: MOV R0,70H MOV R1,71H MOV R3,72H MOV R7,73H SETB 06H RETI ZZ: CJNE R0,#0

40、0H,FORWCYCLE ;正转圈,步程序 NEXT2:CJNE R1,#00H,STEP LCALL SC MOV R0,#00H MOV R1,#00H MOV R3,#40 MOV 72H,#40 MOV P2,#0F0H CLR P3.4 CLR 06H MOV 43H,#00H MOV 42H,#00H MOV 41H,#00H MOV 40H,#00H MOV R7,#00H SETB EA SETB IT1 SETB EX1 RET FORWCYCLE:MOV R3,72H NEXTFORSTEP:LCALL FORWSTEP DEC R3 JB 06H,NT2 CLR P3.4

41、 RET NT2: CJNE R3,#00H,NEXTFORSTEP MOV 72H,#40 DEC R0 LJMP ZZ STEP: LCALL FORWSTEP ;正转一步子程序 JB 06H,NT1 CLR P3.4 RET NT1: DEC R1 LJMP NEXT2 FORWSTEP:JB 06H,NT LCALL SC MOV R7,#0 RET NT: SETB P1.0 CLR P1.1 SETB P1.2 CLR P1.3 LCALL SC SETB P1.0 CLR P1.1 CLR P1.2 CLR P1.3 LCALL SC SETB P1.0 CLR P1.1 CLR

42、 P1.2 SETB P1.3 LCALL SC SETB P1.3 CLR P1.0 CLR P1.1 CLR P1.2 LCALL SC CLR P1.0 SETB P1.1 CLR P1.2 SETB P1.3 LCALL SC CLR P1.0 SETB P1.1 CLR P1.2 CLR P1.3 LCALL SC CLR P1.0 SETB P1.1 SETB P1.2 CLR P1.3 LCALL SC CLR P1.0 CLR P1.1 SETB P1.2 CLR P1.3 LCALL SC RET FF: CJNE R0,#00H,BACKWCYCLE ;反转圈,步程序 NE

43、XT4:CJNE R1,#00H,STEP1 LCALL SC MOV R0,#00H MOV R1,#00H MOV R3,#40 MOV 72H,#40 MOV P2,#0F0H CLR P3.4 CLR 06H MOV 43H,#00H MOV 42H,#00H MOV 41H,#00H MOV 40H,#00H MOV R7,#00H SETB EA SETB IT1 SETB EX1 RET BACKWCYCLE:MOV R3,72H NEXTBACKSTEP:LCALL BACKSTEP DEC R3 JB 06H,NT4 CLR P3.4 RET NT4: CJNE R3,#00

44、H,NEXTBACKSTEP MOV 72H,#40 DEC R0 LJMP FF STEP1:LCALL BACKSTEP ;反转一步子程序 JB 06H,NT3 CLR P3.4 RET NT3: DEC R1 LJMP NEXT4 BACKSTEP:JB 06,NT5 LCALL SC MOV R7,#0 RET NT5: CLR P1.0 CLR P1.1 SETB P1.2 CLR P1.3 LCALL SC CLR P1.0 SETB P1.1 SETB P1.2 CLR P1.3 LCALL SC CLR P1.0 SETB P1.1 CLR P1.2 CLR P1.3 LCAL

45、L SC CLR P1.0 SETB P1.1 CLR P1.2 SETB P1.3 LCALL SC SETB P1.3 CLR P1.0 CLR P1.1 CLR P1.2 LCALL SC SETB P1.0 CLR P1.1 CLR P1.2 SETB P1.3 LCALL SC SETB P1.0 CLR P1.1 CLR P1.2 CLR P1.3 LCALL SC SETB P1.0 CLR P1.1 SETB P1.2 CLR P1.3 LCALL SC RET SC: MOV DPTR,#TAB ;显示数据处理 MOV A,R0 MOV B,#10 DIV AB MOV 43

46、H,A MOV 42H,B MOV A,R1 MOV B,#10 DIV AB MOV 41H,A MOV 40H,B MOV R6,#30H NN: DJNZ R6,LED1 RET LED1: LCALL LED LJMP NN TT: MOV R5,#0FFH ;显示延时程序 T1: NOP DJNZ R5,T1 RET TAB: DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H ;显示数据 END: 4 4 结结 束束 语语 使用单片机以软件方式驱动步进电机,不但可以通过编程方法,在一 定范围内自由设定步进电机的转速、往返转动的角度以及转动次数等,而

47、且还 可以方便灵活地控制步进电机的运行状态,以满足不同用户的要求。因此,常 把单片机步进电机控制电路称之为可编程步进电机控制驱动器。步进电机控制 (包括控制脉冲的产生和分配)使用软件方法,即用单片机实现,这样既简化了 电路,也降低了成本。 在这次单片机设计中使我对步进机有了更深的了解,对单片机也有了更高 成次的了解,单片机的种类多,而型号杂,也是我们学习中的困难,所以就 MCS51 系列的产品来说,就是一个典型的学习方法。单片机编程是用汇编语 言进行编程,也就需要我们对电路的分析,然后总结,查阅相关资料才能变成 好的程序,编程讲究的是多动手写,自己写,用自己的思路,不怕写错,写错 再改,懂得有

48、新的思想这样才能提高。 在这次单片机应用系统设计中遇到到很大的困难,主要原因是平时的知识 掌握的不够,通过查阅很多资料和类似的论文,才做成的。以前都没有做过单 片机设计,一开始都不知道如何下手,在唐杰老师和学长对几个实例的讲解, 让我有了一定的了解。在设计过程中,唐老师所传授给我们的设计理念和思想 起了很重要的作用。由于时间的仓促,经验的少,知识的局限,设计有一定的 不足。 单片机对于我电气专业的学生电子电路基础比较差,在设计中表现出来了, 但是也表明了我要加倍的努力去学习电子电路方面的基础知识。光靠这次的设 计对能力提高不了多少,而是要记住这次设计经验,来更好地做好下次的设计, 也就是说积累经验,这对将来走上社会有很重要的作用。 参考文献 1杨永辉现代电子技术J 3-6 2潘新民王燕芳微型计算机控制技术实用教程M北京:电子工业出版社, 2007:75-76,118-119 3http/ 4刘湘涛江世明单片机原理与应用M北京:电子工业出版社,2006:1

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

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1