STM32驱动步进电机,测出的IO口的电平都是12V,但是电机一点反应都没有,程序如下,原理图如图所示,BC1,BC2,BC3,BC4分别于单片机的四个IO口相连/*************电机正转*********************************************/void GoBack(uint16_t step,uint16_t speed)
{
uint16_t i;
for(i=0;i<step;i++)
{
switch(flag_step)
{
case 0:
A_0;B_1;C_1;D_1;
delaym(speed);
break;
case 1:
A_0;B_1;C_1;D_0;
delaym(speed);
break;
case 2:
A_1;B_1;C_1;D_0;
delaym(speed);
break;
case 3:
A_1;B_1;C_0;D_0;
delaym(speed);
break;
case 4:
A_1;B_1;C_0;D_1;
delaym(speed);
break;
case 5:
A_1;B_0;C_0;D_1;
delaym(speed);
break;
case 6:
A_1;B_0;C_1;D_1;
delaym(speed);
break;
case 7:
A_0;B_0;C_1;D_1;
delaym(speed);
}
flag_step++;
if(flag_step==8)
flag_step=0;
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
我不管你,还有谁管你,死鬼.
一周热门 更多>