欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

ESP8266+51單片機實現控制LED調試亂碼問題

[復制鏈接]
跳轉到指定樓層
#
10黑幣
救救孩子吧!從網上找的教程,調試正常,但是8266和51單片機連接好之后,無法連接網絡調試助手,上電時串口助手返回的值是亂碼,代碼燒錄和串口助手波特率都是調的9600 這是上電之后連接串口之后返回的 這是接線圖,
  1. #include <reg52.h>
  2. #include <string.h>
  3. #include <stdio.h>

  4. sbit P11_LED =P1^1; //自己定義你的LED接口
  5. sbit BUZZ = P2^3; //自己定義你的蜂鳴器接口


  6. char Recive_table[20]="";  //接收緩沖,最大20個字節
  7. char Recive_state = 0;   //接收完成標志
  8. void WIFI_Init(void);
  9. void Uart_Init(void);
  10. void ms_delay(int t);
  11. void LED(void);

  12. int main (void)
  13. {
  14.         /********************功能初始化***********************/
  15.         Uart_Init();//串口初始化,波特率為9600
  16.         ms_delay(1000) ;
  17.         WIFI_Init(); //wifi初始化
  18.         /****************************************************/
  19.         /**********************主循環************************/
  20.         while(1)
  21.         {
  22.                 ms_delay(10) ;
  23.                 if(Recive_state == 1)
  24.                 {
  25.                         ES=0;  //清空接收標志位
  26.                         if((Recive_table[0]=='+')&&(Recive_table[1]=='I')&&(Recive_table[2]=='P'))//接收到的字符串形式為+IPD,x,x:y
  27.                         {
  28.                             if((Recive_table[3]=='D')&&(Recive_table[6]==','))
  29.                             {   

  30.                                     if(Recive_table[9]=='0')  //如果你發送的是“0”
  31.                                     {
  32.                                                 P11_LED = 0;              //LED亮
  33.                                             ms_delay (10);
  34.                             BUZZ=0;               //蜂鳴器響一聲
  35.                                         ms_delay (10);
  36.                             BUZZ=1;
  37.                                                 ms_delay (30);
  38.                                                 P11_LED = 1;              //LED滅
  39.                                     }

  40.                                         if(Recive_table[9]=='1')  //如果你發送的是“1”
  41.                                     {
  42.                                                 P11_LED = 0;              //LED亮
  43.                                             ms_delay (10);
  44.                             BUZZ=0;               //蜂鳴器響兩聲
  45.                                         ms_delay (10);
  46.                             BUZZ=1;
  47.                                                 ms_delay (10);
  48.                             BUZZ=0;
  49.                                         ms_delay (10);
  50.                             BUZZ=1;
  51.                                                 ms_delay (30);
  52.                                                 P11_LED = 1;              //LED滅
  53.                                     }

  54.                                         if(Recive_table[9]=='2')  //如果你發送的是“2”
  55.                                     {
  56.                                                 P11_LED = 0;              //LED亮
  57.                                             ms_delay (10);
  58.                             BUZZ=0;               //蜂鳴器響三聲
  59.                                         ms_delay (10);
  60.                             BUZZ=1;
  61.                                                 ms_delay (10);
  62.                             BUZZ=0;
  63.                                         ms_delay (10);
  64.                             BUZZ=1;
  65.                                                 ms_delay (10);
  66.                             BUZZ=0;
  67.                                         ms_delay (10);
  68.                             BUZZ=1;
  69.                                                 ms_delay (30);
  70.                                                 P11_LED = 1;              //LED滅
  71.                                     }


  72.                                 }




  73.                         }
  74.                         memset(Recive_table,'\0',20);
  75.                         Recive_state = 0;
  76.                         ES=1;  //打開接收標志位
  77.                 }
  78.         }
  79.         /****************************************************/

  80. }

  81. /******************************************************************
  82. 函 數: void Uart_Interrupt() interrupt 4
  83. 功 能: 串口中斷函數,將收到的字符存到Recive_table[]數組中
  84. 參 數: 無
  85. 返回值: 無
  86. *******************************************************************/
  87. void Uart_Interrupt() interrupt 4         
  88. {   
  89.         static char i=0;  //因為是一位一位接收,所以用static
  90.         if(RI==1)   
  91.         {  
  92.                 ES = 0;
  93.                 RI=0;         
  94.                 Recive_table[i]=SBUF;        
  95.                 i++;
  96.                 if((Recive_table[i-1] == '\n'))
  97.                 {
  98.                         Recive_table[i]='\0';
  99.                         i=0;
  100.                         Recive_state = 1;
  101.                 }
  102.                 ES = 1;      
  103.         }
  104.         else
  105.         TI = 0;     
  106. }

  107. /******************************************************************
  108. 函 數: void Uart_Init(void)
  109. 功 能: 串口初始化,波特率為9600(這個不會,上網百度)
  110. 參 數: 無
  111. 返回值: 無
  112. *******************************************************************/
  113. void Uart_Init(void)
  114. {  
  115.         TMOD=0x20;
  116.         TH1=0xfD;
  117.         TL1=0xfD;
  118.         TR1=1;
  119.         REN=1;
  120.         SM0=0;
  121.         SM1=1;
  122.         EA=1;
  123.         ES=1;
  124. }

  125. /******************************************************************
  126. 函 數: void ms_delay(int t)
  127. 功 能: 毫秒級延時
  128. 參 數: 無
  129. 返回值: 無
  130. *******************************************************************/
  131. void ms_delay(int t)
  132. {  
  133.         int i,j;
  134.         for(i=t;i>0;i--)   
  135.                 for(j=110;j>0;j--);
  136. }

  137. /******************************************************************
  138. 函 數: void LED(void)
  139. 功 能: 發送完命令后顯示用的函數
  140. 參 數: 無
  141. 返回值: 無
  142. *******************************************************************/
  143. void LED(void)
  144. {
  145.         P2 = 0;
  146.         ms_delay(100);
  147.         P2 = 0xff;
  148.         ms_delay(100);
  149. }


  150. /******************************************************************
  151. 函 數: void WIFI_Init(void)
  152. 功 能: wifi初始化
  153. 參 數: 無
  154. 返回值: 無
  155. *******************************************************************/
  156. void WIFI_Init(void)
  157. {
  158.         ES = 0;
  159.         TI = 1;
  160.         printf("AT+RST\r\n");
  161.         LED();
  162.         ms_delay(1000) ;
  163.         printf("AT+CWMODE=3\r\n");
  164.         LED();
  165.         ms_delay(1000) ;
  166.         printf("AT+CIPMUX=1\r\n");
  167.         LED();
  168.         ms_delay(1000) ;
  169.         printf("AT+CIPSERVER=1,8080\r\n");      // 設置端口號8080      
  170.         LED();
  171.         ms_delay(1000) ;
  172.     printf("AT+CIOBAUD=9600\r\n");   // 設置與單片機一致的波特率     
  173.         LED();
  174.         ms_delay(1000) ;
  175.         while(!TI);
  176.         TI = 0;
  177.         ES = 1;

  178. }
復制代碼

這是從網上找的代碼

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

使用道具 舉報

地板
ID:634256 發表于 2021-5-27 13:05 | 只看該作者
問題已經解決,需要幫助可以加Q1179556868
回復

使用道具 舉報

板凳
ID:923908 發表于 2021-5-20 13:39 | 只看該作者
我也遇到了一樣的問題,同求一個解答,上電之后只能連接esp8266已經設定好的熱點,但是不能接入tcp調試
回復

使用道具 舉報

沙發
ID:277550 發表于 2021-5-20 09:03 | 只看該作者
slf252 發表于 2021-5-20 08:03
大兄弟,不如了解下,直接用esp8266的sdk進行開發,比51強多了,API封裝也齊全。


esp8266 用arduino開發,也很容易上手
回復

使用道具 舉報

樓主
ID:359272 發表于 2021-5-20 08:03 | 只看該作者
大兄弟,不如了解下,直接用esp8266的sdk進行開發,比51強多了,API封裝也齊全。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表