Arduino IDE中Serial.println输出异常:ESP8266 NodeMCU 1.0串口问题求助
解决NodeMCU ESP8266串口监视器乱码问题
嘿,我之前调试NodeMCU的时候也碰到过一模一样的串口乱码情况,大概率是串口初始化缺失或者波特率不匹配导致的!咱们一步步来解决:
第一步:给代码加上串口初始化逻辑
你的代码里没有在setup()中初始化Serial通信模块,ESP8266没法正确向串口发送数据。修改后的setup函数应该是这样:void setup() { pinMode(13, OUTPUT); Serial.begin(115200); // 初始化串口,设置波特率为115200(NodeMCU默认常用值) while(!Serial); // 可选:等待USB串口连接完成,适合需要确保串口就绪后再输出的场景 }第二步:匹配串口监视器的波特率
打开Arduino IDE的串口监视器,找到右下角的波特率下拉菜单,选择和代码中一致的115200。如果波特率不匹配,接收方会把正确的字节解析成乱码,这是最常见的原因。第三步:排查硬件/连接问题
- 试试更换一根质量靠谱的USB数据线,有些廉价线只有充电功能,不支持数据传输;
- 换一个电脑的USB端口,比如从USB 3.0换成USB 2.0,部分USB 3.0端口可能会有干扰。
简单说,串口通信的核心是收发双方的波特率必须完全一致,而且要确保串口模块被正确初始化。按照上面的步骤调整后,你应该就能看到正常的"high"和"low"输出了!
内容的提问来源于stack exchange,提问作者Wan Street
相关产品推荐
相关产品推荐

