The Document is distributed under the terms of the GPL (GNU Public License).
RS-232 was devised to connect a modem to the terminal (computer). The terminals can use modems to dial using normal telephone lines and connect to remote networks. The standard proposed a 25 pin D type connectors. These 25 pins were defined for synchronous as well as asynchronous operation. Over time, most implementation dropped asynchronous signals as they were less used. The asynchronous portion is still widely used.
Though RS-232 was meant only for use with modem. it has been effectively used to connect computers, weighing machines, printers, robots and many more devices. But there was a problem faced by all them: The standard was not exactly a peer-to-peer standard. It identified two main types of equipements viz. DTE (Data Terminal Equipement) and DCE (Data Circuit Equipement). However it did not define the guidelines so as to which device be called as DCE and/or DTE.
To solve this problem, Null modem cabling is used. The cable is called Null modem because it eliminates use of modem and still allows to connect two terminals (computers) directly. The trick used in Null modem cabling lies in the standard itself. The standard uses set of handshake signals which follow Req-Ack Protocol. The cable just reverses the corresponding pairs. This make both the end think as if a modem is connected and they exchange data directly.
As said earlier, nowdays only small subset of signals are used. Due to this, many manufacturers now provide a 9 pin D connector for RS-232 communication. This gives rise to three cabling configurations as shown in the subsequent sections.
Prior to transmission both devices must be set to common parameters in terms of
A typical RS-232 Handshake then proceeds as follows
|
Host 1
|
Host 2
|
Signal
|
|
2
|
3
|
Transmit Data
(TxD)
|
|
3
|
2
|
Receive Data
(RxD)
|
|
4
|
5
|
Request To
Send (RTS)
|
|
5
|
4
|
Clear To Send
(CTS)
|
|
6, 8
|
20
|
Data Set Ready
and Carrier Detect (DSR, CD)
|
|
7
|
7
|
Signal Ground
(GND)
|
|
20
|
6, 8
|
Data Terminal
Ready (DTR)
|
|
Host 1
|
Host 2
|
Signal
|
|
3
|
2
|
Transmit Data
(TxD)
|
|
2
|
3
|
Receive Data
(RxD)
|
|
7
|
7
|
Request To
Send (RTS)
|
|
8
|
8
|
Clear To Send
(CTS)
|
|
6, 1
|
4
|
Data Set Ready
and Carrier Detect (DSR, CD)
|
|
5
|
5
|
Signal Ground
(GND)
|
|
4
|
6, 1
|
Data Terminal
Ready (DTR)
|
|
Host 1
(25 pin Connector)
|
Host 2
(9 pin Connector)
|
Signal
(25 pin names)
|
|
2
|
2
|
Transmit Data
(TxD)
|
|
3
|
3
|
Receive Data
(RxD)
|
|
4
|
8
|
Request To
Send (RTS)
|
|
5
|
7
|
Clear To Send
(CTS)
|
|
6, 8
|
4
|
Data Set Ready
and Carrier Detect (DSR, CD)
|
|
7
|
5
|
Signal Ground
(GND)
|
|
20
|
6, 1
|
Data Terminal
Ready (DTR)
|