C8051F020串口通信

来源:百度知道 编辑:UC知道 时间:2024/06/22 22:07:19
我就用020做温度采集,串口通信UART0方式1,timer2产生波特率,9600波特率,使用外部时钟22.1184MHz,串口是三线,用串口精灵监视串口,有时串口精灵显示是正确的,可有时是乱码,这是为什么?我感觉是上位机与单片机有时不协调,赶上协调时就正确,不协调时就乱码,这可怎么办??急死了,弄好几天了,高手们帮帮我呀!!!!

程序的逻辑有问题,检查一下吧。我用内部的24.5MHz时钟源,在1200~921600范围的波特率下都没问题,和PC通信一切OK。

我没用过C8051的串口,用AT89C52时遇到过这种情况,当时我的串口发送程序不对,在某种特殊情况下不停发数,电脑上串口监视窗口里闪个不停。你参考一下吧

会不会是你还有别的中断,把timer2中断设为高优先级试试。
我也不知道,随便出的主意哈~~

有点问题