RS-485 arrangements

I have long been familiar with RS-485 wired as a single differential pair connected to all the devices and termination at the both ends, however "end" may be defined. I have recently been looking into a 4- wire "full-duplex" implementation. However, it seems to be full- duplex only if there are only two devices attached. Otherwise, there appears to be a need to designate one device as the master (the device to whose receiver all the other drivers are connected) and the rest as slaves.

Unless there is some clever arrangement of which I am ignorant. Any comments?

For reference:

formatting link
formatting link

Reply to
Richard Henry
Loading thread data ...

Full duplex (FDX) RS 485 can be wired as point-to-point (typical use) or as point-to-multipoint (unusual but possible). If you use the point-to-multipoint configuration, you are correct that it looks effectively like the half duplex configuration, because you still need a master and slave(s) relationship. Replies from the various slaves have to be non-overlapping, and their output transceivers need to be controllable just like the 2 wire HDX configuration. So its hard to see any benefit to the extra wire pair in point-to-multipoint.

A point-to-point FDX configuration is usually used when you need high throughput, or when you don't have access to the 485 transmitter enable signal. If you are sending command-reply type messages, FDX doesn't increase throughput because the two devices are alternating their messages anyway. Most FDX 485 configurations with which I am familiar are really FDX hardware with HDX software implementations.

Steve

Reply to
Steve

Basic rule for any kinda bus. Only ONE device can drive the bus at the same time. If two (or more) devices attempt to drive the same bus at the same time it's called a bus fight. The bus may go high or low or halfway inbetween, depending upon the strength of the bus drivers doing the fighting. Does not matter what kinda bus, you cannot allow two bus drivers to drive at the same time. The only common solution to bus sharing is a strict master-slave arrangement. If other solutions exist they ain't common.

David Starr

Reply to
David Starr

formatting link

Full duplex fully, overlapped is totally possible, but all the slaves have to have a 'system address'. A tip, design your system for the master to send, say, x bytes per packet, and all slaves to return, x-1 bytes per packet..

Reply to
TT_Man

formatting link

slave devices don't talk unless spoken to. this means, You need a protocol. MODBUS is a good example.. Look it up.

--
"I\'m never wrong, once i thought i was, but was mistaken"
Real Programmers Do things like this.
 Click to see the full signature
Reply to
Jamie

formatting link

Far too complex...... just use for a packet, address/address/command/parameter/parameter/crc. The biggest task is defining the command/parameter set that will satisfy your application..

Reply to
TT_Man

Re-inventing the master/slave protocol is far more complex.

There are code examples of MODBUS out on the net that that OP can find and use.

Maybe even use whatever MODBUS code thats out there and modify it to make it simpler for his application.

Code reuse is a good thing.

don

Reply to
Donald

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.