微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 51单片机实现步进电机加减速的例子-加注释

51单片机实现步进电机加减速的例子-加注释

时间:11-22 来源:互联网 点击:

void motor_ffw()
{
unsigned char i;

for (i=0; i<8; i++) //一个周期转30度
{
P1 = FFW[i]&0x1f; //取数据
//FFW为步进码
delay(); //调节转速
}
}

void delay()
{
unsigned int k,t;
t=rate;//转速定义
while(t--)
{
for(k=0; k<150; k++)
{ }
}
}
void motor_turn()
{
unsigned char x;
rate=0x0a;
x=0x40;
do
{
mote_ffw();
rate--;//每进一步时间越来越短
}while(rate!=0x01);//处于加速过程
do
{
motor_ffw();
x--;//每减一,进一步,匀速过程
//此处同样可以设延时函数
} while(x!=0x01);
do
{
motor_ffw();
rate++; //每进一步时间越来越长

} while(rate!=0x0a);//处于减速过程
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top