天天看點

步進電機

/*-----------------------------------------------

  名稱:步進電機

  日期:2009.5

  修改:無

  内容:1、本程式用于測試4相步進電機正常驅動 

        2、需要用跳帽或者杜邦線把信号輸出端和對應的步進電機信号輸入端連接配接起來

        3、速度不可以調節的過快,不然就沒有力矩轉動了

        4、電機在反轉

 ------------------------------------------------*/

#include <reg52.h>

unsigned char code f_rotation[4]={0x02,0x04,0x08,0x10}; //正轉表格,換算成二進制 0000 0010,0000 0100,0000 1000,0001 0000

unsigned char code b_rotation[4]={0x10,0x08,0x04,0x02}; //反轉表格,換算成二進制 0001 0000,0000 1000,0000 0100,0000 0010

/******************************************************************/

/*                    延時函數                                    */

void delay(unsigned int i)//延時

{

 while(--i);

}

/*                   主函數                                       */

main()

 unsigned char i;

 unsigned int j=512;

 while(j--)

 {

  for(i=0;i<4;i++)      //4相

     {

     p1=f_rotation[i];  //輸出對應的相 可以自行換成反轉表格

     delay(1000);        //改變這個參數可以調整電機轉速 ,數字越小,轉速越大

  }

  delay(100000);

  j=512;

     p1=b_rotation[i];  //輸出對應的相 可以自行換成反轉表格