About
Community
Bad Ideas
Drugs
Ego
Erotica
Fringe
Society
Technology
Hack
Phreak
Broadcast Technology
Computer Technology
Cryptography
Science & Technology
Space, Astronomy, NASA
Telecommunications
The Internet: Technology of Freedom
Viruses
register | bbs | search | rss | faq | about
meet up | add to del.icio.us | digg it

Practical guide to RS- 232 interfacing

.pn
A Practical Guide to RS-232 Interfacing

Lawrence E. Hughes

Mycroft Labs, Inc.
P.O. Box 6045
Tallahassee, FL 32301

The following information is intended to collect together in
one place, and explain in relatively simple terms, enough of the
details of the RS-232 standard to allow a technician to construct
and/or debug interfaces between any two "RS-232 Compatible"
devices. A more detailed coverage of the subject may be found in
the book "Technical Aspects of Data Communication" by John E.
McNamara (1977, Digital Press).

This guide is necessary due to the casual way that vendors
implement "RS-232" interfaces, sometimes omitting required
signals, requiring optional ones, or worse, implementing signals
incorrectly. Due to this, and a lack of readily available
information about the real EIA standard, there is often
considerable confusion involved in trying to interface two RS-232
devices.

BACKGROUND

RS-232-C is the most recent version of the EIA (Electronics
Industry Association) standard for low speed serial data
communication. It defines a number of parameters concerning
voltage levels, loading characteristics and timing relationships.
The actual connectors which are almost universally used (DB-25P
and DB-25S, sometimes called "EIA connectors") are recommended,
but not mandatory. Typical practice requires mounting the female
(DB-25S) connector on the chassis of communication equipment, and
male (DB-25P) connectors on the cable connecting two such
devices.

There are two main classes of RS-232 devices, namely DTE (Data
Terminal Equipment), such as terminals, and DCE (Data
Communication Equipment), such as modems. Typically, one only
interfaces a DTE to a DCE, as opposed to one DTE to another DTE,
or one DCE to another DCE, although there are ways to do the
later two by building non-standard cables. Rarely if ever are
more than two devices involved in a given interface (multidrop is
not supported). A serial port on a computer may be implemented as
either DTE or DCE, depending on what type of device it is
intended to support.

RS-232 is intended for relatively short (50 feet or less),
relatively low speed (19,200 bits per second or less) serial (as
opposed to parallel) communications. Both asynchronous and
syBB@RBBBus serial encoding are supported. As 'digital' signals
(switched D.C. voltage, such as square waves) are used, as
opposed to 'analog' signals (continuously varying voltage, such
as sine waves) a very wide bandwidth channel (such as direct
wire) is required. A limited bandwidth channel (such as a phone
circuit) would cause severe and unacceptable distortion and
consequent loss of information.

RS-232 will support simplex, half-duplex, or full-duplex type
channels. In a simplex channel, data will only ever be travelling
in one direction, e.g. from DCE to DTE. An example might be a
'Receive Only' printer. In a half-duplex channel, data may travel
in either direction, but at any given time data will only be
travelling in one direction, and the line must be 'turned around'
before data can travel in the other direction. An example might
be a Bell 201 style modem. In a full-duplex channel, data may
travel in both directions simultaneously. An example might be a
Bell 103 style modem. Certain of the RS-232 'hand-shaking' lines
are used to resolve problems associated with these modes, such as
which direction data may travel at any given instant.

If one of the devices involved in an RS-232 interface is a
real modem (especially a half-duplex modem), the 'hand-shaking'
lines must be supported, and the timing relationships between
them are quite important. These lines are typically much easier
to deal with if no modems are involved. In certain cases, these
lines may be used to allow one device (which is receiving data at
a higher rate than it is capable of processing indefinitely) to
cause the other device to pause while the first one 'catches up'.
This use of the hand-shaking lines was not really intended by the
designers of the RS-232 standard, but it is a useful by-product
of the way such interfaces are typically implemented.

Much of the RS-232 standard is concerned with support of
'modems'. These are devices which can convert a serial digital
data signal into an analog signal compatible with a narrow
bandwidth (e.g. 3 kHz) channel such as a switched telephone
circuit, and back into serial digital data on the other end. The
first process is called 'MOdulation', and the second process is
called 'DEModulation', hence the term 'MODEM'. The actual process
used (at data rates of up to 1200 bits per second) is FSK
(Frequency Shift Keying), in which a constant frequency sine wave
(called the 'carrier') is shifted to a slightly higher or
slightly lower frequency to represent a logic 0 or logic 1,
respectively. In a half duplex modem, the entire available
bandwidth is used for one direction. In a full duplex modem, the
available bandwidth is divided into two sub-bands, hence there is
both an 'originate carrier' (e.g. for data from the terminal to
the computer), and an 'answer carrier' (e.g. for data from the
computer to the terminal). The actual frequencies (in Hertz) used
on the Bell 103A full duplex modem are:

