22.3.2.1.1 Software Design Flow
The software design flow consists of enabling the interrupts and the implementation of interrupt handlers. The interrupt handler executes on the occurrence of interrupts. The following is a description of the software application programming interfaces (APIs).
Enabling the Fabric to the MSS Interrupt
This function enables the fabric to the MSS interrupt, MSS_INT_F2M, in the Cortex-M3 NVIC interrupt controller by calling the following API:
NVIC_EnableIRQ (FabricIrqX_IRQn);
where X can be set from 0 to15.
FabricIrqX_IRQn represents interrupt source numbers, which are connected to the NVIC of the Cortex-M3 processor in the MSS. The following table gives the interrupt source numbers that correspond to the fabric to MSS interrupt, MSS_INT_F2M, signals.
F2M Interrupt Signal | Interrupt Number | Interrupt Type |
---|---|---|
MSS_INT_F2M [0] | 34 | FabricIrq0_IRQn |
MSS_INT_F2M [1] | 35 | FabricIrq1_IRQn |
MSS_INT_F2M [2] | 36 | FabricIrq2_IRQn |
MSS_INT_F2M [3] | 37 | FabricIrq3_IRQn |
MSS_INT_F2M [4] | 38 | FabricIrq4_IRQn |
MSS_INT_F2M [5] | 39 | FabricIrq5_IRQn |
MSS_INT_F2M [6] | 40 | FabricIrq6_IRQn |
MSS_INT_F2M [7] | 41 | FabricIrq7_IRQn |
MSS_INT_F2M [8] | 42 | FabricIrq8_IRQn |
MSS_INT_F2M [9] | 43 | FabricIrq9_IRQn |
MSS_INT_F2M [10] | 44 | FabricIrq10_IRQn |
MSS_INT_F2M [11] | 45 | FabricIrq11_IRQn |
MSS_INT_F2M [12] | 46 | FabricIrq12_IRQn |
MSS_INT_F2M [13] | 47 | FabricIrq13_IRQn |
MSS_INT_F2M [14] | 48 | FabricIrq14_IRQn |
MSS_INT_F2M [15] | 49 | FabricIrq15_IRQn |
For more information, see the interrupts section in the 1 Cortex-M3 Processor Overview and Debug Features.
Fabric to the MSS Interrupt Handler
This interrupt handler executes on the occurrence of the fabric to MSS interrupts. This is done by calling the following API:
void FabricIrqX_IRQHandler (void);
where X can be set from 0 to 15.
Clearing the Pending Interrupt
The NVIC_ClearPendingIRQ() function is used to clear the interrupt in the Cortex-M3 interrupt controller (NVIC). The following API is used to clear the fabric to the MSS interrupt:
NVIC_ClearPendingIRQ(FabricIrqX_IRQn);
where X can be set from 0 to 15.