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

QQ登錄

只需一步,快速開始

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

雷達(dá)防撞避障小車,51單片機(jī)代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:928897 發(fā)表于 2021-5-28 22:18 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
這個(gè)是我做的一個(gè)雷達(dá)避障小車的51單片機(jī)代碼,小車四驅(qū),雙雷達(dá)避障,可進(jìn)可退,判斷最有轉(zhuǎn)彎方向。請(qǐng)高手指點(diǎn)一二,謝謝

單片機(jī)源程序如下:
  1. /***********************************************************************************************************/

  2. //串口波特率9600
  3. //系統(tǒng)便啟動(dòng)對(duì)當(dāng)前距離進(jìn)行測(cè)量,然后將距離值通過(guò)Echo/RX=p3.0 管腳輸出測(cè)量輸出的
  4. //距離值共兩個(gè)字節(jié),第一個(gè)字節(jié)是距離的高8位(HDate),第二個(gè)字節(jié)為距離的低8位(LData),單位為
  5. //毫米。即距離值為 (HData*256 +LData)mm:A3 6F (26 41) C2 96 24 C2 8D F1       
  6. /***********************************************************************************************************/          
  7. #include<reg52.h>
  8. #include<intrins.h>
  9. #include<STDIO.H>

  10. #define uchar unsigned  char
  11. #define uint  unsigned  int  


  12. sbit left_1=P2^2;
  13. sbit left_2=P2^3;
  14. sbit right_1=P2^4;
  15. sbit right_2=P2^5;




  16. #define left_go         {left_1=1,left_2=0;}        //左電機(jī)前進(jìn)
  17. #define left_go_back          {left_1=0,left_2=1;}    //左電機(jī)反轉(zhuǎn)
  18. #define left_stop       {left_1=0,left_2=0;}    //左電機(jī)停止

  19. #define right_go        {right_1=1,right_2=0;}  //右電機(jī)前進(jìn)
  20. #define right_go_back   {right_1=0,right_2=1;}  //右電機(jī)反轉(zhuǎn)
  21. #define right_stop      {right_1=0,right_2=0;}  //右電機(jī)停止




  22. void qianjin(void)    //前進(jìn)
  23. {
  24.   left_go;
  25.   right_go;
  26. }

  27. void stop(void)     //停止
  28. {
  29.   left_stop;
  30.   right_stop;
  31. }

  32. void zuozhuan(void)  //左轉(zhuǎn)
  33. {
  34.   left_stop;
  35.   right_go;
  36. }

  37. void youzhuan(void) //右轉(zhuǎn)
  38. {
  39. left_go;
  40. right_stop;
  41. }
  42. void houtui(void)
  43. {
  44.         left_go_back;
  45.         right_go_back;
  46. }
  47. /********************************************************/
  48. void delayms(unsigned int z)   //ms
  49. {
  50.         unsigned int i,j;
  51.         for(i=z;i>0;i--)
  52.            for(j=110;j>0;j--);
  53. }
  54. /********************************************************/

  55. /*********************************************/
  56. void Init(void)
  57. {
  58.   TMOD=0x21;                   //設(shè)T0為方式1,GATE=1;
  59.   TH0=0;
  60.   TL0=0;
  61.   TR0=1;  
  62.   IT0=0;              //外部中斷:TI0=0:低電平觸發(fā);TI0=1:下降沿觸發(fā)
  63.   PT0=1;              //中斷優(yōu)先級(jí):外部中斷0
  64.   ET0=1;              //允許T0中斷
  65.   EX0=1;              //開啟外部中斷0
  66.   EA=1;                              //開啟總中斷
  67. }
  68. /********************************************/



  69. void main(void)
  70. {  
  71.    //Init();
  72.     delayms(1000);
  73.    qianjin();
  74.           delayms(4000);
  75.    stop();
  76.    

  77.    houtui();houtui();
  78.    delayms(4000);
  79.    stop();stop();
  80.    stop();stop();

  81.    zuozhuan();
  82.    delayms(2000);
  83.         stop();stop();

  84.    youzhuan();
  85.    delayms(2000);
  86.    stop();stop();
  87.   
  88.         while(1)
  89.         {
  90.        
  91.         }
  92. }              
復(fù)制代碼

以上代碼下載:
雷達(dá)避障車code.rar (59.26 KB, 下載次數(shù): 10)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表