Information

2010 Microchip Technology Inc. DS80506C-page 5
PIC18F47J53 FAMILY
7. Module: Enhanced Universal
Synchronous Asynchronous
Receiver Transmitter (EUSART)
In rare situations when interrupts are enabled,
unexpected results may occur if:
The EUSART is disabled (SPEN bit
(RCSTAx<7>) = 0)
The EUSART is re-enabled (RCSTAx<7> = 1)
A two-cycle instruction is executed immediately
after setting SPEN, CREN or TXEN = 1
Work around
Add a 2 TCY delay after any instruction that re-
enables the EUSART module (sets SPEN, CREN
or TXEN = 1).
See Example 1.
Affected Silicon Revisions
EXAMPLE 1: RE-ENABLING AN EUSART MODULE
A1
X
;Initial conditions: SPEN = 0 (module disabled)
;To re-enable the module:
;Re-Initialize TXSTAx, BAUDCONx, SPBRGx, SPBRGHx registers (if needed)
;Re-Initialize RCSTAx register (if needed), but do not set SPEN = 1 yet
;Now enable the module, but add a 2-Tcy delay before executing any two-cycle
;instructions
bsf RCSTA1, SPEN ;or RCSTA2 if EUSART2
nop ;1 Tcy delay
nop ;1 Tcy delay (two total)