Technical Note TN_111 What is a UART?

Future Technology Devices International Ltd.
Technical Note TN_111
What is a UART?
Document Reference No.: DocNo FT_000157
Version 1.0
Issue Date: 2009-08-07
The purpose of this technical note is to clarify the differences in the terms UART, Serial port,
RS232, RS422 and RS485.
Future Technology Devices International Limited (FTDI)
Unit 1, 2 Seaward Place, Centurion Business Park, Glasgow G41 1HH, United Kingdom
Tel.: +44 (0) 141 429 2777 Fax: + 44 (0) 141 429 2758
E-Mail (Support): [email protected] Web: http://www.ftdichip.com
Copyright © 2009 Future Technology Devices International Limited
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
Table of Contents
1
Introduction............................................................................................ 2
2
The UART ............................................................................................... 3
2.1
Signals .................................................................................................................. 3
2.1.1
RXD ......................................................................................................................................... 3
2.1.2
TXD .......................................................................................................................................... 3
2.1.3
RTS# ........................................................................................................................................ 3
2.1.4
CTS# ........................................................................................................................................ 3
2.1.5
DTR# ....................................................................................................................................... 3
2.1.6
DSR# ....................................................................................................................................... 3
2.1.7
DCD# ....................................................................................................................................... 3
2.2
Data Format.......................................................................................................... 3
2.2.1
Number of Start Bits ................................................................................................................ 4
2.2.2
Number of Data Bits ................................................................................................................ 4
2.2.3
Parity ........................................................................................................................................ 4
2.2.4
Number of Stop Bits ................................................................................................................ 4
2.3
Flow control ......................................................................................................... 4
2.3.1
NONE ...................................................................................................................................... 4
2.3.2
HARDWARE ............................................................................................................................ 4
2.3.3
SOFTWARE ............................................................................................................................ 4
2.4
Baud rate .............................................................................................................. 4
2.5
Local Echo ........................................................................................................... 4
2.6
Typical interconnect............................................................................................ 5
3
RS232 ..................................................................................................... 6
4
RS422 ..................................................................................................... 7
5
RS485 ..................................................................................................... 8
6
Comparison Table ................................................................................. 9
7
What FTDI offer .................................................................................... 10
8
Contact Information............................................................................. 11
Appendix A - References .......................................................................... 13
Appendix B - Revision History.................................................................. 14
Revision Record Sheet .............................................................................. 15
Copyright © 2009 Future Technology Devices International Limited
1
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
1
Introduction
Many users are confused by the interchangeable names used for a serial port. This is partly due to slang
language and poor definitions.
The purpose of this technical note is to clarify what the differences between a UART, RS232, RS422 or
RS485 port are.
Copyright © 2009 Future Technology Devices International Limited
2
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
2
The UART
The term UART means Universal Asynchronous Receiver Transmitter and is a commonly used interface to
transfer serial data. Being asynchronous there is no clock signal but the structure of the transmitted data
provides for a start and an end to a message. It is also important that both ends of the link decide to
operate with the same pulse width defined as the baud rate. The UART of a micro-controller will normally
operate at 3V3 or 5V TTL levels. The UART will only connect to one other device in the chain.
2.1 Signals
The following signals are used to create a UART interface however not every design needs to use every
signal. A # symbol is used to designate an active low signal ie active at logic 0.
2.1.1 RXD
The RXD signal of a UART is the signal receiving the data. This will be an input and is usually connected
to the TXD line of the downstream device.
2.1.2 TXD
The TXD signal of a UART is the signal transmitting the data. This will be an output and is usually
connected to the RXD line of the downstream device.
2.1.3 RTS#
The RTS# (Ready to Send) signal of a UART is used to indicate to the downstream device that the device
is ready to receive data. This will be an output and is usually connected to the CTS# line of the
downstream device.
2.1.4 CTS#
The CTS# (Clear to Send) signal of a UART is used by the downstream device to identify that it is OK to
transmit data to the upstream device. This will be an input and is usually connected to the RTS# line of
the upstream device.
2.1.5 DTR#
The DTR# (Data Terminal Ready) signal of a UART is often used for flow control in modems, but many
serial interfaces do not use this signal. It is used to signal that the modem is ready to connect.
2.1.6 DSR#
The DSR# (Data Set Ready#) signal of a UART interface is mostly seen in modem applications otherwise
the pin is frequently unused.
2.1.7 DCD#
The DCD# (Device Carrier Detect) signal of a UART interface is mostly seen in modem applications
otherwise the pin is frequently unused. It is used to indicate a connection is established.
2.2 Data Format
The format of the data is basically made up of start – data – parity – stop, however the number of bits in
each section may vary. The data is sent with the least significant bit (LSB) first.
Figure 1: 1 start bit, 8 data bits, 1 parity bit and a stop bit.
Copyright © 2009 Future Technology Devices International Limited
3
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
2.2.1 Number of Start Bits
There is always only ever 1 start bit.
2.2.2 Number of Data Bits
The number of data bits usually varies between 5, 6, 7, 8 or 9 bits. 8 data bits is most common.
2.2.3 Parity
Parity has many settings, NONE, EVEN, ODD, MARK and SPACE.
2.2.4 Number of Stop Bits
The number of stop bits usually varies between 1, 1.5 and 2.
2.3 Flow control
Flow control is used to control the flow of data and prevent buffer overrun if a device cannot accept more
data. It is also sometimes termed as handshaking. There are 3 main settings for flow control as described
in the following sections.
2.3.1 NONE
This setting does not use flow control at all and relies on the application or device to be able to move
data fast enough to prevent overrun.
2.3.2 HARDWARE
This setting uses the RTS# and CTS# lines. The RTS# line of one device (A) drives the CTS# line of the
other device (B) and vice versa. If the RTS# line of device (A) is active it is stating the device (A) is able
to accept more data by driving the CTS# input of the device (B) at the other end of the link active.
Otherwise device (B) should stop transmitting.
2.3.3 SOFTWARE
This setting uses special characters to start and stop data flow. These are termed XON and XOFF. The
XON character tells the downstream device to start send data. The XOFF character tells the downstream
device to stop sending data. Usually it is possible to define these characters in an application. Typical
defaults for XON is 0x11 and for XOFF is 0x13.
2.4 Baud rate
The baud rate is a measure of how fast the transmission will occur.
A typical baud rate may be 9600 baud.
In terms of bits per second of data this is equal to 9600 / 10 = 960 bits per second. The value of 10 in
the divisor assumes 1 start bit + 8 data bits + no parity + 1 stop bit.
In terms of a pulse width each bit is 1 / 9600 = 104 uSec wide.
2.5 Local Echo
Local echo is the term used when data transmitted is also echoed back to the transmitting device. It is
mostly used in RS485 systems but can be a useful debug technique also to determine if data is being
transferred.
Copyright © 2009 Future Technology Devices International Limited
4
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
2.6 Typical interconnect
FIGURE 2: RXD and TXD lines are always used to transfer data, the other lines support flow control and
are optional. There are also many different combinations of flow control used for example RTS# and
CTS# could be connected together on the same device to bypass flow control. You should refer to the
manual supplied with your equipment to determine the correct cabling.
Copyright © 2009 Future Technology Devices International Limited
5
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
3
RS232
RS232 is effectively the same as the basic TTL level UART of section 2, but an additional line driver IC is
added to increase the signal strength. It is still a full duplex single ended system meaning it uses a single
wire for RX and a single wire for TX. A typical RS232 signal could operate between +/- 5V to +/-15V. This
allows the signal to travel along a cable up to 10m long. A typical FTDI product will have a signal swing
approximately +/- 6V.
An RS232 system will have 1 driver transmitting to 1 receiver.
A typical application for an RS232 interface is modems.
Figure 3: Example of connecting a UART to a Line driver for RS232.
Copyright © 2009 Future Technology Devices International Limited
6
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
4
RS422
RS422 or ANSI/TIA/EIA-422 designs use the same basic UART but with a different line driver IC. The line
driver will convert the single ended UART signal into a differential signal. This gives four data lines,
TXD+, TXD-, RXD+ and RXD-. The benefit of using a differential signal as opposed to a single ended
signal is that the system has better immunity to noise allowing for longer cable lengths. The signals drive
between +/- 2.0V.
Figure 4: Typical RS422 interconnect.
RS422 systems can have 1 device transmitting at a time with 10 devices receiving in a system.
RS422 systems are often used in industrial controllers.
Copyright © 2009 Future Technology Devices International Limited
7
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
5
RS485
RS485 or ANSI/TIA/EIA-485 designs use the same basic UART but with a different line driver IC. The line
driver will convert the single ended UART signal into a bi-directional differential signal. This gives two
data lines, Data A and Data B. The benefit of using a differential signal as opposed to a single ended
signal is that the system has better immunity to noise allowing for longer cable lengths. The signals drive
between +/- 1.5V.
Figure 5: Typical RS485 interconnect.
RS485 systems can have 32 devices transmitting in a system with 32 devices receiving.
RS485 systems are often used in CCTV applications to control the Pan, Tilt and Zoom functions.
Copyright © 2009 Future Technology Devices International Limited
8
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
6
Comparison Table
The table below gives a quick guide to the differences between the main serial port configurations.
TTL UART
RS232
RS422
RS485
Signal Swing
0v to 3V3/5V
+/-5V to +/-15V
+/-2V
+/-1.5V
Termination
Single ended
Single Ended
Differential
Differential
Transmission length
~2m
~15m
~1200m
~1200m
No of
transmitters/receivers
on a line
1 Driver
1 Driver
1 Driver
32 Driver
1 Receiver
1 Receiver
10 Receiver
32 Receiver
Copyright © 2009 Future Technology Devices International Limited
9
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
7
What FTDI offer
FTDI chipset FT232BL, FT232R, FT2232D, FT2232H and FT4232H can offer a USB conversion to a UART
interface. The level of the UART is either 3V3 or 5V depending on the device configuration.
The FT2232D, FT2232H and FT4232H can offer multiple UART channels in one chip package, each
channel being independently controlled by the royalty free drivers supplied by FTDI.
By adding different line drivers to the FTDI chipset UART interface they can also offer USB to RS232, USB
to RS422 or USB to RS485 solutions.
Copyright © 2009 Future Technology Devices International Limited
10
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
8
Contact Information
Head Office – Glasgow, UK
Future Technology Devices International Limited
Unit 1, 2 Seaward Place, Centurion Business Park
Glasgow G41 1HH
United Kingdom
Tel: +44 (0) 141 429 2777
Fax: +44 (0) 141 429 2758
E-mail (Sales) [email protected]
E-mail (Support) [email protected]
E-mail (General Enquiries) [email protected]
Web Site URL http://www.ftdichip.com
Web Shop URL http://www.ftdichip.com
Branch Office – Taipei, Taiwan
Future Technology Devices International Limited (Taiwan)
2F, No 516, Sec. 1 NeiHu Road
Taipei 114
Taiwan, R.O.C.
Tel: +886 (0) 2 8797 1330
Fax: +886 (0) 2 8751 9737
E-mail (Sales)
[email protected]
E-mail (Support)
[email protected]
E-mail (General Enquiries) [email protected]
http://www.ftdichip.com
Web Site URL
Branch Office – Hillsboro, Oregon, USA
Future Technology Devices International Limited (USA)
7235 NW Evergreen Parkway, Suite 600
Hillsboro, OR 97123-5803
USA
Tel: +1 (503) 547 0988
Fax: +1 (503) 547 0987
E-Mail (Sales)
[email protected]
E-Mail (Support) [email protected]
Web Site URL
http://www.ftdichip.com
Branch Office – Shanghai, China
Future Technology Devices International Limited (China)
Room 408, 317 Xianxia Road,
ChangNing District,
ShangHai, China
Tel: +86 (21) 62351596
Fax: +86(21) 62351595
E-Mail (Sales): [email protected]
E-Mail (Support): [email protected]
E-Mail (General Enquiries): [email protected]
Web Site URL: http://www.ftdichip.com
Copyright © 2009 Future Technology Devices International Limited
11
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
Distributor and Sales Representatives
Please visit the Sales Network page of the FTDI Web site for the contact details of our distributor(s) and
sales representative(s) in your country.
Neither the whole nor any part of the information contained in, or the product described in this manual, may be adapted or reproduced
in any material or electronic form without the prior written consent of the copyright holder. This product and its documentation are
supplied on an as-is basis and no warranty as to their suitability for any particular purpose is either made or implied. Future Technology
Devices International Ltd will not accept any claim for damages howsoever arising as a result of use or failure of this product. Your
statutory rights are not affected. This product or any variant of it is not intended for use in any medical appliance, device or system in
which the failure of the product might reasonably be expected to result in personal injury. This document provides preliminary
information that may be subject to change without notice. No freedom to use patents or other intellectual property rights is implied by
the publication of this document. Future Technology Devices International Ltd, Unit 1, 2 Seaward Place, Centurion Business Park,
Glasgow G41 1HH United Kingdom. Scotland Registered Number: SC136640
Copyright © 2009 Future Technology Devices International Limited
12
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
Appendix A - References
http://www.eia.org/ Electronics Industry Alliance (EIA) have defined the RS232, RS422 and RS485
standards.
Copyright © 2009 Future Technology Devices International Limited
13
Document Reference No.: DocNo FT_000157
What is a UART? Technical Note TN_111 Version 1.0
Clearance No.: FTDI# 100
Appendix B - Revision History
Revision History
Draft
Initial Draft
June, 2009
V1.0
First Release
7th August, 2009
Copyright © 2009 Future Technology Devices International Limited
14