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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

四個紅外傳感器四輪循跡小車源程序

  [復制鏈接]
跳轉到指定樓層
樓主
四個紅外傳感器的小車循跡源碼修改版,更穩定,感興趣的同學可以拿去參考一下,每輛車都不一樣,速度可能要調一下。


單片機源程序如下:
  1. /*從小車后面觀察,從左向右的紅外檢測分別為DD1,DD2,DD3,DD4
  2.   DD1---P0^3
  3.   DD2---P0^2
  4.   DD3---P0^1
  5.   DD4---P0^0
  6. */

  7. #include<reg51.h>
  8. #define uchar unsigned char
  9. #define uint unsigned int

  10. extern void Motor_Left(bit ReverOrCoro, uchar DutyCycle); //左邊電機控制函數
  11. extern void Motor_Right(bit ReverOrCoro, uchar DutyCycle); //右邊電機控制函數
  12. void Timer0Config(); //        配置定時器0

  13. void zhizou();
  14. void dazhuan1();
  15. void dazhuan2();
  16. void weitiao1();
  17. void weitiao2();

  18. sbit ENA = P1^5; //定義電機使能端                                   
  19. sbit ENB = P1^0;
  20. uchar a;
  21. uchar Infrared; //檢測P0低四位的值

  22. void main()
  23. {
  24.         Timer0Config();
  25.         ENA = 1; ENB = 1;
  26.         Infrared = P0 & 0x0F; //取出P0口低四位
  27.         while(1)
  28.         {               
  29.                 switch(Infrared)
  30.                 {
  31.                         case 0x00:                                                   
  32.                                               zhizou(); break; //未檢測到黑線,直行
  33.                         case 0x08:
  34.                                        dazhuan1(); break; //左邊第一個檢測到黑線,左大轉
  35.                         case 0x04:
  36.                                        weitiao1(); break; //左邊第二個檢測到黑線,左微調
  37.                         case 0x02:
  38.                                        weitiao2(); break; //右邊第一個檢測到黑線,右微調
  39.                         case 0x01:
  40.                                        dazhuan2(); break; //右邊第二個檢測到黑線,右大轉
  41.                         case 0x0C:
  42.                                                          zhizou(); break; //左邊兩個同時檢測到黑線,直行
  43.                         case 0x0E:
  44.                                                          zhizou(); break; //左邊三個同時檢測到黑線,直行
  45.                         case 0x03:
  46.                                                          zhizou(); break; //右邊兩個同時檢測到黑線,直行
  47.                         case 0x07:
  48.                                                          zhizou(); break; //右邊三個同時檢測到黑線,直行
  49.                         case 0x0f:
  50.                                                          zhizou(); break; //全部檢測到,直行
  51.                         case 0x06:
  52.                                                          zhizou(); break; //中間兩個檢測到,直行
  53.                         case 0x09:
  54.                                                          zhizou(); break; //旁邊兩個檢測到,直行
  55.                         case 0x0A:
  56.                                                          weitiao1(); break; //左一右一檢測到,左微調
  57.                         case 0x05:
  58.                                                          weitiao2(); break; //左二右二檢測到,右微調
  59.                         case 0x0b:
  60.                                                          zhizou(); break; //左二未檢測到,直行
  61.                         case 0x0d:
  62.                                                          zhizou(); break; //右一未檢測到,直行
  63.                         default:   break;
  64.                 }
  65.         }
  66. }

  67. void Timer0Config()
  68. {
  69.         TMOD &= 0xF0;
  70.         TMOD |= 0x01;
  71.         TH0 = 0xFF;
  72.         TL0 = 0x7E;
  73.         EA = 1;
  74.         ET0 = 1;
  75.         TR0 = 1;
  76. }

  77. void zhizou()
  78. {
  79.          Motor_Left(1, 100), Motor_Right(1, 100);
  80.          Infrared = P0 & 0x0F;
  81. }

  82. void dazhuan1()
  83. {
  84.         a=1;
  85.         
  86.         while(a)
  87.         {
  88.                 Motor_Left(0, 80); Motor_Right(1, 80);
  89.                 Infrared = P0 & 0x0F;
  90.                 if(Infrared==0x04)
  91.                 {
  92.                                 Motor_Left(1, 100); Motor_Right(0, 100); break;
  93.                 }
  94.                 else if(Infrared==0x02)
  95.                 {
  96.                                 Motor_Left(1, 100); Motor_Right(0, 100); break;
  97.                 }
  98.         }
  99.         Infrared = P0 & 0x0F;
  100. }

  101. void dazhuan2()
  102. {
  103.         a=1;
  104.         
  105.         while(a)
  106.         {
  107.                 Motor_Left(1, 80); Motor_Right(0, 80);
  108.                 Infrared = P0 & 0x0F;
  109.                 if(Infrared==0x02)
  110.                 {
  111.                                 Motor_Left(0, 100); Motor_Right(1, 100); break;

  112.                 }
  113.                 else if(Infrared==0x04)
  114.                 {
  115.                                 Motor_Left(0, 100); Motor_Right(1, 100); break;

  116.                 }
  117.         }
  118.         Infrared = P0 & 0x0F;
  119. }

  120. void weitiao1()
  121. {
  122.         a=1;
  123.         while(a)
  124.         {
  125.                 Motor_Left(0, 60); Motor_Right(1, 100);
  126.                 Infrared = P0 & 0x0F;
  127.                 switch(Infrared)
  128.                 {
  129.                         case 0x04:
  130.                                 a=1; break;
  131.                         default:
  132.                                 a=0; break;
  133.                 }
  134.         }
  135. ……………………

  136. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


所有資料51hei提供下載:
循跡決賽程序1.zip (45.32 KB, 下載次數: 685)


評分

參與人數 7黑幣 +129 收起 理由
zzbbcc + 5 贊一個!
薩杜斯 + 5 贊一個!
hello小c + 5 贊一個!
@小黑屋 + 4
qjzyx + 5 贊一個!
zz89c51 + 5
admin + 100 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:193705 發表于 2017-6-11 17:24 | 只看該作者
很好,謝謝!
回復

使用道具 舉報

板凳
ID:239987 發表于 2017-11-8 17:32 | 只看該作者
兄弟你l298n的ena,enb怎么和單片機接的,需要拔跳線帽么
回復

使用道具 舉報

地板
ID:237942 發表于 2017-11-27 15:22 | 只看該作者
用的什么紅外傳感器啊,避障效果好么,避障距離是多遠啊
回復

使用道具 舉報

5#
ID:257459 發表于 2017-12-5 14:30 | 只看該作者
那個是跟傳感器的類別和數目,還有安裝的高度位置有關系吧,具體有什么進一步的要求呢?
回復

使用道具 舉報

6#
ID:243501 發表于 2017-12-12 19:54 | 只看該作者
感謝分享
回復

使用道具 舉報

7#
ID:278233 發表于 2018-1-21 10:54 | 只看該作者
樓主,我現在只有兩個傳感器來制作,直接復制黏貼你的代碼OK嗎?
回復

使用道具 舉報

8#
ID:266116 發表于 2018-2-21 17:51 | 只看該作者
該天做個玩,謝謝分享
回復

使用道具 舉報

9#
ID:296817 發表于 2018-3-25 17:00 | 只看該作者
感謝感謝
回復

使用道具 舉報

10#
ID:186926 發表于 2018-4-16 23:06 | 只看該作者
如果有原理圖就更好了
回復

使用道具 舉報

11#
ID:328853 發表于 2018-5-13 14:36 | 只看該作者
不錯不錯
回復

使用道具 舉報

12#
ID:321920 發表于 2018-5-14 06:21 來自手機 | 只看該作者
如果硬件連接有特殊要求,最好能發圖說明下,非常感謝
回復

使用道具 舉報

13#
ID:321920 發表于 2018-5-15 05:37 來自手機 | 只看該作者
很感謝你的分享
回復

使用道具 舉報

14#
ID:340236 發表于 2018-6-1 09:39 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

15#
ID:359065 發表于 2018-6-26 10:06 | 只看該作者
很棒,謝謝樓主分享
回復

使用道具 舉報

16#
ID:366221 發表于 2018-7-6 12:30 | 只看該作者
謝謝
回復

使用道具 舉報

17#
ID:308772 發表于 2018-7-13 17:24 | 只看該作者

請問能給我的郵箱發一份嗎191969536@qq.com,萬分感謝!!急用
回復

使用道具 舉報

18#
ID:384418 發表于 2018-8-9 01:04 | 只看該作者
非常感謝
回復

使用道具 舉報

19#
ID:419383 發表于 2018-11-4 16:50 | 只看該作者
謝謝你了
回復

使用道具 舉報

20#
ID:355753 發表于 2018-11-26 15:02 | 只看該作者
很好的程序
回復

使用道具 舉報

21#
ID:355753 發表于 2018-11-26 15:02 | 只看該作者
謝謝大佬
回復

使用道具 舉報

22#
ID:401857 發表于 2018-11-27 18:22 | 只看該作者
謝謝,很好用
回復

使用道具 舉報

23#
ID:420589 發表于 2018-11-27 21:31 | 只看該作者
沒有主函數

回復

使用道具 舉報

24#
ID:442159 發表于 2018-12-8 15:02 | 只看該作者
贊一個
回復

使用道具 舉報

25#
ID:450030 發表于 2018-12-23 15:07 | 只看該作者

有啊


回復

使用道具 舉報

26#
ID:450030 發表于 2018-12-26 10:58 | 只看該作者
左大轉和右大轉里的判斷程序是不是重了
回復

使用道具 舉報

27#
ID:469002 發表于 2019-1-16 10:44 | 只看該作者
謝謝分享!
回復

使用道具 舉報

28#
ID:81496 發表于 2019-2-12 22:14 | 只看該作者
學習一下
回復

使用道具 舉報

29#
ID:436177 發表于 2019-3-22 16:16 | 只看該作者
贊一個
回復

使用道具 舉報

30#
ID:436177 發表于 2019-3-27 20:32 | 只看該作者
樓主,有沒有原理圖啊啊?
回復

使用道具 舉報

31#
ID:505599 發表于 2019-4-11 10:28 | 只看該作者
證號啊,4路循跡4路電機,我正需要,感謝
回復

使用道具 舉報

32#
ID:506264 發表于 2019-4-11 18:08 | 只看該作者
為什么我的文件打不開
回復

使用道具 舉報

33#
ID:512252 發表于 2019-4-14 23:01 | 只看該作者
很有用,感謝
回復

使用道具 舉報

34#
ID:294319 發表于 2019-4-15 19:29 | 只看該作者
謝謝分享
回復

使用道具 舉報

35#
ID:286449 發表于 2019-4-26 23:29 | 只看該作者
學習一下  
回復

使用道具 舉報

36#
ID:349520 發表于 2019-4-29 22:40 | 只看該作者
好難啊
回復

使用道具 舉報

37#
ID:349520 發表于 2019-4-30 18:54 | 只看該作者
有沒有仿真啊
回復

使用道具 舉報

38#
ID:431514 發表于 2019-5-1 13:32 | 只看該作者
請問能給我的郵箱發一份嗎1543739381@qq.com,萬分感謝!!
回復

使用道具 舉報

39#
ID:587600 發表于 2019-7-21 10:34 | 只看該作者

請問能給我的郵箱發一份嗎2298217400@qq.com,萬分感謝!
回復

使用道具 舉報

40#
ID:247307 發表于 2019-8-6 14:39 | 只看該作者
謝謝,學習了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 高清不卡毛片 | 九九久久久久久 | 欧美日韩国产在线观看 | a毛片| 成人一级视频在线观看 | 久久成人一区 | 亚洲精品第一 | 欧产日产国产精品国产 | 免费一区二区 | 欧美日韩高清一区二区三区 | 久久久天堂| 成人在线视频网址 | 国产乱码精品1区2区3区 | 午夜影视大全 | 性高朝久久久久久久3小时 av一区二区三区四区 | 91久久精品 | 一级欧美黄色片 | 成人午夜影院 | 久久久久国产一区二区三区 | 亚洲福利一区 | 一级欧美一级日韩片免费观看 | 国产乱码精品一区二区三区忘忧草 | 精品一区av | 成人免费在线观看 | 午夜激情小视频 | 久久电影一区 | 国产91久久精品一区二区 | 国产在线视频在线观看 | 国产精品久久久久久久毛片 | 色狠狠桃花综合 | 精品福利av导航 | 亚洲一区二区三区四区五区中文 | 日本不卡一区二区三区 | 91在线导航| 免费三级网站 | 风间由美一区二区三区在线观看 | 久久69精品久久久久久久电影好 | 国产精品久久久久久久久久三级 | 日本在线一区二区 | 中文成人在线 | 欧美日批|