在將近1年使用NodeMCU進行IOT開發的過程中,一直存在NodeMCU啟動之后出現短時亂碼的現象,我以為是我的代碼問題(甚至深信是NodeMCU的engineer放在github上的example是存在bug的)。后來,我在瀏覽文獻的時候偶然發現了這種現象發生的緣由。
在將近1年使用NodeMCU進行IOT開發的過程中,一直存在NodeMCU啟動之后出現短時亂碼的現象,我以為是我的代碼問題(甚至深信是NodeMCU的engineer放在github上的example是存在bug的)。
在查閱文獻的時候,偶然查看到了底層的Datasheet中有一段話:
NodeMCU 1.0 的啟動時波特率為 74880,但是啟動后就切到了 9600,如果直接用 9600,則開頭會看到一串亂碼之后恢復正常。
這段話也就很好地解釋了在NodeMCU完成代碼燒錄之后會產生短時亂碼的緣故了。如果你的寫程序設定的波特率是9600,那么由于NodeMCU啟動的時候波特率是74880,這時候我們通過串口讀取到的數據便是亂碼(估計不知道緣由的大多數人都會認為已經開始進行數據輸出了,包括曾經的我orz)
希望都可以看懂==不懂可以評論也可以向 wycwykds@163.com 砸郵件~~
2016.2.7寫于舟山
原文鏈接:http://blog.csdn.net/dustinTime/article/details/54914054
新聞熱點
疑難解答