標題: C51步進電機轉動原理 [打印本頁]

作者: yourfather    時間: 2017-5-7 09:05
標題: C51步進電機轉動原理
C51步進電機轉動原理


  1. /*-----------------------------------------------
  2.   名稱:步進電機
  3.   修改:無
  4.   內(nèi)容:本程序用于測試4相步進電機常規(guī)驅動 使用1相勵磁

  5. ------------------------------------------------*/

  6. #include <reg52.h>



  7. sbit A1=P1^0; //定義步進電機連接端口
  8. sbit B1=P1^1;
  9. sbit C1=P1^2;
  10. sbit D1=P1^3;


  11. #define Coil_A1 {A1=1;B1=0;C1=0;D1=0;}//A相通電,其他相斷電
  12. #define Coil_B1 {A1=0;B1=1;C1=0;D1=0;}//B相通電,其他相斷電
  13. #define Coil_C1 {A1=0;B1=0;C1=1;D1=0;}//C相通電,其他相斷電
  14. #define Coil_D1 {A1=0;B1=0;C1=0;D1=1;}//D相通電,其他相斷電
  15. #define Coil_OFF {A1=0;B1=0;C1=0;D1=0;}//全部斷電

  16. unsigned char Speed;
  17. /*------------------------------------------------
  18. uS延時函數(shù),含有輸入?yún)?shù) unsigned char t,無返回值
  19. unsigned char 是定義無符號字符變量,其值的范圍是
  20. 0~255 這里使用晶振12M,精確延時請使用匯編,大致延時
  21. 長度如下 T=tx2+5 uS
  22. ------------------------------------------------*/
  23. void DelayUs2x(unsigned char t)
  24. {   
  25. while(--t);
  26. }
  27. /*------------------------------------------------
  28. mS延時函數(shù),含有輸入?yún)?shù) unsigned char t,無返回值
  29. unsigned char 是定義無符號字符變量,其值的范圍是
  30. 0~255 這里使用晶振12M,精確延時請使用匯編
  31. ------------------------------------------------*/
  32. void DelayMs(unsigned char t)
  33. {
  34.      
  35. while(t--)
  36. {
  37.      //大致延時1mS
  38.      DelayUs2x(245);
  39.          DelayUs2x(245);
  40. }
  41. }
  42. /*------------------------------------------------
  43.                     主函數(shù)
  44. ------------------------------------------------*/
  45. main()
  46. {
  47. //unsigned int i=64*16; //轉2周停止
  48. Speed=5; //調(diào)整速度
  49. while(1)  
  50.   {         
  51.      Coil_A1                 //遇到Coil_A1  用{A1=1;B1=0;C1=0;D1=0;}代替
  52.      DelayMs(Speed);         //改變這個參數(shù)可以調(diào)整電機轉速 ,
  53.                                  //數(shù)字越小,轉速越大,力矩越小
  54.      Coil_B1
  55.      DelayMs(Speed);
  56.      Coil_C1
  57.      DelayMs(Speed);
  58.      Coil_D1
  59.      DelayMs(Speed);
  60.   }
  61. }
復制代碼

下載:
82-步進電機轉動原理.zip (10.35 KB, 下載次數(shù): 25)






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1