7624|30

75

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

如何实现485通信 [复制链接]

pc机经232-〉485转换器,后和多台485设备双向通信,我写过232的,对于485不清楚。
请问:
(1)这个应该是全双工方式还是半双工方式?
(2)如果是半双工如何知道现在有没有485设备占用通信线路?
(3)如果发送不成功怎么知道?怎么办?再发一次吗?
多谢!!

最新回复

本人使用美信MAX485芯片开发过几个项目,总的说来源程序上与232没多大区别,但注意485是半双工,芯片上有发送、接收控制端,源程序的发送子程序和接收子程序中应进行相应的处理。  详情 回复 发表于 2010-3-1 08:40
点赞 关注

回复
举报

82

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
多台485设备双向通信好想不可以。只能总-分之间。
不太清楚
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
(1)这个应该是全双工方式还是半双工方式?   
半双工,但是可以用两组,实现类全双工

(2)如果是半双工如何知道现在有没有485设备占用通信线路?   
如果是一个总线上挂接多个设备,那就得用LS说的,主从方式,以地址进行识别


(3)如果发送不成功怎么知道?怎么办?再发一次吗?   
这个是你的协议策略问题,你可以自定协议,也可以用像MODBUS这类成熟的协议标准

呵呵

 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

4
 
1 基本上只能半双工

2>> 如果是半双工如何知道现在有没有485设备占用通信线路?
其实这个很好办,自定义一套协议,可以定期检测设备是否在线

3 发送不成功的话,可以重发,也可以选择在某个特定时间补发
这都取决你的协议的制定!
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

5
 
帮顶
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

6
 
理论上可以这样设计:主从式;指定其中一台为主机,当然不能随便指定的,要根据功能(也可以作为网关)。其他的可以作为从机。然后按照一定的时序由主机和从机进行通信。通信协议可以参考MODBUS,或者自己指定。
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

7
 
半双工,可以用主机轮询下位机的方式来实现多个站点通信。
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

8
 
半双工的

485和232的编程上没区别

只是外围硬件接线有点区别而已

如果是1对多

我建议用有源转换模块,那样通信可靠一些
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

9
 
半双工,你要定义一台主机,从机分配好地址,通过地址访问。要全双工用422
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

10
 
主机寻扫,  先发地址,后发数据
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

11
 
我做过RS485的,RS485是半双工的;根据选用的RS485芯片不同,最多可
接128个RS485模块;PC机和多个RS485通信要有地址进行区分;如果要知道
下位机有没有收到数据,可让下位机收到指令后向上位机回应信息,最好系
统中还要有计时措施,当超出时限没有收到回应信息,认为帧丢失。
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

12
 
lbing7

老大回答的好经典!学习中
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

13
 
1.485只能是半双工,想全双工,请用422
2.多从站,必然要采用主站轮询的通讯方式,有问才有答
3.发送不成功,可以重发;没有应答也可以重发;多次没有应答则应该认为从站故障
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

14
 
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

15
 
轮询
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

16
 
(1)这个应该是全双工方式还是半双工方式?
半双工
(2)如果是半双工如何知道现在有没有485设备占用通信线路?
那就到485设备上面加一个地址标识,发送数据的头上加个地址帧,如果地址和该设备的匹配,则当前设备接收数据,其他设备等待;
依此类推
(3)如果发送不成功怎么知道?怎么办?再发一次吗?
这个没做过,看看那个校验位有没有用吧。或者让接收设备返回一个ACK应答信号,确认当前数据发送是否争取,是则继续,否则重发
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

17
 
这一版块,太没人气了,是不是大家都成大侠了

如果成大侠了,也常回家看看嘛,家里太冷清了

据说努力顶帖也是一种美德,但我只想大家常回家看看

毕竟每天都有新手需要帮忙,而我能帮的只能是把帖子顶起来
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

18
 
应该是半双工的
 
 
 

回复

99

帖子

0

TA的资源

一粒金砂(初级)

19
 
(1)这个应该是全双工方式还是半双工方式?
办双工,有收发控制脚;
(2)如果是半双工如何知道现在有没有485设备占用通信线路?
如果时效要求不高的话,采用主机轮循;
(3)如果发送不成功怎么知道?怎么办?再发一次吗?
这是协议问题。不回ACK即可重发。
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

20
 
最好是采用轮询,这样一问一答,可靠,软件开销小,如果用多主的话,协议没定好,就有苦头吃了
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表