3.2.12 Interrupt Controller (INTC)

The device family interrupt controller reduces the numerous peripheral interrupt

request signals to a single interrupt request signal to the device family CPU.

The core supports a prioritized interrupt and trap exception scheme.

The interrupt controller has the following features:

  • Interrupt Vector Tables (IVT) for User memory
  • Parameterized Number of Interrupt Sources
  • Reset vector (not part of IVT)
  • 8 processor traps
  • Up to 31 generic traps + 1 software trap
  • 7 user selectable priority levels
  • A unique vector for each interrupt or exception in full IVT mode
  • A collapsed vector (logical OR) for all peripheral Interrupts
  • Fixed priority within a specified user priority level
  • Predictable latencies
  • Software can generate any peripheral interrupt
  • Alternate IVT availability via IVTBASE
  • Support for Testability via INTTREG
Note: Not all APIs maybe implemented. See the specific device family section for available APIs.

Library Interface

Enhanced Vectored Interrupt Controller peripheral library provides the following interfaces:

Functions

NameDescription
INTC_InitializeConfigures and initializes the interrupt subsystem
INTC_SourceEnableEnables the interrupt source
INTC_SourceDisableDisables the interrupt source
INTC_SourceIsEnabledGets the enable state of the interrupt source
INTC_SourceStatusGetReturns the status of the interrupt flag for the selected source
INTC_SourceStatusSetSets the status of the interrupt flag for the selected source
INTC_SourceStatusClearClears the status of the interrupt flag for the selected source
INTC_EnableEnables all global interrupts.
INTC_DisableSaves the current state of global interrupts and then disables all global interrupts.
INTC_RestoreRestores the state of global interrupts before the disable occurred.
INTC_ExternalInterruptCallbackRegisterAllows application to register callback for every external interrupt pin
INTC_ExternalInterruptEnableEnables external interrupt on selected external interrupt pins
INTC_ExternalInterruptDisableDisables external interrupt on selected external interrupt pins

Data types and constants

NameTypeDescription
INT_SOURCEEnumIdentifies interrupt sources
EXTERNAL_INT_PINEnumIdentifies the active external interrupt pins
EXTERNAL_INT_PIN_CALLBACKTypedefPointer to a external Pin-Event handler function