
NUC126
Aug. 08, 2018
Page
749
of 943
Rev 1.03
NUC12
6 S
E
RI
E
S
T
E
CH
NI
CA
L R
E
F
E
RE
NCE
MA
NUA
L
measurement counter value into the BRDETITV (UUART_PROTCTL [24:16]) in the next falling edge.
It is suggested to use the
f
DIV_CLK
(TMCNTSRC (UUART_BRGENC[5]) =1) as the counter source.
The CLKDIV (UUART_BRGEN[25:16]) will be revised by BRDETITV (UUART_PROTCTL [25:16])
after the auto baud rate function done (the time of 4
th
falling edge of input signal). If the user want to
receive the next successive frame correctly, it is better to set the value of CLKDIV
(UUART_BRGEN[25:16]) and DSCNT (UUART_BRGEN[14:10]) as the same value (the value shall be
among the rang of 0xF and 0x5 because the DSCNT is used to define the sample counter of each bit
and the PDSCNT (UUART_BRGEN[9:8]) is 0x0.
During the auto baud rate detection, the ABRDETIF (UUART_PROTSTS[9]) and the BRDETITV
(UUART_PROTCTL [24:16]) will be updated after each falling edge of input signal and the auto baud
rate pattern, 0x55, won
’t be received into the receiver buffer after the frame done. The bit of ABREN
will be cleared by hardware after the 4
th
falling edge of input signal is detected thus the user can read
the status of ABREN to know the auto baud rate function is done or not.
If the CLKDIV and DSCNT are not set as the same value in calculation the auto baud rate function, the
user shall calculate the proper average baud rate by the value of BRDETITV and CLKDIV after the
auto baud rate function done.
If the baud rate of input signal is very slower and the bit time of timing measurement counter can
’t
calculate the correct period of the input bit time, there is a ABERRSTS bit (UUART_PROTSTS[11]) to
indicate the error information of the auto baud rate detection. At this time, the user shall revise the
value of CLKDIV and require the Host device to send the 0x55 pattern again.
According the limitation of timing measurement counter, the maximum auto baud rate detection is
0x1FE for BRDETITV.
ABREN
USCI_DATAIN0
CLKDIV
DSCNT
BRDETITV
ABRDETIF
Timing
measurement
counter
1 2 3
……………
.
0
N-2 N-1 N
1 2 3
……………
.
0
N-2 N-1 N
1 2 3
……………
.
0
N-2 N-1 N
1 2 3
……………
.
0
N-2 N-1 N
Falling edge clear the TMCNT
N/2
N/2
N/2
N/2
1
st
falling edge
2
nd
falling edge
3th falling edge
4th falling edge
Clear this bit by H/W at the 4th falling edge
0
N/2
Can be cleared by write 1
Enable this bit by User
A
A
Figure 6.20-5 UART Auto Baud Rate Control
6.20.5.8 Auto Flow Control
The UART supports hardware auto-flow control that provides nRTS flow control on receiver buffer
indicator RXFULL (UUART_BUFSTS[1]). When the buffer is full (RXFULL = 1), the nRTS is de-
asserted.
The UART also provides nCTS flow control on transmitter. The nCTS is used to control the transmitted
data is sent out when the nCTS is asserted.
6.20.5.9 RS-485 Support
The UART controller can play the role of the RS-485 master transmitter will identify an address
character by setting the parity (9-th bit) to 1. For data characters, the parity is set to 0. Software can
use the bit15 of each data to control the parity bit (PARITYEN (UUART_PROTCTL[1]) be set) when
the STICKEN (UUART_PROTCTL[26]) is set. For example, if the STICKEN is set to 1 and data
sequence are 0x8015, 0x8033, 0x0055, 0x0033 and 0x80AA the transmitted parity of data 0x15, 0x33,