signal state Originate Answer

logic 0 SPACE 1180 1850
carrier 1080 1750
logic 1 MARK 980 1650

.pa
THE STANDARD CIRCUITS AND THEIR DEFINITIONS

For the purposes of the RS-232 standard, a 'circuit' is
defined to be a continuous wire from one device to the other.
There are 25 circuits in the full specification, less than half
of which are at all likely to be found in a given interface. In
the simplest case, a full-duplex interface may be implemented
with as few as 3 circuits. There is a certain amount of confusion
associated with the names of these circuits, partly because there
are three different naming conventions (common name, EIA circuit
name, and CCITT circuit name). The table below lists all three
names, along with the circuit number (which is also the connector
pin with which that circuit is normally associated on both ends).
Note that the signal names are from the viewpoint of the DTE
(e.g. Transmit Data is data being sent by the DTE, but received
by the DCE).

PIN NAME EIA CCITT DTE DCE FUNCTION

1 CG AA 101 --- Chassis Ground
2 TD BA 103 --> Transmit Data
3 RD BB 104 <-- Receive Data
4 RTS CA 105 --> Request To Send
5 CTS CB 106 <-- Clear To Send
6 DSR CC 107 <-- Data Set Ready
7 SG AB 102 --- Signal Ground
8 DCD CF 109 <-- Data Carrier Detect
9* <-- Pos. Test Voltage
10* <-- Neg. Test Voltage
11 (usually not used)
12+ SCDC SCF 122 <-- Sec. Data Car. Detect
13+ SCTS SCB 121 <-- Sec. Clear To Send
14+ STD SBA 118 --> Sec. Transmit Data
15# TC DB 114 <-- Transmit Clock
16+ SRD SBB 119 <-- Sec. Receive Data
17# RC DD 115 <-- Receive Clock
18 (not usally used)
19+ SRTS SCA 120 --> Sec. Request To Send
20 DTR CD 108.2 --> Data Terminal Ready
21* SQ CG 110 <-- Signal Quality
22 RI CE 125 <-- Ring Indicator
23* CH 111 --> Data Rate Selector
CI 112 <-- Data Rate Selector
24* XTC DA 113 --> Ext. Transmit Clock
25* --> Busy

In the above, the character following the pin number means:

* rarely used
+ used only if secondary channel implemented
# used only on synchronous interfaces

also, the direction of the arrow indicates which end (DTE or DCE)
originates each signal, except for the ground lines (---). For
example, circuit 2 (TD) is originated by the DTE, and received by
the DCE. Certain of the above circuits (11, 14, 16, and 18) are
used only by (or in a different way by) Bell 208A modems.

A secondary channel is sometimes used to provide a very slow
(5 to 10 bits per second) path for return information (such as
ACK or NAK characters) on a primarily half duplex channel. If the
modem used suppports this feature, it is possible for the
receiver to accept or reject a message without having to 'turn
the line around', a process that usally takes 100 to 200
milliseconds.

On the above circuits, all voltages are with respect to the
Signal Ground (SG) line. The following conventions are used:

Voltage Signal Logic Control
+3 to +25 SPACE 0 On
-3 to -25 MARK 1 Off

Note that the voltage values are inverted from the logic values
(e.g. the more positive logic value corresponds to the more
negative voltage). Note also that a logic 0 corresponds to the
signal name being 'true' (e.g. if the DTR line is at logic 0,
that is, in the +3 to +25 voltage range, then the Data Terminal
IS Ready).

ELECTRICAL CHARACTERISTICS OF EACH CIRCUIT

The following criteria apply to the electrical characteristics
of each of the above lines:

1) The magnitude of an open circuit voltage shall not exceed 25V.

2) The driver shall be able to sustain a short to any other wire
in the cable without damage to itself or to the other equipment,
and the short circuit current shall not exceed 0.5 ampere.

3) Signals shall be considered in the MARK (logic 1) state when
the voltage is more negative than -3V with respect to the Signal
Ground. Signals shall be considered in the SPACE (logic 0) state
when the voltage is more positive that 3V with respect to the
Signal Ground. The range between -3V and 3V is defined as the
transition region, within which the signal state is not defined.

4) The load impedance shall have a DC resistance of less than
7000 ohms when measured with an applied voltage of from 3V to 25V
but more than 3000 ohms when measured with a voltage of less than
25V.

5) When the terminator load resistance meets the requirements of
Rule 4 above, and the terminator open circuit voltage is 0V, the
magnitude of the potential of that circuit with respect to Signal
Ground will be in the 5V to 15V range.

6) The driver shall assert a voltage between -5V and -15V
relative to the signal ground to represent a MARK signal
condition. The driver shall assert a voltage between 5V and 15V
relative to the Signal Ground to represent a SPACE signal
condition. Note that this rule in conjunction with Rule 3 above
allows for 2V of noise margin. Note also that in practice, -12V
and 12V are typically used.

7) The driver shall change the output voltage at a rate not
exceeding 30 volts per microsecond, but the time required for the
signal to pass through the -3V to +3V transition region shall not
exceed 1 millisecond, or 4 percent of a bit time, whichever is
smaller.

8) The shunt capacitance of the terminator shall not exceed 2500
picofarads, including the capacitance of the cable. Note that
when using standard cable with 40 to 50 picofarads per foot
capacitance, this limits the cable length to no more than 50
feet. Lower capacitance cable allows longer runs.

9) The impedance of the driver circuit under power-off conditions
shall be greater than 300 ohms.

Note that two widely available integrated circuit chips (1488
and 1489) implement TTL to RS232 drivers (4 per chip), and RS232
receivers to TTL (also 4 per chip), in a manner consistent with
all of the above rules.

DEFINITION OF THE MOST COMMON CIRCUITS

1 CG Chassis Ground

This circuit (also called Frame Ground) is a mechanism to
insure that the chassis of the two devices are at the same
potential, to prevent electrical shock to the operator. Note
that this circuit is not used as the reference for any of
the other voltages. This circuit is optional. If it is used,
care should be taken to not set up ground loops.

2 TD Transmit Data

This circuit is the path whereby serial data is sent from
the DTE to the DCE. This circuit must be present if data is
to travel in that direction at any time.

3 RD Receive Data

This circuit is the path whereby serial data is sent from
the DCE to the DTE. This circuit must be present if data is
to travel in that direction at any time.

4 RTS Request To Send

This circuit is the signal that indicates that the DTE
wishes to send data to the DCE (note that no such line is
available for the opposite direction, hence the DTE must
always be ready to accept data). In normal operation, the
RTS line will be OFF (logic 1 / MARK). Once the DTE has
data to send, and has determined that the channel is not
busy, it will set RTS to ON (logic 0 / SPACE), and await an
ON condition on CTS from the DCE, at which time it may then
begin sending. Once the DTE is through sending, it will
reset RTS to OFF (logic 1 / MARK). On a full-duplex or
simplex channel, this signal may be set to ON once at
initialization and left in that state. Note that some DCEs
must have an incoming RTS in order to transmit (although
this is not strictly according to the standard). In this
case, this signal must either be brought across from the
DTE, or provided by a wraparound (e.g. from DSR) locally at
the DCE end of the cable.

5 CTS Clear To Send

This circuit is the signal that indicates that the DCE is
ready to accept data from the DTE. In normal operation, the
CTS line will be in the OFF state. When the DTE asserts RTS,
the DCE will do whatever is necessary to allow data to be
sent (e.g. a modem would raise carrier, and wait until it
stabilized). At this time, the DCE would set CTS to the ON
state, which would then allow the DTE to send data. When the
RTS from the DTE returns to the OFF state, the DCE releases
the channel (e.g. a modem would drop carrier), and then set
CTS back to the OFF state. Note that a typical DTE must have
an incoming CTS before it can transmit. This signal must
either be brought over from the DCE, or provided by a
wraparound (e.g. from DTR) locally at the DTE end of the
cable.

6 DSR Data Set Ready

This circuit is the signal that informs the DTE that the DCE
is alive and well. It is normally set to the ON state by the
DCE upon power-up and left there. Note that a typical DTE
must have an incoming DSR in order to function normally.
This line must either be brought over from the DCE, or
provided by a wraparound (e.g. from DTR) locally at the DTE
end of the cable. On the DCE end of the interface, this
signal is almost always present, and may be wrapped back
around (to DTR and/or RTS) to satisfy required signals whose
normal function is not required.

7 SG Signal Ground

This circuit is the ground to which all other voltages are
relative. It must be present in any RS-232 interface.

8 DCD Data Carrier Detect

