当前位置:首页 > 基于单片机的步进电机电路控制设计
淮阴工学院毕业设计说明书(论文)
4 系统软件设计
4.1 系统主程序
第 17 页 共 33 页
系统分为电机正反转、电机加速与电机减速状态显示几部分组成,其主程序框图如图4-1所示。
开始 显示状态 调按键子程序 调用正反转子程序 调按键子程序 停止 调用加减速子程序 图4-1 主程序框图
4.2 正反转部分
查键程序用于判断P1.2口与P1.3口的值,当p1.2口为0时,电机正转,当p1.2口为1时,继续判断p1.3口的值,p1.3口为0时,电机反转。如图4-2所示。
淮阴工学院毕业设计说明书(论文)
P1.2是否为0 调按键子程序 第 18 页 共 33 页
N N Y P1.3是否为0 Y 电机反转 图4-2查键部分流程图 模块代码
if(P1_2==0) {
P3_6=1; //正转 P1_0=1;P1_1=1;P1_3=1; printXY(13,0,\
}
if(P1_3==0) {
P3_6=0; //反转 P1_0=1;P1_1=1;P1_2=1;
printXY(13,0,\ } }
电机正转
淮阴工学院毕业设计说明书(论文)
4.3 加速部分
第 19 页 共 33 页
当电机正转或反转的时候,按下加速键,调用加速子程序,使电机每转动一步的延时时间变短,从而实现电机的加速,设初始速度为R1.流程图如图4-3所示。
Y R1 ) +1 )→ R1 N ((
P1.0=0 开始 正反转子程序 图4-3加速部分流程图
模块代码[11]
if(P1_1==0)
{ if(speed<=200) speed=speed+10; P1_0=1;P1_2=1;P1_3=1; disspeed(); }
//sub
4.4减速部分
电机正转或反转的时候,按下减速键,通过改变电机每转动一步的延时时间,使时间变长,从而实现电机减速,设初始速度为R1.流程图如4-4所示。
淮阴工学院毕业设计说明书(论文)
Y R1 ) -1 )→ R1 N ((
P1.1=0 开始 第 20 页 共 33 页
正反转子程序 图4-4 减速部分流程图
模块代码[11]
if(P1_0==0)
{ if(speed>=10)//add speed=speed-4;
P1_1=1;P1_2=1;P1_3=1; disspeed();
5系统的仿真与调试
本设计采用单片机AT89S51做为控制器,通过编译软件KEIL C51对源程序进行编译以生成HEX,并与仿真软件proteus联调,让单片机程序控制协调各个功能模块工作。
5.1 开发软件简介
本设计在设计过程中主要用到仿真软件PROTEUS和C51编译器keil这两个开发软件,其中仿真软件Proteus的能在不搭建真实的硬件电路板只用Proteus就可以模拟出来了,而keil C51能很好的编译单片机程序,并且在keil里面方便的调试单片机的程序。并且仿真软件Proteus和和C51编译器keil这两个开发软件的联调,把Keil编好的程序下载到Proteus搭建好电路的项目中.运行Proteus就可以看到运行
共分享92篇相关文档