Arduino 串口通讯中出现乱码解决方法

一、出现的状况:

1、全部都是乱码
如果全是乱码的情况如图所示:

在这里插入图片描述

解决方法:
确认程序中的设置的波特率和串口监听的波特率一致,不然就会出现上诉乱码的情况
2、部分乱码问题
本来打印的如下所示:
Serial.print("HTTP:END");
串口监控打印效果
HZTP:END
HVTP:END
HTTP9END
# 都是中间的某一个或一段字符不正确
解决思路:
遇到这种方式,如果是前面正常后面不正常,可以考虑一下是不是串口的缓冲区内存不足的问题。(这种可以更改缓冲区大小,也可以在发送端使用分片发送来解决)
如果是在传输的开头的过程中出现,如上面显示,不要用软串口,用硬串口测试。其中存在的原因可能是arduino某些pin口做软串口时不具有串口中断。(PS:如果不对请大佬在评论区指出导致的原因)
3、如果上诉方法在切换为硬件串口后,依旧存在
检测一下硬件连接口是否存在接触不良
检查连接线是否存在问题
最后的最后
尝试断开硬串口TX RX 重新上传程序(此为玄学问题)在进行相关的尝试

三、总结
我遇到的乱码问题是将其中软串口改为硬串口后,不在出现部分乱码问题了。第二次连接时候也出现问题,最后断开RX,TX重新上传相关程序,在连接RX,TX 就可以了。如果上诉有错误的地方,还请在评论区指出。

PS:注意在使用硬串口的时候,上传程序时候,需要将其中TX,RX断开,否则会出现上传不上去程序的问题。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