RS485 basically has differential signals, allows signals to be carried to long distance say up to 1.2Km at 9600bps & allows devices to be multidropped.
The most important difference between RS-232 and RS-485 is that RS-485 is half-duplex. That is, it uses the same wires to transmit as to receive. This creates problems when you transmit a message and then expect a response. You must disable your transmitter quickly so that you will be off the bus before the response starts coming in. True RS-485 boards handle this very well. But some RS-232 to RS-485 converters do not handle it so well. Some of them use one of the RS-232 control signals (like RTS) to enable the RS-485 transmitters. The problem is that your software may not be fast enough in lowering RTS after a transmission. In fact, if your device is a Windows computer, you have no way of knowing, within your application, when the operating system has finished sending out your message. Some converter boxes use a time-out on the transmit data line to control the transmitter enable instead of RTS. This works fine as long as each message is sent at full speed without pauses that might fool the time-out circuit.
Robert Scott
Real-Time Specialties
Embedded Systems Consulting
Ypsilanti, Michigan