久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 51單片機按鍵控制步進電機先順時針轉動90度,定住2S,再逆時針轉90度 [打印本頁]

作者: 234534    時間: 2018-2-11 11:19
標題: 51單片機按鍵控制步進電機先順時針轉動90度,定住2S,再逆時針轉90度
想通過按一個按鍵,使步進電機先順時針轉動90度,在定住2S,再逆時針轉動90度。代碼方面應該怎么編?

作者: TAOjiadashao    時間: 2018-2-11 14:00
你說的應該是舵機吧,應該叫伺服電機吧?
作者: angmall    時間: 2018-2-11 14:25
  1. /*-----------------------------------------------
  2.   名稱:步進電機
  3.   內容:本程序用于測試4相步進電機常規驅動
  4.         使用1-2相勵磁
  5.         1-2相激勵功率增倍,步進角度減半,抖動減少
  6.         順序如下 a-ab-b-bc-c-cd-d-da   又稱4相8拍
  7. ------------------------------------------------*/

  8. #include <reg52.h>



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


  13. #define Coil_AB1 {A1=1;B1=1;C1=0;D1=0;}//AB相通電,其他相斷電
  14. #define Coil_BC1 {A1=0;B1=1;C1=1;D1=0;}//BC相通電,其他相斷電
  15. #define Coil_CD1 {A1=0;B1=0;C1=1;D1=1;}//CD相通電,其他相斷電
  16. #define Coil_DA1 {A1=1;B1=0;C1=0;D1=1;}//D相通電,其他相斷電
  17. #define Coil_A1 {A1=1;B1=0;C1=0;D1=0;}//A相通電,其他相斷電
  18. #define Coil_B1 {A1=0;B1=1;C1=0;D1=0;}//B相通電,其他相斷電
  19. #define Coil_C1 {A1=0;B1=0;C1=1;D1=0;}//C相通電,其他相斷電
  20. #define Coil_D1 {A1=0;B1=0;C1=0;D1=1;}//D相通電,其他相斷電
  21. #define Coil_OFF {A1=0;B1=0;C1=0;D1=0;}//全部斷電

  22. unsigned char Speed;
  23. bit Flag;
  24. /*------------------------------------------------
  25. uS延時函數,含有輸入參數 unsigned char t,無返回值
  26. unsigned char 是定義無符號字符變量,其值的范圍是
  27. 0~255 這里使用晶振12M,精確延時請使用匯編,大致延時
  28. 長度如下 T=tx2+5 uS
  29. ------------------------------------------------*/
  30. void DelayUs2x(unsigned char t)
  31. {   
  32.   while(--t);
  33. }
  34. /*------------------------------------------------
  35. mS延時函數,含有輸入參數 unsigned char t,無返回值
  36. unsigned char 是定義無符號字符變量,其值的范圍是
  37. 0~255 這里使用晶振12M,精確延時請使用匯編
  38. ------------------------------------------------*/
  39. void DelayMs(unsigned char t)
  40. {
  41.   
  42.   while(t--)
  43.   {
  44.     //大致延時1mS
  45.     DelayUs2x(245);
  46.     DelayUs2x(245);
  47.   }
  48. }
  49. /*------------------------------------------------
  50.                     主函數
  51. ------------------------------------------------*/
  52. main()
  53. {
  54.   unsigned int i=512;//旋轉一周時間

  55.   EA=1;          //全局中斷開
  56.   EX0=1;         //外部中斷0開
  57.   IT0=1;         //1表示邊沿觸發

  58.   Speed=10;
  59.   while(1){
  60.     Coil_OFF
  61.     while((i--)&&Flag)  //正向
  62.     {  Coil_A1      
  63.       DelayMs(Speed);
  64.       Coil_AB1                //遇到Coil_AB1  用{A1=1;B1=1;C1=0;D1=0;}代替
  65.       DelayMs(Speed);         //改變這個參數可以調整電機轉速 ,
  66.       //數字越小,轉速越大,力矩越小
  67.       Coil_B1      
  68.       DelayMs(Speed);
  69.       Coil_BC1
  70.       DelayMs(Speed);
  71.       Coil_C1      
  72.       DelayMs(Speed);
  73.       Coil_CD1
  74.       DelayMs(Speed);
  75.       Coil_D1      
  76.       DelayMs(Speed);
  77.       Coil_DA1
  78.       DelayMs(Speed);
  79.     }
  80.     Coil_OFF
  81.     i=512;
  82.     while((i--)&&(!Flag))//反向
  83.     {  
  84.       Coil_A1      
  85.       DelayMs(Speed);
  86.       Coil_DA1                //遇到Coil_AB1  用{A1=1;B1=1;C1=0;D1=0;}代替
  87.       DelayMs(Speed);         //改變這個參數可以調整電機轉速 ,
  88.       //數字越小,轉速越大,力矩越小
  89.       Coil_D1      
  90.       DelayMs(Speed);
  91.       Coil_CD1
  92.       DelayMs(Speed);
  93.       Coil_C1      
  94.       DelayMs(Speed);
  95.       Coil_BC1
  96.       DelayMs(Speed);
  97.       Coil_B1      
  98.       DelayMs(Speed);
  99.       Coil_AB1
  100.       DelayMs(Speed);
  101.     }
  102.   }
  103. }

  104. /*------------------------------------------------
  105.                 外部中斷程序
  106. ------------------------------------------------*/
  107. void ISR_INT0(void) interrupt 0
  108. {

  109.   if(!INT0)
  110.   {
  111.     DelayMs(10);//在此處可以添加去抖動程序,防止按鍵抖動造成錯誤
  112.     if(!INT0)
  113.     //while(!INT1);//等待按鍵釋放
  114.     {
  115.       Flag=!Flag;   
  116.     }
  117.   }
  118. }
復制代碼





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久精品av麻豆的观看方式 | 韩日在线 | 99精品欧美一区二区三区综合在线 | 免费在线精品视频 | 亚洲欧美一区二区三区在线 | 欧美成人精品一区二区男人看 | 99爱视频| 色综合成人网 | 久久一区二区视频 | 久久久国产精品 | 欧美一级大片免费看 | 男女午夜激情视频 | 久色网 | 亚洲成av人片在线观看无码 | 国产wwwcom| 亚洲一区二区国产 | 欧美日韩亚洲视频 | 365夜爽爽欧美性午夜免费视频 | 日日夜夜精品视频 | 午夜视频在线播放 | 欧美成视频在线观看 | 国产一区二区不卡 | 最近最新中文字幕 | 午夜免费网站 | www.久| 视频一区二区中文字幕日韩 | 亚洲www. | 黄色毛片视频 | 成人av色| 日韩精品视频网 | 国产成人在线一区二区 | 日韩亚洲视频 | 亚洲一区二区综合 | 亚洲视频国产 | 中午字幕在线观看 | 免费黄色片在线观看 | 大乳boobs巨大吃奶挤奶 | 国产精品爱久久久久久久 | 色偷偷人人澡人人爽人人模 | 精品久久久久久国产 | 91精品国产91久久久久游泳池 |