RS485, also known as EIA-485, is a two-wire, half-duplex, serial bus. RS485 uses differential signalling, which means that the difference in voltage between the two lines, D+ and D-, gives the value. One polarity indicates a value of one, and the other polarity indicates a value of zero. A difference of at least 0.2V is required for RS485, although voltage differences of up to 12V are possible. The differential nature of the bus makes it very robust, and allows connections to be established over lengths up to one kilometre.
RS485 differs from RS232 in that it is 'multi-drop', meaning that it is possible to have a master send to multiple slaves. Given a protocol for decided whose turn it is to send, a full network of devices can be created.
RS485 specifies only the physical layer of the bus. No specification is given for the data protocol. RS485 also typically has a transmit enable signal. When a device sends data on the RS485 it must first signal the transmit enable pin.
For more information on the RS485 standard, see Wikipedia.
Uses of RS485
- The SCSI-2 and SCSI-3 specifications use RS485 at the physical layer.
- Factory equipment often uses RS485 with custom data protocols for communicating and controlling machinery. The differential nature of RS485 makes it highly resilient to noise and interference.
- RS485 is used in DMX512-A, a system used in stage lighting which supports up to 512 devices controlled from a single controller (see DMX512-A). This allows lighting to be programmed and remotely controlled (dimmed, on/off) in a cost-effective way. Bluewater has developed a DMX512-A slave for lighting and laser control.
Bluewater Systems Experience
Salmon is the project name for a board which incorporates two Snapper CL15s, a six port Ethernet switch, Wi-Fi and a number of other features onto a small 102mm square board.
Both of the Snapper CL15s on Salmon have a half-duplex RS485 Uart. The transmit enable for the RS485 Uarts is controlled via a GPIO. The high and low (data+ and data-) signals for each of the RS485 buses are exposed on the expansion header at the rear of the board.
RS485 on Rig 200
One of the Rig 200 UARTs is configurable as an RS485 port. If RS485 connectivity is not required, the UART is configured as a standard RS232 port. A DB9 connector is used to provide physical access and a suitable cable may need to be made up for this.