Updated: Dec 1, 2020
This is a brand new lesson on what UART is, it's an application and further working conditions. Without more description, let us get started with the main content.
What is UART?
UART holds for Universal Asynchronous Receiver/Transmitter. It's not similar to other communication protocols like I2C and SPI. It is a built-in IC and is principally used for data communication, both serial and parallel.
As you can see, there are mainly two components in the diagram, a transmitter, and a receiver. In the section of the transmitter, there is a control logic, shift register, and a holding register. Similarly, the receiver section also accommodates similar sections. To both these, a common baud-rate generator is provided which is used for improving speed while transmission of data.
The implementation is quite easy as it has chiefly two pins for signal transmission: Rxd and Txd. The serial to parallel converter is essentially utilized to enhance the speed during low distance transmission.
There are a few stages and are as follows:
Hold Register: This as the name implies is used to hold the outgoing information before subsequent processing.
Shift Register: After data processing, the data is moved until the last bit is transmitted.
Control Logic: This is used to control the flow of data between the transmitter and receiver so that no blank/error but is sent.
Communication in UART
There are mainly two UARTs available, one for transmitting and another for receiving. There will be a flow of data from both Rx and Tx pins and is done asynchronously without the help of a clock.
The transmission of data using UART is generally done in a parallel form with other devices too. This data is converted into a packet that mainly includes three bits namely, starts, stops, and parity. So basically, the UART receives the data packets and sends it to the other end of the data bus.
Start Bit: This bit is placed before the real data. This is mainly utilized to understand that the process of transmission has started/stopped.
Stop Bit: This is kept at the ending of the packet to stop the broadcast and keep data on HIGH voltage.
Parity Bit: This bit is used to verify the credibility of the data. There are two ranges of Parity bits namely, even and off parity which is a low-level fault checking mechanism.
Data Frame: This is the actual data that is used to be transferred and could possibly be of length between 5 and 8. It is preferred to send the LSB of the data first for easier transmission.
The preceding image includes images of Rx, Tx, and Ground. In an 8051 microcontroller board, there are mainly two interfaces, UART0 and UART1. In this case, UART0 is being used. As see, the Tx pin is used to transfer the information to the PC, and Rx is used to receive it. the speeds are denoted using a baud-rate. Similar baud-rates for PC and microcontroller can easily transmit data transmission and reception.
This is commonly used in communication devices such as GPS and Bluetooth modules, wireless communication, and various other applications.
The baud-rate generation used help in determining the speed of data transmission.
Long-distance communication can also be easily achieved using this particular aspect.
There is only a need for two communication to achieve data transmission.
Clock and timing signals are not needed.
Errors can be validated using the parity bits.
The Data frame is limited.
Similar data frame settings need to be followed by both parties to achieve data transmission.
The rate of data transfer is minimal compared to that of parallel communication.
Several kinds of master and slave methodologies are not accepted.
UART is a cost-effective efficient and fundamental concept in the field of communication. Check out similar articles.