In this article, we are not going to discuss about the what is UART and USART or how it works. Here main focus is transmission terminology used in UART and USART, which will then clear your difference between them. Before we going to learn Difference between UART and USART, we would discuss term used by UART and USART. As we all know, full name of UART and USART is Universal Asynchronous Receiver Transmitter & Universal Synchronous-Asynchronous Receiver Transmitter respectively which includes main two word called Synchronous and Asynchronous. So this two word is the main philosophy used in serial communication. Let we discuss it first
Synchronous Serial Transmission
-
Synchronous serial transmission requires that the sender and receiver share a clock with one another, or in other words, the sender provide a clock or other timing signal so that the receiver knows when to “read” the next bit of the data.
-
In Synchronous transmission, data is sent on one wires while a clock is sent on a different wire.
-
The standard serial communications hardware in the PC does not support Synchronous operations which means standard PC doesn’t support USART communication. it only support UART communication.
-
Synchronous communication is usually more efficient because only data bits are transmitted between sender and receiver rather than extra bits like start bit, stop bits, etc.
Asynchronous Serial Transmission
-
Asynchronous transmission allows data to be transmitted without the sender having to send a clock signal to the receiver. Instead, the sender and receiver must agree on special bits in advance and are added to each word which are used to synchronize the sending and receiving units.
-
More practically, in UART for Asynchronous transmissions, extra bits called the “Start Bit”, “Stop Bit”, “Parity Bit”, etc are added to character(byte) to be transmitted. The Start Bit is used to alert the receiver that a word of data is about to be sent, and to force the clock in the receiver to match with the clock in the transmitter.
-
After the Start Bit, the individual bits of the character(byte) of data are sent. Each bit in the transmission is transmitted for exactly the same amount of time as all of the other bits, and the receiver “looks” at the wire at approximately halfway through the period assigned to each bit to determine if the bit is a ‘1’ or ‘0’.
-
When the entire character(byte) has been sent, the transmitter may add a Parity Bit that the transmitter generates. The Parity Bit may be used by the receiver to perform simple error checking. Then at least one Stop Bit is sent by the transmitter to indicate transmission is over.
Compare UART and USART
UART |
USART |
UART requires only data signal |
In USART, Synchronous mode requires both data and a clock. |
In UART, the data does not have to be transmitted at a fixed rate. |
In USART’s synchronous mode, the data is transmitted at a fixed rate. |
In UART, data is normally transmitted one byte at a time. |
In USART, Synchronous data is normally transmitted in the form of blocks |
In UART, data transfer speed is set around specific values like 4800, 9600, 38400 bps ,etc. |
Synchronous mode allows for a higher DTR (data transfer rate) than asynchronous mode does, if all other factors are held constant. |
UART speed is limited around 115200 bps |
USART is faster than 115kb |
Full duplex |
Half duplex |
Suggested Reading
- Difference between Microcontroller and Microprocessor
- Difference between ARM and other Microcontrollers
- Difference between RISC and CISC architecture