这段时间经常调试串口现在把遇到的问题总结一下:
问题 :串口经常出现乱码
解决办法:1)看看程序里面的波特率和串口调试助手里面的波特率是否一致,如果不一致请改成一致的。
2)如果检查波特率是一致的那就就应该检查一下程序了,看看SMOD是否置1,定时器设置的时间是否正确,以及串口是否打开等等
3)如果软件没问题,那么最后就可能是硬件的问题了,看看晶振是多少的,一般来说11.0592MHZ的适应所有的波特率,而12MHZ的在一些波特率上存在误差,而且误差有时偏大(例如4800波特率,SMOD=1的误差就只有0.16,而9600的波特率,SMOD=1的误差就有-6.99)所以晶振一定要确认哟!
这只是我调试时遇到的一些问题,如果有不全面的请大家及时相告!谢谢 !