找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機為何讀取不到ESP8266透傳模式下 GET到的數據

[復制鏈接]
跳轉到指定樓層
樓主
ID:410513 發(fā)表于 2019-1-27 16:10 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題所述,想做個wifi校時時鐘,前面AT返回的OK可以讀取到,,后面GET返回的數據讀取不到,求大神幫助,下面是部份程序
void main()
{
      delay5s();
      UsartInit();

      ESP8266_Set("AT+CWMODE_DEF=1\r\n"); //!!配置WiFi模組工作模式為單STA模式,并把配置保存在flash
      delay200ms();  delay200ms(); delay200ms(); delay200ms(); delay200ms();      
      ESP8266_Set("AT+RST\r\n"); //!!重啟模塊
      delay5s();
      ESP8266_Set("AT+CWJAP_DEF=\"111\",\"11111111\"\r\n");     //        !!連接網絡
      delay5s();delay5s();delay5s();
      ESP8266_Set("AT+CIPMUX=0\r\n");  //設置單鏈接模式
      delay200ms();delay200ms();delay200ms();  
//      ESP8266_Set("AT+CWAUTOCONN=1\r\n");  //!!使能上電自動連接AP
//      delay200ms();delay200ms();delay200ms();delay200ms();delay200ms();
      ESP8266_Set("AT+CIPSTART=\"TCP\",\"api.k780.com\",88\r\n");//!!連接服務器
      delay200ms();delay200ms();delay200ms();delay200ms();delay200ms();
      ESP8266_Set("AT+CIPMODE=1\r\n");  //!!設置透傳
      delay200ms();delay200ms();delay200ms();delay200ms();delay200ms();
      ESP8266_Set("AT+CIPSEND\r\n");  //!!啟動發(fā)送
      delay200ms();delay200ms();delay200ms();delay200ms();delay200ms();
      ESP8266_Set("GET ' 'http://api.k780.com:88/?app=life.time&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json");  //!!GET請求
      delay200ms();delay200ms();delay200ms();delay200ms();delay200ms();
      ES=1;
//      while(1)
//      {
//get返回值{"success":"1","result":{"timestamp":"1548490735","datetime_1":"2019-01-26 16:18:55","datetime_2":"2019年01月26日 16時18分55秒","week_1":"6","week_2":"星期六","week_3":"周六","week_4":"Saturday"}}      
      if(Recive_table[0]=='{')//如果為S則顯示1否則0
           {
             TM1650_Set_Time(0x48,0x11);
             TM1650_Set_Time(0x68,d_code[1]);            
          }






void Uart_Interrupt() interrupt 4        
{
//  static uint i=0;
      ES=0;
      if(RI)
      {
           RI=0;
           Receive=SBUF;        //MCU接收wifi模塊反饋回來的數據
           if(Receive=='{')
           {
                RX_ok=0;//清除
                RX_flag=1;//開始接收
           }
              if(RX_flag=1)
              {
                  Recive_table[ii++]=Receive;
                  if(Receive=='\n')
                  {
                    Recive_table[ii]=='\n';
                    ii=0;
                    RX_flag=0;//清0表示這一次數據接收完成
                    RX_ok=1;//接收完成       
                  }
                //  if(i>=255)i=0;
              }

        //   if((Recive_table[i-1]=='\n'))i=0;  //遇到換行 重新裝值

      }
      else TI=0;
     ES=1;

}

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

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

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