先上仿真图
然后程序是这样的
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit IN0=P1^0;// A
sbit IN1=P1^1;// /A
sbit IN2=P1^2;// B
sbit IN3=P1^3;// /B
uchar ZhengZhuan[4]={0x03,0x06,0x0C,0x09};
uchar FanZhuan[4]={0x03,0x09,0x0C,0x06};
void delay(int time)
{
int i,j;
for(j=0; j <= time; j++)
for(i =0 ; i <= 120; i++);
}
void main(){
int m=0;
while(1){
P1=ZhengZhuan[m];
delay(2);
m++;
if(m==4) m=0;
}
}
按4拍的方式驱动,然后在程序中m==1,m==2,m==3时测试了一下,发现每次走的都是90°,在这里请教下如何走一个步数,即用程序控制电机走1.8°。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>