看过单片机与MAX485的控制电路,一般收发都要分别控制转换的,但是一般的RS485都是自行收发的,怎么弄?

一般的RS485发送和接收都是不用控制的,比如说发送一个命令,响应方会返回应答,难道在这个过程中要给出控制方向的命令吗?

你也可以用一个电路,来简单的控制下收发端啊。

看一下这个电路,实测很好用的:

powerbus

powerbus

PB721换成你的mcu的UART即可。这是隔离的,当然你也可以去掉隔离,设计不隔离的UART。

电路图出处:

【POWERBUS的EV721手册】

侵删

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
1. RS485属于半双工通讯,收发必须要控制。
2. 485接口芯片与计算机端接口包括:发送、接收、收、发控制四个信号,其中收、发控制信号就是用于方向控制的。
3.一般的485感觉是自行收发的,实际上控制还是有的,只不过在内部完成的。
4.实现方法是利用TX信号,把TX反相后接到收发控制端,同时A、B加上下拉电阻 。追问

请问第4步的意义是什么?能给我讲一下具体的原理和目的吗?

追答

接收数据:
接收数据时TX是高电平,把TX反相后接到控制端,此时485处于接收状态,当有信号来时自然就完成了接收。
发送数据:
当发送数据位为低时TX反相后为高,控制458处于发送,发送的数据就是0;当发送数据位为高时,TX反相后为低,控制458处于接收,由于A、B端有上下拉电阻,接收方认为是发送过来的高电平,收到的也是高。
这样就完成了收发自动控制

追问

很巧妙,只是我对发送数据高电平经由反相器变成“接收方向”,再通过上下拉电阻又变成想要的“发送方向”这个过程怎么实现不理解。
请问接收时,TX(发送)端是固定高电平吗?那么,发送呢,RX(接收)端也是固定一个电平吗,高电平?

追答

发个图片

本回答被提问者采纳
第2个回答  2011-04-22
“单片机与MAX485的控制电路”,485通信属于串行通信的一种,通信方式与232串口通信类同,
不过:
232通信是全双工的
485通信是半双工的

全双工与半双工的区别是什么呢?百度一下,比比皆是,简单解释一下,半双工由于单行道公路,某一时刻只能一个方向走车!

这样就要控制485的方向了!怎么控!
MAX485芯片资料表明,他可以方向控制的,通过单片机IO对485的方向控制,RE/控制,
一般来说,MAX485构成的485通信采用主从方式,也就是你所说的应答方式。
“难道在这个过程中要给出控制方向的命令吗?”,不是命令,是一个指令,

主485请求,从485回复,也就是说,从的一直处于接受等待状态,如果收到数据后,即可回复追问

你的意思是每次发送时,先使能发送,再传数据,发送完后,使能接收,等待接收从机的响应,再对响应的内容处理;而从机则刚好相反,先使能接收,收到数据后经过一些判断处理,然后使能发送,将响应发送出去。这样看起来很麻烦,一般具有485接口的设备,他们是怎么处理的,都是通过内部的CPU指令实现的,还是硬件设计实现?希望前辈指点迷津!

追答

我见到的485一般都是作为从机,支持MODbus协议的,
“先使能发送,再传数据,发送完后,使能接收” MAX485不是有一个(其实是2个,连在一起即可)控制管脚,发送数据之前,改变该脚电平,等发送完后,电平再改回来,让其处于接收状态,

不是麻烦,芯片规定是这么做的,全是有cpu指令实现的。

从机处理,一直处于接收状态,当主机发送数据,且是本机(有地址的)要接收的(地址一样),将接收,等待接收完后,此从机将回复主机(也就是从机开始发送了)
OK
还是建议你看下MAX485说明书,明白原理就OK了

第3个回答  2011-04-22
收发不需要分别控制
接在一起控制就行
第4个回答  2018-08-24
你好,请问你用的485是什么型号的
相似回答