at892051控制步进电机程序.txt
来自「该文件是关于使用AT892051产生pwm控制的电动机的资料。」· 文本 代码 · 共 94 行
TXT
94 行
# include<AT892051.H>
# include<intrins.h>
# include<absacc.h>
sbit MA1=p1^4;
sbit MA2=p1^5;
sbit MA1=p1^2;
sbit MA2=p1^3;
//*************************
//********延时n*10ms
//*************************
void delay1ms(unsigned char time)
{ unsigned char i;
unsigned int j;
for(i=0;i<time;i++)
{ for(j=0;j<0x39;j++)
{ _nop_();
_nop_();
_nop_();
}
}
}
//第一相控制
void motor1(unsigned char flag)
{ switch(flag)
{ case 1: //正转
{ MA1=0;
MA2=1;
break;
}
case 2: //反转
{ MA1=1;
MA2=0;
break;
}
case 3: //停止
{
MA1=0;
MA2=0;
break;
}
case 4: //制动
{ MA1=1;
MA2=1;
break;
}
default:
break;
}
}
//第二相控制
void motor2(unsigned char flag)
{ switch(flag)
{ case 1: //正转
{ MA1=0;
MA2=1;
break;
}
case 2: //反转
{ MA1=1;
MA2=0;
break;
}
case 3: //停止
{ MA1=0;
MA2=0;
break;
}
case 4: //制动
{ MA1=1;
MA2=1;
break;
}
default:
break;
}
}
void main ( )
{
unsigned char k;
unsigned char idata stepa[8]={4,2,2,2,4,1,1,1};
unsigned char idata stepb[8]={2,2,4,1,1,1,4,2};
for(k=0;k<8;k++)
{ motor1(stepa[k];
motor2(stepb[k];
delay1ms;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?