为什么485不能连续接收?

2011年09月18日 15:56    发布者:c86518
我的硬件是STC11F04XE的uart连接MAX485,共4套连接在总线上,线长40cm。其中三个单片机处于接受状态,一个处于发送状态。进过反复试验发现:如果无间隔连续发送4个字节数据,那么只能收到前2个字节。如果间隔1秒或更长时间连续发送,无论多少字节都能正确接收。又用PC机串口转485与一个单片机点对点通信,单片机程序为中断收到4个字节数据后,转发该4字节数据(无间隔连续发送)。用串口调试助手,一次发送一个字节,发送4次,能收到转发回来的同样4字节数据。鼠标快速连续点击4次发送,单片机不能转发,再点击2-3次发送,才能收到4字节转发过来的数据。若一次发送4字节数据,则发送2次即共发送8字节数据,才收到4字节转发回来的数据,且是两次发送的前2字节。
上述现象,调试无数遍都如此。更换过不同渠道的MAX485以及不同种类的单片机,现象依旧。是485就不能连续接收?不应该!头大,不知该如何调试?请高手指点,给我邮件。c86518@163.com。

网友评论

kbgyzp 2011年09月22日
你单片机的收发切换状态判断有问题。某个单片机还处于发送状态,所以你不能正确接收
lsx435372 2011年10月29日
还有这事啊!头次通说
dsz_yqw 2011年10月30日
应该是你的单片机时钟频率不准,你把通讯参数里的停止位改为2位,或把通讯速率降低试试
WHG168 2012年04月20日
谢谢分享。。。。