Rev. 1.10
170
October 23, 2020
Rev. 1.10
171
October 23, 2020
BC66F5652
2.4GHz RF Transceiver A/D Flash MCU
BC66F5652
2.4GHz RF Transceiver A/D Flash MCU
Managing Receiver Errors
Several types of reception errors can occur within the UART module, the following section describes
the various types and how they are managed by the UART.
Overrun Error – OERR
The TXR_RXR register is composed of a two byte deep FIFO data buffer, where two bytes can be
held in the FIFO register, while a third byte can continue to be received. Before this third byte has
been entirely shifted in, the data should be read from the TXR_RXR register. If this is not done, the
overrun error flag OERR will be consequently indicated.
In the event of an overrun error occurring, the following will happen:
•
The OERR flag in the USR register will be set.
• The TXR_RXR contents will not be lost.
• The shift register will be overwritten.
• An interrupt will be generated if the RIE bit is set.
The OERR flag can be cleared by an access to the USR register followed by a read to the TXR_
RXR register.
Noise Error – NF
Over-sampling is used for data recovery to identify valid incoming data and noise. If noise is
detected within a frame the following will occur:
•
The read only noise flag, NF, in the USR register will be set on the rising edge of the RXIF bit.
• Data will be transferred from the Shift register to the TXR_RXR register.
• No interrupt will be generated. However this bit rises at the same time as the RXIF bit which
itself generates an interrupt.
Note that the NF flag is reset by a USR register read operation followed by a TXR_RXR register
read operation.
Framing Error – FERR
The read only framing error flag, FERR, in the USR register, is set if a zero is detected instead of
stop bits. If two stop bits are selected, both stop bits must be high; otherwise the FERR flag will
be set. The FERR flag and the received data will be recorded in the USR and TXR_RXR registers
respectively, and the flag is cleared in any reset.
Parity Error – PERR
The read only parity error flag, PERR, in the USR register, is set if the parity of the received word is
incorrect. This error flag is only applicable if the parity is enabled, PREN=1, and if the parity type,
odd or even is selected. The read only PERR flag and the received data will be recorded in the USR
and TXR_RXR registers respectively. It is cleared on any reset, it should be noted that the flags,
FERR and PERR, in the USR register should first be read by the application program before reading
the data word.