STM32驱动步进电机

2019-07-25 11:09发布

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;
          }
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。