RS-485 interface for connecting multiple devices

RS-485 is an updated version of the RS-422 interface. It is designed to communicate between multiple devices connected to a single data line. Standard allows connecting 32 transceivers to the data line. This is achieved by using tri-stable drivers that are separately programmable. This allows only one device to work at a given time.

RS-485 interface

Resistors used in the circuit are so-called termination resistors for matching the transmitter and receiver impedances to avoid reflections. The matching resistor depends on the cable used but is 120Ohm.

Usually, RS485 chips have two control inputs Data Enable(DE) and Receiver Enable(RE):

On the IC, you see that DE active is high level and RE is low level. This allows connecting the control line to a single MCU pin. This assures that node won’t be receiving while it is transmitting:

In many cases, CAT-5 cable is used with an impedance of 100Ohm and terminations of 120Ohm resistors at both ends of transmitter and receiver. CAT-5 cable already has twisted pairs, and it is cheap enough to use for many applications.

2 Comments:

  1. Thanks for this site and this article.

    It answered a couple of questions for me

    I am building this :

    http://www.pcdimmer.de

    I know the 2313 chip is obsolete but i have a couple dozen already.

    I would like to know if this limit of 32 nodes is theoretical or physical?

    I would plan on chaining these boards and when a board wants to communicate, it will pull the DE/TE line low or high, and that each node would have to check if the line is in the proper state before it tries to send. Each node is addressable so they would ignore data destined for either the master or any other slave.

    I would like to talk more about this to you if you have time.

    Thanks again for the good information.
    Mark

  2. “When using the default RS485 receivers with an input resistance of 12 kΩ it is possible to connect 32 devices to the network. Currently available high-resistance RS485 inputs allow this number to be expanded to 256.”
    So all depends on receiver input resistance.
    About constructive discussions – I hadn’t chance yet to try RS485 interface, so this is still theoretical subject to me.

Leave a Reply