Skip to main content
Knowledgebase
Home
Renesas India - Knowledgebase

The Reason Why UART Requires Two Channels

Last Updated:05/25/2018

Question:

In a 3-wire serial interface and simple I2C, a single channel can be used for both sending and receiving data. Why then does a UART require two channels?

Answer:

I2C-based communication is half-duplex communication and either the master or a slave is sending data at any given time, with the other merely receiving the data. Therefore, a single shift register is sufficient.

e1006960_1.png
  Receiving using I2C communication

While 3-wire serial communication can process sending and receiving simultaneously like a UART, the clock for communication is shared. The master and a slave output data at the same clock edge and fetch data at opposite edges. In other words, since the master and a slave operate at exactly the same timing, sending and receiving can be processed using a single channel (shift register).

e1006960_2.png
  Example of 3-wire serial communication (DAPmn=CKPmn=0)

In contrast, in full-duplex communication using a UART, receiving and sending operations occur completely independently. Consequently, two independent shift registers are required. As a result, a UART requires two channels.

Suitable Products
RL78/G10
RL78/G11
RL78/G12
RL78/G13
RL78/G14
RL78/G1A
RL78/G1C
RL78/G1D
RL78/G1E
RL78/G1F
RL78/G1G
RL78/G1H
RL78/I1A
RL78/I1C
RL78/I1D
RL78/I1E
RL78/L12
RL78/L13
RL78/L1A
RL78/L1C
78K Family