单片机51单片机控制步进电机程序控制 -- 求程序

课程设计(论文) 题 目 名 称 基于单片機的51单片机控制步进电机程序控制系统设计 课 程 名 称 单 片 机 学 生 姓 名 学 号 系 、专 业 电气工程系 指 导 教 师 年 月 日 邵阳学院课程设计(论文)任务书 年级专业 07电本1班 学生姓名 学 号 题目名称 基于单片机的51单片机控制步进电机程序控制系统设计 设计时间 2009年6月8日——7月1日 课程名称 单片機原理 课程编号 设计地点 数字控制与PC实验室 课程设计(论文)目的 《单片机原理》课程是一门实践性、应用性很强的课程通过课程设计使学生较系统的掌握有关单片机控制的设计思想和设计方法,为学生今后的从事单片机控制系统开发工作打下坚实的基础本课程设计的基本要求是使学生全面的掌握单片机控制系统设计的基本理论,熟悉掌握MCS-51系列单片机的编程方法让学生在接近实际工作环境下,完成一個简单的单片机控制系统设计 已知技术参数和条件 1、2相4线51单片机控制步进电机程序; 2、开发环境:MCS-51系列单片机开发系统,Proteus单片机仿真系統; 3、硬件:实验室提供PC机、光电编码器、设计控制系统所需的电子元器件、可调直流电源等; 4、单片机设计相关书籍资料、试验场地等; 三、任务和要求 设计任务: 利用MCS-51系列单片机设计一个51单片机控制步进电机程序控制的系统用四位数码管显示圈数和角度,能实现51单片機控制步进电机程序的正反转控制在给定的圈数和步进角度实现精确定位。 设计要求: 要求进行方案论证说明控制系统的工作原理; 偠求设计控制系统的硬件电路,给出电路原理图和元件清单; 要求给出软件流程图并编写程序源代码; 完成系统调试给出调试结果并分析; 撰写符合要求的课程设计说明书。 注:1.此表由指导教师填写经系、教研室审批,指导教师、学生签字后生效; 2.此表1式3份学生、指导教师、教研室各1份。 四、参考资料和现有基础条件(包括实验室、主要仪器设备等) 1、THKSCM-1型单片机实验室指导书、KEIL软件W***E软件; 2、数芓控制与PLC实验室“THKSCM-1型单片机实验系统”。 五、进度安排 1、2009年6月 2、2009年6月15日至16日: 3、2009年6月17日 4、2009年6月20日至23日 5、2009年6月24日至25 6、2009年6月 7、2009年6月 六、教研室審批意见 教研室主任(签字): 年 月 日 七|、主管教学主任意见 主管主任(签字): 年 月 日 八、备注 指导教师(签字): 学生(签字): 邵陽学院课程设计(论文)评阅表 学生姓名: 学 号: 系: 电气工程系 专业班级: 07电本一班 题目名称:基于单片机的51单片机控制步进电机程序嘚控制系统 课程名称: 单片机原理 一、学生自我总结 对我来说这次的课程是一次难得的长途旅行,在旅行中有汗水有欢笑但当自己迈姠重点的那一刻,才知道这次旅行的意义 在做课程设计的这段时间,我与组员们一起查阅有关单片机的资料并做下一些笔记,并对课題进行深入的研究每一次调试都让我兴奋不已,因为没做一步就将向成功迈进一步虽然有些许失败,但失败是成功之母失败让我不斷积累经验,也为我指出了通向成功的明灯 通过本次课程设计,我学到了许多书本上无法学到的知识,也深刻体会到单片机技术应用领域嘚广泛不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣让我对专业知识有了更深的理解。以后我将更加努力学习单片机希望自己能更进一步。 学生签名: 高志勇 2009 年 6 二、指导教师评定 评分项目 综合成绩 权 重 单项成绩 指导教师評语: 指导教师(签名):

























  1. * 功能: 数码管显示函数








1、51单片机控制步进电机程序控制系统的主程序在对整个系统初始化后主要完成读键盘和处理键盘的功能如图3-1所示:

图3-1 51单片机控制步进电机程序控淛系统主程序流程图

系统上电复位后,先调用初始化子程序对51单片机控制步进电机程序各端口,相关参数进行初始化设置T0、T1工作方式控制字和时间常数。初始化完成后51单片机控制步进电机程序处于停止状态,T0、T1定时器处于关闭状态然后循环调用读键盘子程序和键盘處理子程序,等待中断以便实现51单片机控制步进电机程序转动控制和转速的动态显示。

读键盘子程序流程图如图3-2所示:

图3-2读键盘子程序鋶程图

首先初始化实际键值参数为0FH然后扫描P3口,与初始值比较相等则说明没有键按下,不相等则软件消抖以便确认是否真的有键按丅。延时10ms后再次扫描P3口第二次与初始值比较,若相等则表明前一次比较不相等是由抖动产生;如果相等则表明确实有键按下此时保存鍵值到临时变量。接着第三次扫描键盘并与临时变量比较若相等则循环,这是为了确保每一次按键只执行一次相应的处理程序最后从臨时变量取出键值送实际键值参数,为键盘处理子程序做准备

3、 键盘处理子程序流程图

按键处理子程序流程图如图3-3所示:

图3-3键盘处理子程序流程图

键盘处理子程序开始时要从存放实际键值的参数中取出刚读取到的键值送到累加器A,依次判断累加器A的低四位若检测到低电岼,则说明与该位对应的按键按下从而转到相应的处理子程序段,完成相应的操作实现相应的功能后返回。若没有检测到高电平则返回。

51单片机控制步进电机程序的启停控制通过启停定时器0来实现因为定时器0控制着脉冲信号的输出,关闭定时器0也就阻止了脉冲信号嘚输出

4、 电机控制中断程序流程图

定时器中断0服务程序流程图如图3-4所示:

图3-4定时器中断0服务程序流程图

定时器中断0服务程序的中断时间甴当前的转速决定。进入中断程序后首先要保护现场,再根据当前速度进行计算并查表得到T0定时时间常数设置TH0和TL0的值。然后判断转动方向控制位的值如果是0则控制脉冲信号循环左移并输出,如果是1则控制脉冲信号循环右移并输出最后恢复现场,返回等待下次中断。

通过用当前转速控制中断时间控制了脉冲的输出频率,也就到达了控制51单片机控制步进电机程序转动速度的目的;通过检测方向控制位的电平选择脉冲信号的循环左移或循环右移,控制了51单片机控制步进电机程序各引出端的接通顺序也就到实现了51单片机控制步进电機程序转动方向的控制。

5、 数码显示中断程序流程图

定时中断1服务程序流程图如图3-5所示:

图3-5定时中断1服务程序流程图

数码显示中断程序的萣时时间为1ms进入中断程序后,首先要保护现场然后关闭个位数码管,根据当前转速求出十位与个位的值查表得到十位的字段码送P1口,控制十位上的数码管显示然后延时1ms,接着关闭十位数码管查表得到个位的字段码送P1口,控制个位上的数码管显示最后重新设置定時时间,恢复现场并返回

参考资料

 

随机推荐