PIC18F Extended, PIC18FXXK Limitations

PIC18F Extended refers to a PIC18F MCU with an extended instruction set. Consult your device datasheet to see if your device has this feature. These have the following limitations:

  • General Debug Limitations.
  • General Programming Limitations.
  • The SLEEP instruction cannot be used when debugging.
  • The Watchdog Timer (WDT) cannot be used when debugging.
  • You cannot view the stack even though you can access it.
  • You cannot single step through an interrupt. Due to hardware restrictions, the debugger or emulator cannot jump to the interrupt vector memory location in Single Step mode.
  • Breakpoints can corrupt Shadow registers. Shadow register values can be trashed if a breakpoint is set inside a routine where they are used. If you need to use a breakpoint in this situation, store values elsewhere.
  • Data breakpoints do not halt on the STKPTR register. The data comparator in the silicon does not have access to the STKPTR register, so breaks on stack pointer will not occur.
  • Compare output zero after program halt. For all CCP/ECCP modules, any compare operation followed by a program halt results in the CCP pin going and staying low. Capture and Pulse Width Modulation (PWM) are not affected.
  • Capture generates a false interrupt on Run after Halt. A false interrupt is generated when (1) Freeze Peripherals on Halt is enabled and (2) Capture is configured to trigger on the rising edge and capture input is high, or Capture is configured to trigger on falling edge and capture input is low.
  • Trace and Log macros within tight loops do not work when using IO PORT Trace. The workaround is to use NOP instructions within the loop (EM).

For PIC18F4553 Only

  • Serial Peripheral Interface (SPI) Trace does not work. There is a silicon errata (DS83023) that reports a problem with SPI (EM).

For PIC18F87K90 Only

  • You cannot enter Debug mode when the power-up timer is enabled. If you are not able to enter Debug mode when the power-up timer is enabled for the following devices, please disable the power-up timer during the debugging session. (If the final application firmware requires the power-up timer to be enabled; please enable it after the debugging session is complete and program the part with the final application firmware.)
    • PIC18F4620/4610/2620/2610
    • PIC18F4680/2680/4681/2681
    • PIC18F4520/4420/2520/2420
    • PIC18F4550/2550/4455/2455
    • PIC18F8490/8410/6490/6410/8390/8310/6390/6310
    • PIC18F8722/8627/8622/8527/6722/6627/6622/6527
    • PIC18F2525/4525
    • PIC18F87K90/PIC18F86K90/PIC18F85K90/PIC18F67K90/PIC18F66K90/PIC18F65K90
    • PIC18F87K22/PIC18F86K22/PIC18F85K22/PIC18F67K22/PIC18F66K22/PIC18F65K22
© 2020 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.