English
Language : 

PIC16F946 Datasheet, PDF (144/274 Pages) Microchip Technology – 64-Pin Flash-Based, 8-Bit CMOS Microcontrollers with LCD Driver and nanoWatt Technology
PIC16F946
11.2.3
SETTING UP 9-BIT MODE WITH
ADDRESS DETECT
When setting up an Asynchronous Reception with
address detect enabled:
• Initialize the SPBRG register for the appropriate
baud rate. If a high-speed baud rate is desired,
set bit BRGH.
• Enable the asynchronous serial port by clearing
bit SYNC and setting bit SPEN.
• If interrupts are desired, then set enable bit RCIE.
• Set bit RX9 to enable 9-bit reception.
• Set ADDEN to enable address detect.
• Enable the reception by setting enable bit CREN.
• Flag bit RCIF will be set when reception is
complete, and an interrupt will be generated if
enable bit RCIE was set.
• Read the RCSTA register to get the ninth bit and
determine if any error occurred during reception.
• Read the 8-bit received data by reading the
RCREG register to determine if the device is
being addressed.
• If any error occurred, clear the error by clearing
enable bit CREN.
• If the device has been addressed, clear the
ADDEN bit to allow data bytes and address bytes
to be read into the receive buffer and interrupt the
CPU.
FIGURE 11-6:
USART RECEIVE BLOCK DIAGRAM
FOSC
x64 Baud Rate CLK
SPBRG
Baud Rate Generator
RC7/RX/DT
SDI/SDA/SEG8
Pin Buffer
and Control
CREN
÷ 64
or
÷ 16
OERR
FERR
MSb
RSR Register
LSb
Stop (8) 7 • • • 1 0 Start
Data
Recovery
RX9
8
SPEN
RX9
ADDEN
RX9
ADDEN
RSR<8>
Enable
Load of
Receive
Buffer
8
RX9D
RCREG Register
FIFO
Interrupt
RCIF
RCIE
8
Data Bus
DS41265A-page 142
Preliminary
© 2005 Microchip Technology Inc.