PIC32 Interrupts Overview

Last modified by Microchip on 2023/11/15 04:53

The Interrupt Controller module exists external to the CPU Execution Unit and prioritizes the interrupt events before presenting them to the CPU. The module includes the following features:

  • Up to 256 interrupt sources
  • Single and Multi-Vector mode operations
  • Up to five external interrupts with edge polarity control
  • Interrupt proximity timer
  • Seven user-selectable priority levels for each vector
  • Four user-selectable sub-priority levels within each priority
  • User-configurable shadow set based on priority level (this feature is not available on all devices; refer to the Interrupt Controller chapter in the specific device data sheet for availability)
  • Software can generate any interrupt

Hardware Abstraction Model

The Interrupt Controller receives requests from multiple Interrupt Sources. The Interrupt Controller Configuration controls the overall operation of the interrupt controller. Not all microcontrollers support all the following features listed:

Hardware Abstraction Model

  • Interrupt nesting configuration
  • Edge selection of the external interrupts
  • Vector mode selection
  • Priority level configuration
  • Current CPU interrupt and priority status information

Back to top

Detailed Overview

The following pages provide detailed coverage of the PIC32 Exception processing hardware, as well as basic configuration and usage using the MPLAB® XC32 compiler C-language extensions:

PIC32MX Interrupt & Exception Mechanism

PIC32MZ Interrupt & Exception Mechanism

Back to top