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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2363|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

尋跡小車程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:244394 發(fā)表于 2017-10-30 22:35 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
上周做的尋跡小車程序,上傳保存一下

單片機(jī)源程序如下:
  1. #include <reg52.h>  
  2.   
  3. sbit IN1 = P1^0;   
  4. sbit IN2 = P1^1;  
  5. sbit ENA = P1^2;  
  6. sbit IN3 = P1^3;  
  7. sbit IN4 = P1^4;  
  8. sbit ENB = P1^5;  
  9.   
  10. sbit left1 = P0^0;  
  11. sbit left2 = P0^1;  
  12. sbit right1 = P0^2;  
  13. sbit right2 = P0^3;  
  14.   
  15. unsigned char zkb1 = 0;  
  16. unsigned char zkb2 = 0;  
  17. unsigned char t = 0;  
  18.   
  19.   
  20. void init()  
  21. {  
  22.     EA = 1;  
  23.     TMOD |= 0x01;  
  24.     TH0 =(65536 - 100) / 256;  
  25.     TL0 = (65536 - 100)% 256;     
  26.     ET0 = 1;  
  27.     TR0 = 1;  
  28. }  
  29.   
  30. void timer0() interrupt 1  
  31. {  
  32.   
  33.     TH0 = (65536 - 100) / 256;  
  34.     TL0 = (65536 - 100) % 256;  
  35.          
  36.     if(t < zkb1)  
  37.     {  
  38. //      if(t % 2 == 0)  
  39. //      {  
  40. //          ENA = 1;  
  41. //      }  
  42. //      else   
  43. //      {  
  44. //          ENA = 0;  
  45. //      }  
  46.         ENA = 1;  
  47.     }  
  48.     else   
  49.     {  
  50.         ENA = 0;  
  51.     }  
  52.     if(t < zkb2)  
  53.     {  
  54. //      if(t%2 == 0)  
  55. //      {  
  56. //          ENB = 1;  
  57. //      }  
  58. //      else   
  59. //      {  
  60. //          ENB = 0;  
  61. //      }  
  62.         ENB =1;  
  63.     }  
  64.     else   
  65.     {  
  66.         ENB = 0;  
  67.     }  
  68.     ++t;  
  69.     if(t >= 50)  
  70.     {  
  71.         t = 0;  
  72.     }  
  73. }  
  74.   
  75. void turn_left1()  
  76. {  
  77.     zkb1 = 13;  
  78.     zkb2 = 0;   
  79. }  
  80.   
  81. void turn_left2()  
  82. {   
  83.     zkb1 = 13;  
  84.     zkb2 = 0;  
  85. }  
  86.   
  87. void turn_right1()  
  88. {  
  89.     zkb1 = 0;  
  90.     zkb2 = 13;  
  91. }  
  92.   
  93. void turn_right2()  
  94. {  
  95.     zkb1 = 0;  
  96.     zkb2 = 13;  
  97. }  
  98.   
  99. void qianjin()  
  100. {  
  101.     zkb1 = 8;  
  102.     zkb2 = 8;  
  103. }  
  104. void xunji()  
  105. {  
  106.     unsigned char flag;  
  107.     if((right2 == 0)&&(right1 == 0)&&(left1 == 0)&&(left2 == 0))  
  108.     {  
  109.         flag = 0;  
  110.     }
  111.           
  112.     if((right2 == 0)&&(right1 ==1)&&(left1 == 0)&&(left2 == 0))  
  113.     {  
  114.         flag = 1;  
  115.     }
  116.           
  117.     if((right2 == 0)&&(right1 == 0)&&(left1 == 1)&&(left2 == 0))  
  118.     {  
  119.         flag = 2;  
  120.     }
  121.           
  122.     if((right2 == 0)&&(right1 == 0)&&(left1 == 0)&&(left2 == 1))  
  123.     {  
  124.         flag = 3;  
  125.     }
  126.           
  127.     if((right2 == 1)&&(right1 == 0)&&(left1 == 0)&&(left2 == 0))  
  128.     {  
  129.         flag = 4;  
  130.     }
  131.          
  132.     switch(flag)  
  133.     {  
  134.         case 0:
  135.                         qianjin();
  136.                 break;  
  137.          
  138.         case 1:
  139.                         turn_right1();
  140.                 break;  
  141.          
  142.         case 2:
  143.                         turn_left1();
  144.                 break;  
  145.          
  146.         case 3:
  147.                         turn_left2();
  148.                 break;  
  149.          
  150.         case 4:
  151.                         turn_right2();
  152.                 break;  
  153.          
  154.         default:
  155.                         qianjin();
  156.                 break;  
  157.     }  
  158. }  
  159.   
  160. void main()  
  161. {  
  162.     init();  
  163. //  zkb1 = 40;  
  164. //  zkb2 = 30;  
  165.     IN1 = 0;  
  166.     IN2 = 1;  
  167.     IN3 = 0;  
  168.     IN4 = 1;  
  169.     while(1)  
  170.     {               
  171.                 xunji();           
  172.     }  
  173. }
復(fù)制代碼

所有資料51hei提供下載:
xunji.zip (28.44 KB, 下載次數(shù): 21)


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

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人高清视频在线观看 | 国产 日韩 欧美 中文 在线播放 | 国产精品国产精品国产专区不片 | 日韩欧美理论片 | 亚洲综合电影 | 性福视频在线观看 | 日韩影音 | 欧美一区二区三区在线播放 | 毛片综合| 91免费福利在线 | 极品久久| 成人一区二区三区在线 | 欧美成人精品激情在线观看 | 国产精品不卡视频 | 国产日韩一区二区三区 | 免费看一区二区三区 | 精品一区精品二区 | 在线一区二区三区 | 日韩电影a | 在线国产一区 | 性做久久久久久免费观看欧美 | 国产精品久久久久久久久久不蜜臀 | 亚洲天堂免费在线 | 高清黄色网址 | 亚洲精品乱码久久久久久按摩观 | 国产精品久久久久久 | 国产农村妇女毛片精品久久麻豆 | 黑人巨大精品欧美一区二区一视频 | 国产精品免费在线 | 亚洲欧美视频一区 | 国产一区二区精品在线 | 国产精品视频导航 | 操人视频在线观看 | 91在线网站 | 日韩在线视频免费观看 | 国产欧美在线观看 | 欧美精品一区二区三区一线天视频 | 中文字幕在线免费观看 | 亚洲天堂一区二区 | 日韩欧美精品在线 | 伊色综合久久之综合久久 |