|
如題,正式寫代碼之前測(cè)試過ESP8266模塊,可以通過串口調(diào)試軟件進(jìn)行正常的雙向通信,基本可以證明模塊能正常運(yùn)作、硬件連接無(wú)誤。
但是!!問題來(lái)了!!寫代碼的時(shí)候發(fā)現(xiàn)串口接收不到數(shù)據(jù)。
調(diào)試后有兩個(gè)發(fā)現(xiàn):
- 串口發(fā)送數(shù)據(jù)send函數(shù)均可以正常運(yùn)行(表現(xiàn)為,在串口發(fā)送數(shù)據(jù)函數(shù)代碼最后加led1=~led1,運(yùn)行起來(lái)led1會(huì)閃爍,證明發(fā)送函數(shù)運(yùn)行成功)
- C語(yǔ)言編程實(shí)現(xiàn)的ESP8266發(fā)送AT指令,可以在串口調(diào)試助手上觀察到,但不會(huì)引起串口中斷(不會(huì)進(jìn)入中斷服務(wù)函數(shù),證明沒有接收到數(shù)據(jù),可能沒有發(fā)送成功?)【用串口調(diào)試助手發(fā)送的AT指令,就會(huì)引起串口中斷,區(qū)別如下圖】
Cyy.png (118.02 KB, 下載次數(shù): 23)
下載附件
2021-5-29 17:10 上傳
XCOM.png (94.99 KB, 下載次數(shù): 27)
下載附件
2021-5-29 17:10 上傳
另外一個(gè)問題:中斷服務(wù)函數(shù)里,當(dāng)RI為1時(shí),將SBUF里的數(shù)據(jù)顯示到LCD上,按理來(lái)說(shuō)向ESP8266發(fā)送‘AT’,ESP8266會(huì)返回‘OK’,也就是LCD上應(yīng)該顯示‘OK’。但是,用串口調(diào)試助手向ESP8266發(fā)送AT ,串口調(diào)試助手上顯示收到OK,LCD上顯示的卻是“AT”
|
|