English
Language : 

PIC16LC63A-04 Datasheet, PDF (70/184 Pages) Microchip Technology – 8-Bit CMOS Microcontrollers with A/D Converter
PIC16C63A/65B/73B/74B
11.2.2
USART ASYNCHRONOUS
RECEIVER
The receiver block diagram is shown in Figure 11-4.
The data is received on the RC7/RX/DT pin and drives
the data recovery block. The data recovery block is
actually a high speed shifter operating at x16 times the
baud rate, whereas the main receive serial shifter oper-
ates at the bit rate or at FOSC.
Once Asynchronous mode is selected, reception is
enabled by setting bit CREN (RCSTA<4>).
The heart of the receiver is the receive (serial) shift reg-
ister (RSR). After sampling the STOP bit, the received
data in the RSR is transferred to the RCREG register (if
it is empty). If the transfer is complete, USART Receive
Flag bit RCIF (PIR1<5>) is set. This interrupt can be
enabled/disabled by setting/clearing the USART
Receive Enable bit RCIE (PIE1<5>).
Flag bit RCIF is a read only bit, which is cleared by the
hardware. It is cleared when the RCREG register has
been read and is empty. The RCREG is a double buff-
ered register, i.e., it is a two-deep FIFO. It is possible
for two bytes of data to be received and transferred to
the RCREG FIFO and a third byte to begin shifting to
the RSR register. On the detection of the STOP bit of
the third byte, if the RCREG register is still full, then
overrun error bit OERR (RCSTA<1>) will be set. The
word in the RSR will be lost. The RCREG register can
be read twice to retrieve the two bytes in the FIFO.
Overrun bit OERR has to be cleared in software. This
is done by resetting the receive logic (CREN is cleared
and then set). If bit OERR is set, transfers from the
RSR register to the RCREG register are inhibited, and
no further data will be received; therefore, it is essential
to clear error bit OERR if it is set. Framing error bit
FERR (RCSTA<2>) is set if a STOP bit is detected as
clear. Bit FERR and the 9th receive bit are buffered the
same way as the receive data. Reading the RCREG
will load bits RX9D and FERR with new values, there-
fore, it is essential for the user to read the RCSTA reg-
ister before reading the RCREG register, in order not to
lose the old FERR and RX9D information.
FIGURE 11-4:
USART RECEIVE BLOCK DIAGRAM
x64 Baud Rate CLK
FOSC
SPBRG
Baud Rate Generator
RC7/RX/DT
Pin Buffer
and Control
CREN
÷ 64
or
÷ 16
OERR
FERR
MSb
STOP (8)
RSR Register
7 ••• 1
LSb
0 START
Data
Recovery
RX9
SPEN
Interrupt
RX9D
RCREG Register
FIFO
RCIF
RCIE
8
Data Bus
DS30605C-page 70
 2000 Microchip Technology Inc.