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
| Name | Description |
|---|---|
| INTC_Initialize | Configures and initializes the interrupt subsystem |
| INTC_SourceEnable | Enables the interrupt source |
| INTC_SourceDisable | Disables the interrupt source |
| INTC_SourceIsEnabled | Gets the enable state of the interrupt source |
| INTC_SourceStatusGet | Returns the status of the interrupt flag for the selected source |
| INTC_SourceStatusSet | Sets the status of the interrupt flag for the selected source |
| INTC_SourceStatusClear | Clears the status of the interrupt flag for the selected source |
| INTC_Enable | Enables all global interrupts. |
| INTC_Disable | Saves the current state of global interrupts and then disables all global interrupts. |
| INTC_Restore | Restores the state of global interrupts before the disable occurred. |
| INTC_ExternalInterruptCallbackRegister | Allows application to register callback for every external interrupt pin |
| INTC_ExternalInterruptEnable | Enables external interrupt on selected external interrupt pins |
| INTC_ExternalInterruptDisable | Disables external interrupt on selected external interrupt pins |
Data types and constants
| Name | Type | Description |
|---|---|---|
| INT_SOURCE | Enum | Identifies interrupt sources |
| EXTERNAL_INT_PIN | Enum | Identifies the active external interrupt pins |
| EXTERNAL_INT_PIN_CALLBACK | Typedef | Pointer to a external Pin-Event handler function |
