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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機避障小車制作資料與問題解決(附源碼)

  [復制鏈接]
跳轉到指定樓層
樓主
避障小車程序實現功能:
1.藍牙控制,重力感應,通過串口通訊實現手機和藍牙之間的連接控制用到hc-06模塊
2.循跡壁障,遇見障礙能夠及時躲避,通過舵機帶動hc-sr04超聲波模塊的左右轉動來測量前左右的障礙
3.跟蹤,可以追蹤一個物體,物進車進,物退車退
4.走黑線,不同顏色的物體對光的反射不同
4.pwm速度快慢調速,通過pwm調節l298n產生脈寬調制
5.開燈,通過手機控制單片機的io口輸出高低電頻實現
6.喇叭,高低電頻產生震蕩
********************************************************************************/
/********************************************************************************
避障小車出現的問題:
1.主要是定時器優先級別問題,解決辦法調節定時器優先級別,第一次掌握了定時器二的用法,這是52特有的
2.切記,定時器0不能和定時器1互換,因為定時器1優先級沒有0高,互換會導致超聲波測距模塊接受不到數據
3.出現模塊從諜,的問題,解決辦法用標記把可能出問題模塊一個一個標記;最后發現原來是延時函數名字相同
4.字符串不能直接比較需要用if(strcmp(字符串,字符串2)==0)如果一樣就返回一個0,如果一比二大就返回
一個正數否則返回負數記住需要包含#include<string.h>頭文件
5.舵機不能兩個地方同時出現歸中,剛開始以為是定時器優先級別的問題,打開定時器1串口通訊就會制動打開
所以我在串口函數里設了點亮led燈來測試串口中斷是否自己打開,然后我先是注釋ET1發現程序正常,
后面又注釋掉中斷3發現程序正常,說明不是定時器設置問題, 注釋掉中斷三里的內容發現也正常說明不是中斷引起的
然后注釋掉舵機pwm調速,發現也正常說明不是小車檔位pwm的問題最后注釋掉小車快慢pwm調速,發現舵機函數有問題
然后注釋掉舵機pwm調速里的eles發現不正常,之后嘗試了改pwm輸出口的名字以及io口發現都沒用,最后拔掉舵機信號線
發現有用,說明舵機初始化有問題,最后把初始化里的歸中14,該成0,發現能正常運作,最后把初始化該成14,注釋掉
超聲波次主函數的歸中發現能正常運作,說明兩個歸中只能要一個。
結論;一點要細致認真,勤于思考,碰到問題要迎難而上因為編程本來就是個改錯的過程別碰到問題就想著
問別人,因為自己的程序只有自己最了解,寫代碼一定要規范,免得到時后亂起來連自己都看不懂。
11月13日,吳才成

下面是制作的避障小車的實物圖:


51單片機避障小車源程序如下:
  1. #include<AT89X52.H>        
  2. #include<string.h>                        //字符串比較頭文件
  3. #include <intrins.h>                                //nop的頭文件
  4. #define Left_moto_go {P3_1=1,P3_2=0,P3_3=1,P3_4=0;}         //左邊兩個電機向前走
  5. #define Left_moto_back {P3_1=0,P3_2=1,P3_3=0,P3_4=1;}         //左邊兩個電機向后轉
  6. #define Left_moto_Stop {P3_1=0,P3_2=0,P3_3=0,P3_4=0;}         //左邊兩個電機停轉
  7. #define Right_moto_go {P1_4=1,P1_5=0,P1_6=1,P1_7=0  ;}         //右邊兩個電機向前走
  8. #define Right_moto_back {P1_4=0,P1_5=1,P1_6=0,P1_7=1;}         //右邊兩個電機向前走
  9. #define Right_moto_Stop {P1_4=0,P1_5=0,P1_6=0,P1_7=0;}         //右邊兩個電機停轉 */
  10. /***************************************************************/
  11. //藍牙的設置
  12. /*****************************************************************/
  13. void zxddc ();   //轉向燈 后退 剎車指示燈
  14. void zxdzz ();         //轉向燈左轉
  15. void zxdyz ();          //轉向燈右轉
  16. void zxdgd ();         //轉向燈關燈
  17. sbit LEDHZ = P3^5;                                        //轉向燈左邊
  18. sbit LEDHY = P3^6;                                        //轉向燈右邊
  19. sbit LED1 = P1^0 ;                                        //左方向燈
  20. sbit LED2 = P1^1 ;                                        //右方向燈
  21. sbit  fmq = P1^2 ;                                        //喇叭,蜂鳴器
  22. int pwmjishu = 0 ;                                        //pwm調速
  23. int pushjishu = 0 ;                                    //pwm調速
  24. sbit ena1 = P2^7;
  25. sbit enb1 = P2^6;                                          //l298npwm調速引腳
  26. sbit ena2 = P2^5;
  27. sbit enb2 =        P2^4;
  28. unsigned char data table[4]={ 0,0,0,};//用來裝串口發送過來的字符串,不包括0
  29. /***************************************************************/
  30. //超聲波的設置
  31. /*********************************************************/
  32. #define CSBPWM P2_2                         //接舵機信號端輸入PWM信號調節速度
  33. #define ECHO P2_0                                 //超聲波接口定義
  34. #define TRIG P2_1                                 //超聲波接口定義
  35. unsigned char disdat[4]={ 0,0,0,0,};
  36. unsigned char pwm_val_left = 0;//變量定義
  37. unsigned char push_val_left =0;//14;//舵機歸中,產生約,1.5MS 信號
  38. unsigned long S=0;
  39. unsigned long S1=0;
  40. unsigned long S2=0;
  41. unsigned long S3=0;
  42. unsigned long S4=0;
  43. unsigned int time=0;                         //時間變量
  44. unsigned int timer=0;                         //延時基準變量
  45. unsigned char timer1=0;                 //掃描時間變量


  46. void qianj(void)                //前進
  47. {
  48.         Left_moto_go ;                         //左電機往前走
  49.         Right_moto_go ;                         //右電機往前走
  50. }
  51. /************************************************************************/
  52. //全速后退
  53. void hout(void)                                 //后退
  54. {
  55.         Left_moto_back ;                 //左電機往前走
  56.         Right_moto_back ;                 //右電機往前走
  57.         zxddc ();                                //后退指示燈
  58. }
  59. /*********************        ***************************************************/
  60. //左轉                                                  //左轉
  61. void zuoz(void)
  62. {
  63.         Left_moto_back ;                 //左電機往前走
  64.         Right_moto_go ;                 //右電機往前走
  65.         zxdzz ();                                //左轉指示燈
  66. }
  67. /************************************************************************/
  68. //右轉
  69. void youz(void)                                  //右轉
  70. {
  71.         Left_moto_go ;                         //左電機往前走
  72.         Right_moto_back ;                 //右電機往前走
  73.         zxdyz ();                                //右轉指示燈
  74. }
  75. /************************************************************************/
  76. //STOP
  77. void tingz(void)                           //停止
  78. {                                                  
  79.         Left_moto_Stop ;                 //左電機停走
  80.         Right_moto_Stop ;                 //右電機停走
  81.         zxdgd ();                                //車子停止指示燈關閉
  82. }
  83. /************************************************************************/
  84. /************************************************************************/
  85.   void delay1(unsigned int k) //延時函數
  86. {
  87.         unsigned int x,y;
  88.         for(x=0;x<k;x++)
  89.         for(y=0;y<2000;y++);
  90. }
  91. /******************************//*******************************************/
  92.          void delay_50us(unsigned int z)        //延時函數
  93. {
  94.         unsigned int x,y;
  95.         
  96.         for(x=z;x>0;x--)
  97.                 for(y=110;y>0;y--);
  98.         
  99. }        

  100. /*************************************************/

  101. void StartModule() //啟動測距信號
  102. {
  103.         TRIG=1; //給10us以上的高電頻
  104.         _nop_(); //_nop_()一個機器周期,1us
  105.         _nop_();
  106.         _nop_();
  107.         _nop_();
  108.         _nop_();
  109.         _nop_();
  110.         _nop_();
  111.         _nop_();
  112.         _nop_();
  113.         _nop_();
  114.         _nop_();
  115.         _nop_();
  116.         _nop_();
  117.         _nop_();
  118.         _nop_();
  119.         _nop_();
  120.         _nop_();
  121.         _nop_();
  122.         _nop_();
  123.         _nop_();
  124.         _nop_();
  125.         TRIG=0;
  126. }
  127. /***************************************************/
  128. /**************************************************/
  129. void Conut(void) //計算距離
  130. {
  131.                 while(!ECHO); //當RX為零時等待
  132.                 TR0=1; //開啟計數
  133.                 while(ECHO); //當RX為1計數并等待
  134.                 TR0=0; //關閉計數
  135.                 time=TH0*256+TL0; //讀取脈寬長度
  136.                 TH0=0;
  137.                 TL0=0;
  138.                 S=(time*1.7)/100; //算出來是CM

  139. }


  140. void COMM( void )         //方向計算
  141. {


  142.         push_val_left=5; //舵機向左轉90度
  143.         timer=0;
  144.         while(timer<=4000); //延時400MS讓舵機轉到其位置
  145.         StartModule(); //啟動超聲波測距
  146.         Conut(); //計算距離
  147.         S2=S;
  148.         
  149.         push_val_left=23; //舵機向右轉90度
  150.         timer=0;
  151.         while(timer<=4000); //延時400MS讓舵機轉到其位置
  152.         StartModule(); //啟動超聲波測距
  153.         Conut(); //計算距離
  154.         S4=S;
  155.         push_val_left=14; //舵機歸中
  156.         timer=0;
  157.         while(timer<=4000); //延時400MS讓舵機轉到其位置
  158.         StartModule(); //啟動超聲波測距
  159.         Conut(); //計算距離
  160.         S1=S;
  161.         if((S2<20)||(S4<20)) //只要左右各有距離小于20CM小車后退
  162.         {
  163.                 hout(); //后退
  164.                 timer=0;
  165.                 while(timer<=4000);
  166.         }

  167.         if(S2>S4)
  168.         {
  169.                 youz(); //車的左邊比車的右邊距離小 右轉
  170.                 timer=0;
  171.                 while(timer<=4000);
  172.         }
  173.         else
  174.         {
  175.                         zuoz(); //車的左邊比車的右邊距離大 左轉
  176.                         timer=0;
  177.                 while(timer<=4000);
  178.         }
  179. }

  180. /**********************************************************************************
  181. 舵機pwm調速,和小車換擋調速共用一個定時器
  182. ***********************************************************************************/
  183. void pwm_Servomoto()
  184. {
  185.         
  186.         if(pwm_val_left<=push_val_left)
  187.         CSBPWM=1;
  188.         else
  189.         CSBPWM=0;
  190.         if(pwm_val_left>=200)
  191.         pwm_val_left=0;         

  192. }


  193. /************************************************************/
  194. void Delay(unsigned int i)
  195. {
  196.         char j;
  197.         for(i; i > 0; i--)
  198.                 for(j = 200; j > 0; j--);
  199. }
  200. /*****************************************************************/
  201. void fangx()         //方向函數
  202. {
  203.                 if(strcmp(table,"ONA")==0)      qianj();//前進

  204.                 else if(strcmp(table,"ONB")==0) hout();//后退

  205.                 else if(strcmp(table,"ONC")==0)  zuoz();//左轉
  206.                
  207.                 else if(strcmp(table,"OND")==0)  youz ();//右轉

  208.                 else tingz();//停止
  209.                                        

  210.         //         if((a[0]=='O')&&(a[1]='N')&&(a[2]=='A')&&(a[3]==0)) qianj();
  211.                 /*if(a=="ONA")qianj();//前進 總結字符串不能用==比較需要調用內部庫函數

  212.                 else if(a=="ONB") hout();//后退

  213.                 else if(a=="ONC") zuoz();//左轉
  214.                
  215.                 else if(a=="OND") youz();//右轉
  216.    
  217.                 else tingz();//停止        */        
  218. }               
  219. /*****************************************************************************/
  220. void dangwei()           //檔位函數
  221. {
  222.         if (strcmp(table,"ON1") ==0 )
  223.                 pushjishu=0;
  224.         if (strcmp(table,"ON2") ==0 )                         //判斷是否按下按鍵
  225.                 {
  226.                         //pushjishu=pushjishu+10;
  227.                         pushjishu+=10;                                        //x+=y;相當與x=x+y;這樣使程序更精煉
  228.                   while (strcmp(table,"ON2") ==0 ); //當按鍵按下的時候進入while循環執行分號空語句,
  229.                                                                                           //當按鍵是釋放跳出while循環,很好的使按鍵按下一次執行一次,不會跑飛
  230.                 }
  231.         if (strcmp(table,"ON3") ==0 )
  232.                 {
  233.                         //pushjishu=pushjishu-10;
  234.                    pushjishu-=10;
  235.                         while (strcmp(table,"ON3") ==0 );
  236.                 }
  237.   /*         if (strcmp(table,"ON4") ==0 )
  238.                 pushjishu=105;
  239.         /*if(strcmp(table,"ON5")==0)
  240.                 pushjishu=160;
  241.         if(strcmp(table,"ON6")==0)
  242.                 pushjishu=200;        */
  243. }
  244. /**************************************************************************/
  245. void zxddc ()   //轉向燈 后退 剎車指示燈 。函數需要在前面聲明,因為電機函數定義在此函數前面,在電機函數調用此函數會出現錯誤
  246. {
  247.         LEDHZ = 0;
  248.         LEDHY = 0;
  249. }
  250. void zxdzz ()         //轉向燈左轉
  251. {
  252.         LEDHZ = 0;
  253.         LEDHY = 1;
  254. }
  255. void zxdyz ()          //轉向燈右轉
  256. {
  257.         LEDHZ = 1;
  258.         LEDHY = 0;
  259. }
  260. void zxdgd ()         //轉向燈關燈
  261. {

  262.         LEDHZ = 1;
  263.         LEDHY = 1;
  264. }
  265. /***************************************************************************/
  266. void kaideng()        //開前大燈燈函數
  267. {                                                                                
  268.         if ( strcmp(table,"ON7") == 0 )        //開燈
  269.     {
  270.                 LED1=0;
  271.                 LED2=0;
  272.         }
  273.          if ( strcmp(table,"ON8") == 0 )//關燈
  274.     {
  275.                 LED1=1;
  276.                 LED2=1;
  277.         }
  278. }
  279. /*************************************************************************/
  280. void laba()
  281. {
  282.         if(strcmp(table,"ON9")==0)
  283.         {
  284.                 fmq = 1;           //給高電平
  285.                 Delay(5);           //延時
  286.                 fmq = 0;           //給低電平
  287.                 Delay(5);        
  288.         }
  289. }
  290. /**********************************************************/
  291. void pwm(void)//小車快慢pwm調速,是通過l298n完成的
  292. {

  293. if(pwmjishu<=pushjishu)        
  294.         {
  295.                 ena1 = 0;
  296.                 enb1 = 0;
  297.                 ena2 = 0;
  298.                 enb2 = 0;    //l298n,實現pwm調速,當給高電頻的時候io引腳有效,給低電平時無效
  299.         }        
  300.         else
  301.         {
  302.                 ena1 = 1 ;
  303.                 enb1 = 1 ;
  304.                 ena2 = 1 ;
  305.                 enb2 = 1 ;     
  306.         }

  307. if(pwmjishu >= 200)
  308.         pwmjishu = 0;

  309. }
  310. /*******************************************************************************
  311. 超聲波魔術手程序
  312. *******************************************************************************/
  313. void moss ()
  314. {
  315.         Delay (100);
  316.         push_val_left=14; //舵機歸中
  317.         while(1) /*無限循環*/
  318.         {         
  319.             dangwei();//檔位        
  320.                 if(strcmp(table,"ON6")==0)        //判斷按鍵 是否按下如果按下就退出csbmian函數,return結束函數
  321.                         return;        
  322.                 if(timer>=1000) //100MS檢測啟動檢測一次
  323.                 {
  324.                         timer=0;
  325.                         StartModule(); //啟動檢測
  326.                         Conut(); //計算距離
  327.                         if(S<10) //距離小于20CM
  328.                                 hout(); //小車停止
  329.                         if(20>S&&S>10) //距離小于20CM
  330.                                 tingz();
  331.                         if(30>S&&S>20) //距離大于,30CM往前走
  332.                                 qianj();
  333.                         else
  334.                          if(S>35)
  335.                                 tingz();
  336.                 }        
  337.         }
  338. }
  339. /****************************************
  340. 超聲波壁障主函數
  341. /***************************************************************/

  342. /*        delay_50us(500);
  343.         TMOD=0X11;
  344.         TH1=(65536-100)/256; //100US定時
  345.         TL1=(65536-100)%256;
  346.         TH0=0;
  347.         TL0=0;
  348.         TR1= 1;
  349.         ET1= 1;
  350.         ET0= 1;
  351.         EA = 1; */        
  352. void csbmian ()
  353. {

  354.         timer=0;
  355.     push_val_left=14; /*舵機歸中,在初始化的時候歸要不在這歸中,如果兩個地方貴在程序就會出現毛病                                                兩個地方
  356.                                                 同時歸中串口中斷無緣無辜的會打開,導致車子不能串口通訊, */
  357.         delay1(50);
  358.         while(1) //無限循環//
  359.         {         
  360.                    dangwei();//檔位               
  361.                    kaideng();  //開燈函數
  362.                    laba();         //鳴笛函數
  363.          
  364.                     if(strcmp(table,"ON6")==0)        //判斷按鍵 是否按下如果按下就退出csbmian函數,return結束函數
  365.                                         return;
  366.         
  367.                         if(timer>=1000) //100MS檢測啟動檢測一次
  368.                         {
  369.                                 timer=0;
  370.                                 StartModule(); //啟動檢測
  371.                                 Conut(); //計算距離
  372.                                 if(S<45) //距離小于20CM
  373.                                 {
  374.                                         hout();
  375.                                         hout();         //剎車
  376.                                         hout();
  377.                                         tingz(); //小車停止
  378.                                         COMM(); //方向函數
  379.                                 }
  380.                                 else
  381.                                         if(S>45) //距離大于,30CM往前走
  382.                                         qianj();
  383.                         }
  384.         }
  385. }
  386.    
  387. /**********************************************************/
  388. void main()
  389. {         
  390.           T2CON=0x30; //設置定時器二為串口波特率模式
  391.           SCON=0x50;  //設置串口方式為1
  392.           RCAP2H=0xff;
  393.           RCAP2L=0xdc; //定時器二自動裝初值16位
  394.           TH2=0xff;
  395.           TL2=0xdc;                //定時器二
  396.           TR2=1;                    //啟動定時器2
  397.           ES=1;                           //打開串口中斷
  398.           PS=1;                           //串口優先級設置為最高

  399.           TMOD=0X11;         //打開定時器0和定時器1,工作做方式一
  400.           TH1=(65536-100)/256; //100US定時
  401.           TL1=(65536-100)%256;
  402.           ET1=1 ;                         //打開定時器一中斷
  403.           TR1=1 ;                         //啟動定時器一
  404.           TH0=0;                   //定時器0初始化
  405.           TL0=0;                   //切記定時器0不能和定時器一互換,因為定時器0優先級比1高,如果換了以后就不能接收超聲波了
  406.       ET0=1;                 //打開定時器0中斷
  407.           EA=1;                          //打開總中斷        
  408.                               
  409.                            

  410.                                     
  411. /*  T2CON=0x30;
  412.           SCON=0x50;  //設置串口方式為1
  413.           RCAP2H=0xff;
  414.           RCAP2L=0xdc;
  415.           TH2=0xff;
  416.           TL2=0xdc;
  417.           TMOD=0X11;         //打開定時器0和定時器1,工作做方式一
  418.           TH1=(65536-100)/256; //100US定時
  419.           TL1=(65536-100)%256;
  420.           TH0=0;                   //定時器0初始化
  421.           TL0=0;
  422.           ET1=1 ;
  423.           ET0= 1;                 //打開定時器0中斷
  424.           TR2=1;
  425.           ES=1;
  426.           PS=1;        
  427.           EA=1;

  428. /*******************************************/
  429. /*        TMOD=0X11;
  430.         TH1=(65536-100)/256; //100US定時
  431.         TL1=(65536-100)%256;
  432.         TH0=0;
  433.         TL0=0;
  434.         TR1= 1;
  435.         ET1= 1;
  436.         ET0= 1;
  437.           EA=1;                                //總開關
  438. /******************************************/
  439.    //單獨藍牙的串口設置
  440. /******************************************/
  441.         /*TMOD=0x21;//定時器1工作方式2,8位自動重裝  
  442.         TH0=(65536-100)/256; //100US定時
  443.         TL0=(65536-100)%256;
  444.     TH1=0xFd; //11.0592M晶振,9600波特率 
  445.     TL1=0xFd;
  446.         PS=1;
  447.         ET0=1 ;
  448.         TR0=1 ;
  449.         TR1=1 ;//打開定時器1
  450.     SM0=0 ;//串口方式1 SM0 SM1 01 允許接收  
  451.     SM1=1 ;//SMOD=0 16分頻
  452.     REN=1 ;
  453.         ES=1 ;//打開串口中斷   
  454.     EA=1;//開總中斷  */
  455.     //以上跟串口通信初始化有關

  456.         while(1)
  457.         {
  458.           dangwei();//檔位               
  459.           fangx();    //方向函數
  460.           kaideng();  //開燈函數
  461.           laba();         //鳴笛函數

  462.           if(strcmp(table,"ON5")==0)//判斷是否按下第五個按鍵,按下則啟動超聲波模式
  463.            csbmian ();          //超聲波模塊的主函數
  464.           if(strcmp(table,"ON4")==0)//判斷是否按下第四個按鍵,按下則啟動超聲波魔術手
  465.            moss ();          //超聲波魔術手模塊的主函數
  466.          }
  467. }
  468. /***************************************************/
  469. ///*TIMER1中斷服務子函數產生PWM信號*/
  470. void pwmdins()interrupt 3           //定時器一,優先級別最低
  471. {

  472.         TH1=(65536-100)/256;                                         //100US定時
  473.         TL1=(65536-100)%256;  
  474.         pwmjishu++;                                                           // 小車快慢的pwm調速
  475.         pwm();                                                                    //小車快慢的pwm函數
  476.         timer++;                                                 //超聲波的基準 定時器100US為準。在這個基礎上延時
  477.         pwm_val_left++;                                         //舵機的pwm調速基準時間
  478.         pwm_Servomoto();                                 //舵機pwm調速函數

  479. }
  480. /***************************************************/
  481. ///*TIMER0中斷服務子函數產生PWM信號*/
  482. void timer0()interrupt 1                 //因為串口優先級別變最高所以定時器0位第二高
  483. {

  484. }
  485. /***************************************************/

  486.    void serial() interrupt 4      //中斷子函數          //ps=1;使之優先級最高
  487. {
  488.         int i;
  489.         ES=0;                                   //關閉串口中斷,其實不關也沒影響
  490.         table[i++]=SBUF;           //數組下標加一,把字符串變成字符字單個取出存入數組,使之成為一元素
  491.         if(i==3)                           //字符串有三個字符,不包括標志位0
  492.         i=0;                                  //使之清零以便下次從收
  493.         RI=0;                                  //串口標志位硬件制一,手動清零
  494.         ES=1;                                  //打開串口                        
  495. …………
  496. …………
  497. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

原理圖: 無
仿真: 無
代碼:
寶馬自動駕駛.zip (53.9 KB, 下載次數: 509)


評分

參與人數 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:1 發表于 2017-12-5 14:20 | 只看該作者
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

板凳
ID:171111 發表于 2018-5-1 22:10 | 只看該作者
謝謝樓主    資料真好
回復

使用道具 舉報

地板
ID:322672 發表于 2018-5-5 12:12 | 只看該作者
手動點贊
回復

使用道具 舉報

5#
ID:77866 發表于 2018-5-8 16:59 | 只看該作者
謝謝樓主,提供資料,解決了急需問題
回復

使用道具 舉報

6#
ID:269454 發表于 2018-7-20 17:11 | 只看該作者
能不能發下電路圖
回復

使用道具 舉報

7#
ID:376635 發表于 2018-7-21 15:26 | 只看該作者
資料挺不錯的,感謝
回復

使用道具 舉報

8#
ID:393768 發表于 2018-9-4 22:36 | 只看該作者
厲害哦
回復

使用道具 舉報

9#
ID:394168 發表于 2018-9-6 01:50 | 只看該作者
下載了沒搞明白怎么弄
回復

使用道具 舉報

10#
ID:400222 發表于 2018-9-19 20:09 來自觸屏版 | 只看該作者
有沒有制作小車的材料清單
回復

使用道具 舉報

11#
ID:406979 發表于 2018-10-9 13:22 | 只看該作者
謝謝樓主好東西
回復

使用道具 舉報

12#
ID:409750 發表于 2018-10-15 09:36 來自觸屏版 | 只看該作者
能不能發下電路圖
回復

使用道具 舉報

13#
ID:405273 發表于 2018-10-17 11:31 | 只看該作者
我從論壇下載的資料為啥打不開啊
keil4 keil3都打不開啊

回復

使用道具 舉報

14#
ID:405273 發表于 2018-10-17 14:26 | 只看該作者
已解決 謝謝 文件夾名字的問題
回復

使用道具 舉報

15#
ID:413969 發表于 2018-10-23 12:54 | 只看該作者
不錯 學習學習
回復

使用道具 舉報

16#
ID:430125 發表于 2018-11-20 19:41 | 只看該作者
感謝樓主,來學習了
回復

使用道具 舉報

17#
ID:434555 發表于 2018-11-27 21:34 | 只看該作者
資料真好
回復

使用道具 舉報

18#
ID:436792 發表于 2018-11-30 20:31 | 只看該作者
人才,好資料,謝謝樓主分享
回復

使用道具 舉報

19#
ID:436792 發表于 2018-11-30 20:49 | 只看該作者
好資料
回復

使用道具 舉報

20#
ID:443011 發表于 2018-12-10 09:06 | 只看該作者
贊一個
回復

使用道具 舉報

21#
ID:483314 發表于 2019-3-2 17:07 | 只看該作者
可以的對我幫助很大
回復

使用道具 舉報

22#
ID:482489 發表于 2019-3-16 18:54 | 只看該作者

資料真好
回復

使用道具 舉報

23#
ID:495816 發表于 2019-3-21 23:26 | 只看該作者
不錯,學習學習
回復

使用道具 舉報

24#
ID:511444 發表于 2019-4-13 19:44 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

25#
ID:300463 發表于 2019-4-16 15:49 | 只看該作者
剛好在調試小車  謝謝了
回復

使用道具 舉報

26#
ID:431514 發表于 2019-4-29 07:45 | 只看該作者
有沒有制作小車的材料清單
回復

使用道具 舉報

27#
ID:414113 發表于 2019-4-29 16:18 | 只看該作者
感謝樓主分享,慢慢學習中
回復

使用道具 舉報

28#
ID:431514 發表于 2019-5-2 09:04 | 只看該作者
下載了沒搞明白怎么弄
回復

使用道具 舉報

29#
ID:538080 發表于 2019-5-18 08:30 | 只看該作者
這個可以呀
回復

使用道具 舉報

30#
ID:704712 發表于 2020-3-9 17:26 | 只看該作者
沒有原理圖呢
回復

使用道具 舉報

31#
ID:707535 發表于 2020-3-14 13:42 | 只看該作者
求元件庫和封裝庫
回復

使用道具 舉報

32#
ID:702493 發表于 2020-3-14 15:29 | 只看該作者
樓主,我最近也在玩這個,遇到點問題。
程序沒有有關超聲波的內容,只是一個直走的命令,但HC-SR04超聲波模塊連在單片機上,小車不走。
拔掉echo端口,小車直走。
檢查超聲波模塊,超聲波模塊完好,收發端未接反。
這什么原因啊?求解答。
網上實在是找不到資料,都卡半個月了,以上問題你也遇到過嗎?
回復

使用道具 舉報

33#
ID:712292 發表于 2020-3-20 15:17 | 只看該作者
謝謝大神~
回復

使用道具 舉報

34#
ID:713570 發表于 2020-3-23 16:53 來自觸屏版 | 只看該作者
樓主有沒有電路圖
回復

使用道具 舉報

35#
ID:713570 發表于 2020-3-23 16:54 來自觸屏版 | 只看該作者
ghdok 發表于 2019-4-16 15:49
剛好在調試小車  謝謝了

有沒有電路圖,求電路圖
回復

使用道具 舉報

36#
ID:712292 發表于 2020-4-25 22:31 | 只看該作者
感謝樓主分享,謝謝大師
回復

使用道具 舉報

37#
ID:695362 發表于 2020-4-30 11:03 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

38#
ID:608763 發表于 2020-6-2 15:06 | 只看該作者
手動點贊
回復

使用道具 舉報

39#
ID:1107666 發表于 2024-1-13 01:51 | 只看該作者
感謝樓主,正好在看51避障
回復

使用道具 舉報

40#
ID:211360 發表于 2024-1-20 11:52 | 只看該作者
非常感謝!希望能有更全面的資料
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品欧美乱码久久久久久1区2区 | 久久精品播放 | 色网在线观看 | 久久美女视频 | 精品亚洲一区二区三区 | 日韩久久综合网 | 欧美激情综合网 | 中文字幕在线观看一区 | 99热这里只有精品8 激情毛片 | 国产精品片aa在线观看 | 亚洲一区二区三区乱码aⅴ 四虎在线视频 | 精品毛片视频 | eeuss国产一区二区三区四区 | 久久中文字幕一区 | 成人国产精品久久久 | 日韩欧美第一页 | 91成人在线视频 | 国产综合精品 | 欧美日韩综合视频 | 亚洲免费视频网址 | 免费黄色的视频 | 一区视频| 91久久国产精品 | 欧美性一区二区三区 | 亚洲精品99999 | 偷牌自拍| 二区中文字幕 | 国产黄色精品在线观看 | 在线色网| 久久青 | 午夜精品视频在线观看 | 狠狠操在线| 亚洲一区二区三区在线免费观看 | 亚洲成人精品 | 欧美成人一级 | 久久久久久久久久久一区二区 | 国产精品免费av | 欧美激情综合五月色丁香小说 | 99免费精品视频 | 国产免费一区二区三区 | 国产成人免费网站 |