如題所述,想做個wifi校時時鐘,前面AT返回的OK可以讀取到,,后面GET返回的數(shù)據(jù)讀取不到,求大神幫助,下面是部份程序
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"); // !!連接網(wǎng)絡
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模塊反饋回來的數(shù)據(jù)
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表示這一次數(shù)據(jù)接收完成
RX_ok=1;//接收完成
}
// if(i>=255)i=0;
}
// if((Recive_table[i-1]=='\n'))i=0; //遇到換行 重新裝值
}
else TI=0;
ES=1;
}
|