打印
[工具和软件]

485总线学习笔记

[复制链接]
969|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Vitality1|  楼主 | 2015-1-27 23:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

我用的485总线芯片是75176.

     485总线是半双工的,任何时刻总线上只能有一点处于发送状态,其他点处于接收状态,否则会出现总线错误.通过实验,我发再其实两边也都可以是接收状态的,当哪一边需要发送数据只要使能75176为发送状态即可,发送完之后再将75176设置为接收状态.这时问题出现了,如果A点发送完数据然后将75176设置为接收状态,如果需要立即发送数据,A又立即将使能75176为发送状,然后发送数据,这时B点将收不到数据.经过我反复实验发现A发送完数据,将75176设置为接收状态,然后再延时一段时间(我的大概是1S),B 点才能正确收到数据.B点也一样,发送完数据后要延时一段时间,A才能正确收到数据.

    我不知道其用485总线的朋友有没有碰到这个问题,希望用过的朋友发表一下意见.


续:

由于485是简单的半双工的总线,没有像以太网一样有CSMA-CD机制确保任何一节点随时都能主动发数据,485一般都是主从的方式,从机不能主动发数据,只有主机需要从机发数据时,从机才能发,如果任何一485节点都能主动发数据,那两个节点同时发数据时有会有冲突(232和422是全双工的,没有这个问题).CPU控制485芯片发数据之后,需要延时一段时间(ms级的延时),因为硬件也是有延时的,不可能将数据写到发送寄存器之后,数据马上就传到了接收方,所以需要一些延时,才能将485芯片从发送状态改为接收状态。


相关帖子

沙发
hengny| | 2015-2-3 11:25 | 只看该作者
看完你的笔记我想请教下,如果一个起重器使用RS485的信号,我的控制器使用RS485+(使用RS485的接线方法),能正常运作,但是在调试过程中经常会击穿485+芯片,你知道什么原因造成吗?

使用特权

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

本版积分规则

81

主题

421

帖子

9

粉丝