在将近1年使用NodeMCU进行IOT开发的过程中,一直存在NodeMCU启动之后出现短时乱码的现象,我以为是我的代码问题(甚至深信是NodeMCU的engineer放在github上的example是存在bug的)。后来,我在浏览文献的时候偶然发现了这种现象发生的缘由。
楼上是摘要~点击这里查看 NodeMCU启动之后出现短时乱码的解释 原文
在将近1年使用NodeMCU进行IOT开发的过程中,一直存在NodeMCU启动之后出现短时乱码的现象,我以为是我的代码问题(甚至深信是NodeMCU的engineer放在github上的example是存在bug的)。
在查阅文献的时候,偶然查看到了底层的Datasheet中有一段话:
NodeMCU 1.0 的启动时波特率为 74880,但是启动后就切到了 9600,如果直接用 9600,则开头会看到一串乱码之后恢复正常。
这段话也就很好地解释了在NodeMCU完成代码烧录之后会产生短时乱码的缘故了。如果你的写程序设定的波特率是9600,那么由于NodeMCU启动的时候波特率是74880,这时候我们通过串口读取到的数据便是乱码(估计不知道缘由的大多数人都会认为已经开始进行数据输出了,包括曾经的我orz)
reference:
- 挂在GitHub上的NodeMCU API(中文)、NodeMCU API(English)
- NodeMCU官网
希望都可以看懂==不懂可以评论也可以向 wycwykds@163.com 砸邮件~~
2016.2.7写于舟山
原文链接:NodeMCU启动之后出现短时乱码的解释