標題: 雙四拍控制步進電機轉動 程序 [打印本頁]

作者: yurui1102    時間: 2016-12-5 14:13
標題: 雙四拍控制步進電機轉動 程序
步進電機程序:
步進電機-程序.doc (35 KB, 下載次數: 7)

  1. /********************************************************************
  2. //                        主處理器:AT89S52處理器
  3. //                        板載晶體:11.0592MHz
  4. //                        程序功能:雙四拍控制步進電機轉動
  5. //******************************************************************/
  6. #include <reg52.h>

  7. sbit        P_D        = P1^0;                                                //輸出信號
  8. sbit        P_C        = P1^1;                                                //輸出信號
  9. sbit        P_B        = P1^2;                                                //輸出信號
  10. sbit        P_A        = P1^3;                                                //輸入信號

  11. unsigned char RevoloSpd=0;
  12. unsigned char TimIntNum=0;

  13. void  T0Delay50ms(void)
  14. {
  15.         TH0        =0x4C;                                                        // 1ms 為  921個定時周期
  16.         TL0        =0x1D;                                                        // 定時50ms
  17.         TR0 =1;
  18.         while(TF0==0);
  19.         TF0=0;
  20.         TR0 =0;
  21. }
  22. void  delay(unsigned long int z)
  23. {
  24.         while(z--);
  25. }
  26. //-----------------------   主程序開始   -----------------------------------
  27. void main()  
  28. {
  29.         unsigned char j;
  30.         TMOD=0x01;                                                    // 12/11.0592=1.08507us

  31.         for(j=0;j<3;j++)                                          //進入主程序燈閃3次
  32.         {                                                                                          
  33.                 P0        =0x00;
  34.                 delay(0x2000);
  35.                 P0        =0xFF;
  36.                 delay(0x2000);
  37.         }

  38.         while(1)
  39.         {
  40.                 P1        =0x03;
  41.         T0Delay50ms();
  42.                 P1        =0x06;
  43.         T0Delay50ms();
  44.                 P1        =0x0C;
  45.         T0Delay50ms();
  46.                 P1        =0x09;
  47.         T0Delay50ms();                       
  48.         }
  49. }
  50. //-------------------------   < 結束>   -------------------------------------

復制代碼







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