亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: 我的單片機(jī)按鍵控制電機(jī)轉(zhuǎn)動(dòng)時(shí)間轉(zhuǎn)向的源碼(有注釋?zhuān)?[打印本頁(yè)]

作者: 且聽(tīng)風(fēng)yin    時(shí)間: 2018-4-30 13:22
標(biāo)題: 我的單片機(jī)按鍵控制電機(jī)轉(zhuǎn)動(dòng)時(shí)間轉(zhuǎn)向的源碼(有注釋?zhuān)?br />這是我們做機(jī)械創(chuàng)新比賽時(shí)編寫(xiě)的按鍵電機(jī)控制程序
簡(jiǎn)單易懂,按不同的按鍵電機(jī)會(huì)正轉(zhuǎn)或反轉(zhuǎn),且時(shí)間不同
可以直接帶入自己的程序進(jìn)行調(diào)試

單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. typedef unsigned int u16;
  3. typedef unsigned char u8;

  4. sbit k1=P3^0;       
  5. sbit k2=P3^1;
  6. sbit k3=P3^2;
  7. sbit k4=P3^3;
  8. sbit k5=P3^4;


  9. sbit ENA=P2^0;
  10. sbit IN1=P2^1;
  11. sbit IN2=P2^2;
  12. sbit IN3=P2^3;
  13. sbit IN4=P2^4;
  14. sbit ENB=P2^5;

  15. void delayed(unsigned int x); //延時(shí)xms
  16. void revolve1();//車(chē)位轉(zhuǎn)動(dòng)60
  17. void revolve11();//反轉(zhuǎn)60
  18. void revolve2();
  19. void revolve22();
  20. void revolve3();
  21. void clockwise();//順時(shí)針
  22. void delayed (unsigned int x)//延時(shí)xms
  23. {
  24.         unsigned int i,j;
  25.         for(i=x; i>0; i--)
  26.   {
  27.       for(j=113;j>0;j--);
  28.         }
  29. }

  30. void revolve1()//正轉(zhuǎn)60度
  31. {
  32.         ENB=1;
  33.         IN3=0;
  34.         IN4=1;
  35. }
  36. void revolve11()//反轉(zhuǎn)60度
  37. {
  38.         ENB=1;
  39.         IN3=1;
  40.         IN4=0;
  41. }       
  42. void revolve2()//正轉(zhuǎn)120度
  43. {
  44.         ENB=1;
  45.         IN3=0;
  46.         IN4=1;
  47. }
  48. void revolve22()//反轉(zhuǎn)120度
  49. {
  50.         ENB=1;
  51.         IN3=1;
  52.         IN4=0;
  53. }
  54. void revolve3()//正轉(zhuǎn)180度
  55. {
  56.         ENB=1;
  57.         IN3=0;
  58.         IN4=1;
  59. }
  60. void main()
  61. {

  62.         int i;
  63.         if(k1==0)                  //檢測(cè)按鍵K1是否按下
  64.         {       
  65.                 delayed(10);   //消除抖動(dòng) 一般大約10ms
  66.                 if(k1==0)         //再次判斷按鍵是否按下
  67.                 {
  68.                         revolve1();
  69.                         for(i=6;i>0;i--)   //延時(shí)5s
  70.                           {
  71.                       delayed(1000);
  72.               }
  73.                                 IN3=0;
  74.                                 IN4=0;
  75.                                 while(1);//
  76.                 }
  77.         }       
  78.   if(k2==0)                  //檢測(cè)按鍵K2是否按下
  79.         {       
  80.                 delayed(10);   //消除抖動(dòng) 一般大約10ms
  81.                 if(k2==0)         //再次判斷按鍵是否按下
  82.                 {
  83.                         revolve2();
  84.                         for(i=12;i>0;i--)   //延時(shí)10s
  85.                           {
  86.                       delayed(1000);
  87.               }
  88.             IN3=0;
  89.             IN4=0;
  90.             while(1);
  91.                 }
  92.         }       
  93.           if(k3==0)                  //檢測(cè)按鍵K3是否按下
  94.         {       
  95.                 delayed(10);   //消除抖動(dòng) 一般大約10ms
  96.                 if(k3==0)         //再次判斷按鍵是否按下
  97.                 {
  98.                         revolve11();
  99.                         for(i=6;i>0;i--)   //延時(shí)5s
  100.                           {
  101.                       delayed(1000);
  102.               }
  103.             IN3=0;
  104.             IN4=0;
  105.             while(1);
  106.                 }
  107.         }       
  108.         if(k4==0)                  //檢測(cè)按鍵K4是否按下
  109.         {       
  110.                 delayed(10);   //消除抖動(dòng) 一般大約10ms
  111.                 if(k4==0)         //再次判斷按鍵是否按下
  112.                 {
  113.                         revolve22();
  114.                         for(i=12;i>0;i--)   //延時(shí)10s
  115.                           {
  116.                       delayed(1000);
  117.               }
  118.             IN3=0;
  119.             IN4=0;
  120.             while(1);
  121.                 }
  122.         }       
  123.         if(k5==0)                  //檢測(cè)按鍵K5是否按下
  124.         {       
  125.                 delayed(10);   //消除抖動(dòng) 一般大約10ms
  126.                 if(k5==0)         //再次判斷按鍵是否按下
  127.                 {
  128.                         revolve3();
  129.                         for(i=18;i>0;i--)   //延時(shí)15s
  130.                           {
  131.                       delayed(1000);
  132.               }
  133.             IN3=0;
  134.             IN4=0;
  135.             while(1);
  136.                 }
  137.         }
  138. }
復(fù)制代碼

所有資料51hei提供下載:
KEY.zip (761 Bytes, 下載次數(shù): 20)



作者: zqy181818    時(shí)間: 2018-4-30 18:10
可以分享有電路圖嗎。我想學(xué)一下。
作者: jccccccccc    時(shí)間: 2019-1-21 12:59
有沒(méi)有原理圖啊,想學(xué)一下





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