打印

485ENABLE信号切换慢时,接收的都是乱码

[复制链接]
1889|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzjgod|  楼主 | 2015-11-5 10:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
芯片是LM3S6965,最近测试485通讯的时候,发现如果ENABLE信号由发送切换到接收时,如果在切换完成前,PC发送新的数据,起始位判断的位置一定是错误的,接收的数据要么是帧错误,要么是个未知数据(没有奇偶校验),这个可以理解,但是现在的情况是,整个一包数据全部都是错误的乱码,也就是第一个起始位位置判断错误后,以后所有的起始位的位置都是错误的。
有没有办法仅让开头一个或几个数据错误后,其他数据恢复正常的接收。

相关帖子

沙发
songchenping| | 2015-11-5 10:23 | 只看该作者
改成自动方向切换电路

使用特权

评论回复
板凳
dirtwillfly| | 2015-11-5 20:53 | 只看该作者
这个要看数据包的结构吧?
如果有校验或者加密之类的,肯定会出现帧错误或者乱码

使用特权

评论回复
地板
dirtwillfly| | 2015-11-5 20:54 | 只看该作者
要按你说的找到解决方案,至少要知道数据包的结构组成

使用特权

评论回复
5
xyz549040622| | 2015-11-5 22:11 | 只看该作者
都停产多年的片子了,建议不要搞了。

使用特权

评论回复
6
dirtwillfly| | 2015-11-6 08:16 | 只看该作者
xyz549040622 发表于 2015-11-5 22:11
都停产多年的片子了,建议不要搞了。

没停产,只是不推荐用于新产品了

使用特权

评论回复
7
zhangbo1985| | 2015-11-7 16:22 | 只看该作者
这个是受影响了,在是能接收端口后,其端口的切换还是需要时间的。

使用特权

评论回复
8
tongbu2015| | 2015-11-7 17:07 | 只看该作者
这个芯片内部的切换还需要一点时间的。

使用特权

评论回复
9
yzjgod|  楼主 | 2015-11-10 08:39 | 只看该作者
看起来解决这个问题只能靠软件协议来了,靠芯片的硬件来解决是不可能了。
我这里的使能信号切换时间是可设定的,看来这个切换时间还是没必要。
我用的串口半双工数据测试软件,收到数据后,软件立刻发送下一包测试数据,收到数据与发送数据的间隔时间最小一般为3ms,有时能有1ms或2ms。
一般情况下没有问题,但是时间间隔最短的时候,还是出现乱码,还是马上切换最保险

使用特权

评论回复
10
Ryanhsiung| | 2015-11-10 08:45 | 只看该作者
songchenping 发表于 2015-11-5 10:23
改成自动方向切换电路

这么通信不稳定。
这种问题多半是没有拉接上拉引起的。

使用特权

评论回复
11
迪卡| | 2015-11-10 19:08 | 只看该作者
是不是得先搞清数据包的结构,传输协议是什么

使用特权

评论回复
12
lwsn| | 2015-11-10 20:35 | 只看该作者
一般情况下没有问题,但是时间间隔最短的时候,还是出现乱码,还是马上切换最保险

看来楼住找到解决办法了

使用特权

评论回复
13
yzjgod|  楼主 | 2015-11-11 09:19 | 只看该作者
做的是个485/以太网的转换器,上面跑什么协议我管不了,我想现在只能避免这种情况出现了,切换的时间我做成了一个参数,设定为0时,切换速度可以做到10us,我默认设定是3ms,这时候对方设备的切换速度我控制不了,只要出错,对方发送的数据是连续的,我这也全都是连续的乱码,这样太难看了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

239

主题

370

帖子

2

粉丝