This circuit is the signal whereby the DCE informs the DTE
that it has an incoming carrier. It may be used by the DTE
to determine if the channel is idle, so that the DTE can
request it with RTS. Note that some DTEs must have an
incoming DCD before they will operate. In this case, this
signal must either be brought over from the DCE, or provided
locally by a wraparound (e.g. from DTR) locally at the DTE
end of the cable.

15 TC Transmit Clock

This circuit provides the clock for the transmitter section
of a synchronous DTE. It may or may not be running at the
same rate as the receiver clock. This circuit must be
present on synchronous interfaces.

17 RC Receiver Clock

This circuit provides the clock for the receiver section of
a synchronous DTE. It may of may not be running at the same
rate as the transmitter clock. Note that both TC and RC are
sourced by the DCE. This circuit must be present on
synchronous interfaces.

20 DTR Data Terminal Ready

This circuit provides the signal that informs the DCE that
the DTE is alive and well. It is normally set to the ON
state by the DTE at power-up and left there. Note that a
typical DCE must have an incoming DTR before it will
function normally. This signal must either be brought over
from the DTE, or provided by a wraparound (e.g. from DSR)
locally at the DCE end of the cable. On the DTE side of the
interface, this signal is almost always present, and may be
wrapped back around to other circuits (e.g. DSR, CTS and/or
DCD) to satisfy required hand-shaking signals if their
normal function is not required.

Note that in an asynchronous channel, both ends provide their
own internal timing, which (as long as they are within 5% of each
other) is sufficient for them to agree when the bits occur within
a single character. In this case, no timing information need be
sent over the interface between the two devices. In a synchronous
channel, however, both ends must agree when the bits occur over
possibly thousands of characters. In this case, both devices must
use the same clocks. Note that the transmitter and receiver may
be running at different rates. Note also that BOTH clocks are
provided by the DCE. When one has a synchronous terminal tied
into a synchronous port on a computer via two synchronous modems,
for example, and the terminal is transmitting, the terminal's
modem supplies the Transmit Clock, which is brought directly out
to the terminal at its end, and encodes the clock with the data,
sends it to the computer's modem, which recovers the clock and
brings it out as the Receive Clock to the computer. When the
computer is transmitting, the same thing happens in the other
direction. Hence, whichever modem is transmitting must supply the
clock for that direction, but on each end, the DCE device
supplies both clocks to the DTE device.

All of the above applies to interfacing a DTE device to a DCE
device. In order to interface two DTE devices, it is usually
sufficient to provide a 'flipped' cable, in which the pairs (TD,
RD), (RTS,CTS) and (DTR,DSR) have been flipped. Hence, the TD of
one DTE is connected to the RD of the other DTE, and vica versa.
It may be necessary to wrap various of the hand-shaking lines
back around from the DTR on each end in order to have both ends
work. In a similar manner, two DCE devices can be interfaced to
each other.

An RS-232 'break-out box' is particularly useful in solving
interfacing problems. This is a device which is inserted between
the DTE and DCE. Firstly, it allows you to monitor the state of
the various hand-shaking lines (light on = signal ON / logic 0),
and watch the serial data flicker on TD and/or RD. Secondly, it
allows you to break the connection on one or more of the lines
(with dip-switches), and make any kind of cross-connections
and/or wraparounds (with jumper wires). Using this, it is fairly
easy to determine which line(s) are not functioning as required,
and quickly build a prototype of a cable that will serve to
interface the two devices. At this point, the break-out box can
be removed and a real cable built that performs the same
function. An example of this kind of device is the International
Data Sciences, Inc. Model 60 'Modem and Terminal Interface Pocket
Analyzer' (also called a 'bluebox'). Care should be taken with
this type of device to connect the correct end of it to the DTE
device, or the lights and switches do not correspond to the
actual signals.



 
To the best of our knowledge, the text on this page may be freely reproduced and distributed.
If you have any questions about this, please check out our Copyright Policy.

 

totse.com certificate signatures
 
 
About | Advertise | Bad Ideas | Community | Contact Us | Copyright Policy | Drugs | Ego | Erotica
FAQ | Fringe | Link to totse.com | Search | Society | Submissions | Technology
Hot Topics
ebay contest
4chan on fox
This woman is drop dead gorgeous
Kid Eats Habanero Pepper
Were no longer the olny Totse
How to improve yoursocial/sex life
Google anti piracy tool for youtube :(
Chick caught on webcam
 
Sponsored Links
 
Ads presented by the
AdBrite Ad Network

 

TSHIRT HELL T-SHIRTS