再次求救版主及各位高手——串口接受的奇怪数据!!!
版主大哥,我今天用串口调试助手试了一下与单片机通信, 结果与labview中的结果是一样的,这时不时说明我Labview的程序没有问题啊?! 受到的数据还是比较奇怪,第一个数据很稳定 第二个数据就不稳定了, 我把单片机的程序和串口助手受到的数据放在附件里了,您帮我看看吧。我现在是彻底搞不明白了!拜托您了! LABVIEW和串口调试助手收到一样的就应该是对的吧?不相同才应该有问题 6M晶振能用来做串口发送吗?能保证9600的波特率?波特率误差也太大了吧?12.5%的误差?[ 本帖最后由 飞雨天 于 2008-4-3 10:04 编辑 ]
回复 3# 的帖子
应该可以把,把SMOD设成1就可以了 啊 即使我把波特率改成4800受到的数据也是不对的啊 你要使得单片机的波特率设置与上位机一致才行回复 4# 的帖子
我的意思是你的波特率误差太大了,不可能正确读到数据的,这就好像你下位机发送是9600,上位机读取用4800,那样确实能读到数据,但数据是错误的。。。。记得网上曾经有个波特率自动检测的程序,就是按这个原理做的,他把上位机设置为一个固定的波特率,比如说9600,根据接收到的字符,就能判断下位机发送的波特率。 问题解决了, 是波特率的问题12Mhz的晶振不行啊 要用11.0592Mhz 的才好用, 看来串口通信要求还是很高...
要是用6Mhz 2400的波特率会比较准
谢谢大家 恩,6M的做2400波特率的估计还可以,在你的配置下,只有0.16%的波特率误差
页:
[1]