单片机 STC12C5410AD,内部晶振频率不稳定, 串行通信波特率也会不稳定, 接收端的接收数据就会发生错误。当然在温度不变的情况下,并知道单片机的频率,波特率设置正确,通信就能正常。
下载程序能正常是因为 用了 自动调整波特率 的方法(在软件上稍微复杂一些)。
STC12C5410AD常温应该在6.5MHz左右,设置合理的波特率是可以接收到的
比如一般我们12MHz设置是TH1=0xfd 为9600,n,8,1,那么STC12C5410AD使用内部晶振,设置是TH1=0xfd 就是4800,n,8,1,所以上位机用4800,n,8,1,这个设置是可以接收到的(只要误差不大),
我怀疑是你检测的时候搞错误了。你最好先看下载的程序执行是否正确,如果正确 那么有可能是你看错误了。