2.14 正點原子ESP8266模塊的STA模式 調試3
阿新 • • 發佈:2018-02-14
重新 brush 0x0d 代碼 _cmd mode cif usm -s
1.重新了解了usart串口的代碼(這裏用usart1代碼為例)
USART1_IRQHandler(串口1中斷函數代碼)
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //接收中斷(接收到的數據必須是0x0d 0x0a結尾) { Res =USART_ReceiveData(USART1); //讀取接收到的數據 if((USART_RX_STA&0x8000)==0)//接收未完成 { if(USART_RX_STA&0x4000)//接收到了0x0d { if(Res!=0x0a)USART_RX_STA=0;//接收錯誤,重新開始 else USART_RX_STA|=0x8000; //接收完成了 } else//還沒收到0X0D { if(Res==0x0d)USART_RX_STA|=0x4000; else { USART_RX_BUF[USART_RX_STA&0X3FFF]=Res ; USART_RX_STA++; if(USART_RX_STA>(USART_REC_LEN-1))USART_RX_STA=0;//接收數據錯誤,重新開始接收 } } }
此代碼解析參考網站http://blog.sina.com.cn/s/blog_776077610102vgqg.html
個人理解:這個代碼就是以第14位(0-15)是否收到0x0d為為分界線。
2.AT指令 調試ESP8266模塊的ATP模式 TCP客戶端
usmart調試 (atk_8266_send_cmd(u8 *cmd,u8 *ack,u16 waittime))
1.atk_8266_send_cmd("AT+CWMODE=1","OK",50)
2.atk_8266_send_cmd("AT+RST","OK",50)
3.atk_8266_send_cmd("AT+CWJAP=\"SSID\",\"password\"","OK",300) (轉義序列)
4.atk_8266_send_cmd("AT+CIFSR","OK",50)
5.atk_8266_send_cmd("AT+CIPSTART=\"TCP\",\"ip\",8086","OK",200)
6.atk_8266_send_cmd("AT+CIPSEND=0,25","OK",200)
7.atk_8266_send_data(“發送的東西”,"OK",100)
設置好前面的五項,可以通過網絡調試助手往模塊發送消息。
後面的兩項是,讓無線模塊發送消息到助手。
2.14 正點原子ESP8266模塊的STA模式 調試3