全球旧事资料 分类
向线盒一根启动信号线共需要4根输入线。系统的输出线与步进电机的绕组数有关。这里选的步进电机,该电机共有四相绕组,工作电压为5V,可以个单片机共用一个电源。步进电机的四相绕组用P1口的P10P13控制,由于P1口驱动能力不够,因而用一片2003增加驱动能力。用P0口控制第一数码管用于显示正反转,用P2口控制第二个数码管用于显示转速等级。数码管采用共阳的。
通过分析可以看出,实现系统功能可以采用多种方法,由于随时有可能输入加速、加速信号和方向信号,因而采用中断方式效率最高,这样总共要完成4个部分的工作才能满足课题要求,即主程序部分、定时器中断部分、外部中断0和外部中断1部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。下面分析主程序与定时器中断程序及外部中断程序。
19
f42主程序设计
当给系统供电以后,通过单片机复位电路对系统进行上电复位系统经过初始化以后,便开始执行按键查询等待相应的操作,当有按键按下的时候程序便调用并执行相应的子程序,其具体的主流程图41如下所示:
开始
系统初始化
按键判断
N
Y
相应按键子程序
相应显示子程序
结束
系统初始化流程图:
图41主程序
对相应的系统参数进行初始化,包括系统上电默认运行参数设定,包括两相四拍的工作方式,初始速度档位是30转分,系统中断设定,定时器设定,载入定时器初值和默认的工作参数等,具体流程图如图42所示。
20
f开始
定时器中断允许
定时器0工作方式2载入定时器初值
定时器0和定时器1开启
载入默认工作参数
各个端口初始化
按键子程序:
图42系统初始化流程图
1、延时子程序:在本延时子程序当中每调用一次延时子程序延时时间是1毫秒。
2、按键响应子函数:在本设计当中按键的一端接地,另一端接单片机的对应端口,所以当按键按下,既是将单片机对应端口电平拉低。所以在编程的时候判断按键按下是低电平有效。图43画出的是电机增速和减速的子程序框图。
21
f程序入口
程序入口
判断增速按键按下
N
Y
去抖动
N判断减速按键按下
Y
去抖动
再次判断
N
Y
Y
判断是否是最高速
N
速度档位加1
结束
N
再次判断
YY
判断是否是最低速
N
速度档位减1
结束
图43增速减速子程序
C语言程序如下:i
cludereg52hi
cludei
tri
shdefi
eucharu
sig
edchardefi
er
好听全球资料 返回顶部