Device
memory
Reserved for
UART/IrDA/CIR
transmission
DMA
UART/
IrDA/CIR
Data to be
transmitted
DMA request
TX FIFO
TX FIFO threshold
Transmitted
data
uart-030
Programmable
threshold
+ trigger level
(3 + 8 = 11)
Zero byte
Trigger level (8)
Programmable
threshold (3)
DMA active periods; this
does not represent the
DMA signaling.
Example: DMA is disable to
show the end of the transfer.
Time
uart-035
Functional Description
The final example shows the setting of eight spaces, but setting the TX DMA threshold directly by setting
the UART_MDR3[1]SET_DMA_RX_THRESHOLD bit and the UART_TX_DMA_THRESHOLD register
(see
). In the example, UART_TX_DMA_THRESHOLD[2:0]TX_DMA_THRESHOLD = 3 and
the trigger level is 8. The buffer is filled at a faster rate than the baud rate transmits data to the TX pin.
The buffer is filled with 8 bytes and the DMA operations stop transferring data to the transmit buffer. When
the buffer is emptied to the threshold level by transmission, the DMA operation activates again to fill the
buffer with 8 bytes.
Eventually, the buffer is emptied at the rate specified by the baud rate settings of the UART_DLL and
UART_DLH registers.
If the selected threshold level plus the trigger level exceed the maximum buffer size, the original TX DMA
threshold method is used to prevent TX overrun, regardless of the value of the
UART_MDR3[1]SET_DMA_RX_THRESHOLD bit.
The DMA settings must correspond to the settings of the system local host DMA controller to ensure the
correct operation of this logic.
Figure 19-11. Transmit FIFO DMA Request Generation Using Direct TX DMA Threshold Programming.
(Threshold = 3; Spaces = 8)
19.3.6.4.2 DMA Transmission
shows DMA transmission.
Figure 19-12. DMA Transmission
3466
Universal Asynchronous Receiver/Transmitter (UART)
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated