1.2.2 Unintended Double Execution of the CALL Instruction

The CALL function will be executed twice if the following conditions are met:
  • EUSART Receive Interrupt is enabled (RCIE = 1)
  • EUSART is disabled (SPEN = 0) as the Receive Interrupt (RCIF) is set within the same clock cycle
  • The next instruction is a function call (CALL function)

Work around

Disable the Receive Interrupt (RCIE = 0) prior to turning off the EUSART module.

Affected Silicon Revisions

A2A3A4A6A7
XXXXX