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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2385|回復: 2
打印 上一主題 下一主題
收起左側

單片機驅動光驅步進電機只響不動 附代碼

[復制鏈接]
跳轉到指定樓層
樓主
麻煩各位大蝦幫我看看光驅步進電機為什么只響不動,下面是完整的程序。

單片機源程序如下:
  1. #include<reg52.h>
  2. #define GPIO_MOTOR P1
  3. sbit K1=P3^2;
  4. sbit K2=P3^3;
  5. sbit K3=P3^4;
  6. sbit K4=P3^5;

  7. sbit a0=P1^0;                          
  8. sbit a1=P1^1;            
  9. sbit b0=P1^3;
  10. sbit b1=P1^4;

  11. void right(unsigned int y);
  12. void left(unsigned int x);
  13. void Delay(unsigned int t);
  14. unsigned char Direction,Speed;
  15. void motor();
  16. void main(void)
  17. {
  18.         unsigned char i;        
  19.    Speed=5;

  20.   while(1)
  21.         {
  22.                         
  23.           if(K1==0)               
  24.                 {
  25.                         Delay(50);        
  26.                         if(K1==0)
  27.                         {
  28.                                 Direction=1;
  29.                         }
  30.                         while((i<200)&&(K1==0))         
  31.                         {
  32.                                 Delay(10);
  33.                                 i++;
  34.                         }
  35.                         i=0;
  36.                 }
  37.                 if(K2==0)               
  38.                 {
  39.                         Delay(50);        
  40.                         if(K2==0)
  41.                         {
  42.                                 Direction=2;
  43.                         }
  44.                         while((i<200)&&(K2==0))         
  45.                         {
  46.                                 Delay(10);
  47.                                 i++;
  48.                         }
  49.                         i=0;
  50.                 }        
  51.                  if(K3==0)               
  52.                 {
  53.                         Delay(100);        
  54.                         if(K3==0)
  55.                         {
  56.                                 Speed--;
  57.                                 if(Speed<=3)
  58.                                 Speed=4;
  59.                         }
  60.                         while((i<200)&&(K2==0))         
  61.                         {
  62.                                 Delay(10);
  63.                                 i++;
  64.                         }
  65.                         i=0;
  66.                 }
  67.          
  68.                 if(K4==0)               
  69.                 {
  70.                         Delay(100);        
  71.                         if(K4==0)
  72.                         {
  73.                                 Speed++;
  74.                         }
  75.                         while((i<200)&&(K4==0))         
  76.                         {
  77.                                 Delay(10);
  78.                                 i++;
  79.                         }
  80.                         i=0;
  81.                 }        

  82.           motor();
  83.         }
  84. }
  85. void motor()
  86. {

  87. if(Direction==1)
  88.         {
  89.         a0=0;
  90.         a1=1;
  91.         b0=1;
  92.         b1=1;
  93.         Delay(Speed);
  94.         a0=1;
  95.         a1=0;
  96.         b0=1;
  97.         b1=1;
  98.         Delay(Speed);
  99.         a0=1;
  100.         a1=1;
  101.         b0=0;
  102.         b1=1;
  103.         Delay(Speed);
  104.         a0=1;
  105.         a1=1;
  106.         b0=1;
  107.         b1=0;
  108.         Delay(Speed);
  109.         }
  110. if(Direction==2)                  
  111.         {
  112.         a0=1;
  113.         a1=1;
  114.         b0=1;
  115.         b1=0;
  116.         Delay(Speed);
  117.         a0=1;
  118.         a1=1;
  119.         b0=0;
  120.         b1=1;
  121.         Delay(Speed);
  122.         a0=1;
  123.         a1=0;
  124.         b0=1;
  125.         b1=1;
  126.         Delay(Speed);
  127.         a0=0;
  128.         a1=1;
  129.         b0=1;
  130.         b1=1;
  131.         Delay(Speed);
  132.         }
  133. }                                                                                                                                                                           
  134. void Delay(unsigned int t)
  135. {                           
  136.         unsigned int k;
  137.         while(t--)
  138.         {
  139.                 for(k=0; k<70; k++)
  140.                 { }
  141.         }
  142. }
復制代碼




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:146204 發表于 2019-4-27 08:47 | 只看該作者
你在 a0=1;
        a1=1;
        b0=1;
        b1=0;。。。。各行加入延時。
回復

使用道具 舉報

板凳
ID:403369 發表于 2019-4-27 11:04 | 只看該作者
1.可能電流不足
2.電機接錯相
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99免费在线观看 | 尤物在线视频 | 欧美一级在线 | 亚洲精品国产第一综合99久久 | 久久网一区二区 | 在线观看免费国产 | 一级片视频免费观看 | 一区二区三区不卡视频 | 亚洲天堂久久新 | 特黄小视频 | 久久精品一二三影院 | 国产精品久久久久久52avav | 日韩精品久久久久 | 亚洲系列第一页 | 一级爱爱片 | 亚洲福利视频网 | 日韩视频观看 | 91精品中文字幕一区二区三区 | 天天干天天插天天 | h免费观看 | 欧美精品乱码久久久久久按摩 | 看片一区| 天天色图 | 久久久一区二区 | 天堂成人av | 欧美专区日韩专区 | 免费国产一区 | 国产精品18久久久久久久 | 成人午夜视频在线观看 | 国产成人免费视频网站高清观看视频 | 久久久久综合 | 欧美精品v | 国产一级在线 | 色婷婷av777 av免费网站在线 | 中文字幕亚洲一区 | 亚洲在线视频 | 成人黄色电影免费 | 久久久91| 一区二区三区在线电影 | 一本久久a久久精品亚洲 | 91九色婷婷 |