MCUXpresso SDK API Reference Manual
Rev. 1
NXP Semiconductors
|
The MCUXpresso SDK provides a peripheral driver for the Interrupt Request Steering (IRQSTEER) module of MCUXpresso SDK devices. The IrqSteer module redirects/steers the incoming interrupts to output interrupts of a selected/designated channel as specified by a set of configuration registers.
Macros | |
#define | IRQSTEER_INT_SRC_REG_WIDTH 32U |
IRQSTEER interrupt source register width. More... | |
#define | IRQSTEER_INT_SRC_REG_INDEX(irq) |
IRQSTEER interrupt source mapping register index. More... | |
#define | IRQSTEER_INT_SRC_BIT_OFFSET(irq) ((irq - FSL_FEATURE_IRQSTEER_IRQ_START_INDEX) % IRQSTEER_INT_SRC_REG_WIDTH) |
IRQSTEER interrupt source mapping bit offset. More... | |
#define | IRQSTEER_INT_SRC_NUM(regIndex, bitOffset) (((FSL_FEATURE_IRQSTEER_CHn_MASK_COUNT - 1U - (regIndex)) * IRQSTEER_INT_SRC_REG_WIDTH) + (bitOffset)) |
IRQSTEER interrupt source number. More... | |
Driver version | |
#define | FSL_IRQSTEER_DRIVER_VERSION (MAKE_VERSION(2, 0, 1)) |
< Version 2.0.1. More... | |
Initialization and deinitialization | |
void | IRQSTEER_Init (IRQSTEER_Type *base) |
Initializes the IRQSTEER module. More... | |
void | IRQSTEER_Deinit (IRQSTEER_Type *base) |
Deinitializes an IRQSTEER instance for operation. More... | |
Sources | |
static void | IRQSTEER_EnableInterrupt (IRQSTEER_Type *base, IRQn_Type irq) |
Enables an interrupt source. More... | |
static void | IRQSTEER_DisableInterrupt (IRQSTEER_Type *base, IRQn_Type irq) |
Disables an interrupt source. More... | |
static void | IRQSTEER_SetInterrupt (IRQSTEER_Type *base, IRQn_Type irq, bool set) |
Sets/Forces an interrupt. More... | |
static void | IRQSTEER_EnableMasterInterrupt (IRQSTEER_Type *base, irqsteer_int_master_t intMasterIndex) |
Enables a master interrupt. More... | |
static void | IRQSTEER_DisableMasterInterrupt (IRQSTEER_Type *base, irqsteer_int_master_t intMasterIndex) |
Disables a master interrupt. More... | |
Status | |
static bool | IRQSTEER_IsInterruptSet (IRQSTEER_Type *base, IRQn_Type irq) |
Checks the status of one specific IRQSTEER interrupt. More... | |
static bool | IRQSTEER_IsMasterInterruptSet (IRQSTEER_Type *base) |
Checks the status of IRQSTEER master interrupt. More... | |
static uint32_t | IRQSTEER_GetGroupInterruptStatus (IRQSTEER_Type *base, irqsteer_int_group_t intGroupIndex) |
Gets the status of IRQSTEER group interrupt. More... | |
IRQn_Type | IRQSTEER_GetMasterNextInterrupt (IRQSTEER_Type *base, irqsteer_int_master_t intMasterIndex) |
Gets the next interrupt source (currently set) of one specific master. More... | |
#define FSL_IRQSTEER_DRIVER_VERSION (MAKE_VERSION(2, 0, 1)) |
#define IRQSTEER_INT_SRC_REG_WIDTH 32U |
#define IRQSTEER_INT_SRC_REG_INDEX | ( | irq | ) |
#define IRQSTEER_INT_SRC_BIT_OFFSET | ( | irq | ) | ((irq - FSL_FEATURE_IRQSTEER_IRQ_START_INDEX) % IRQSTEER_INT_SRC_REG_WIDTH) |
#define IRQSTEER_INT_SRC_NUM | ( | regIndex, | |
bitOffset | |||
) | (((FSL_FEATURE_IRQSTEER_CHn_MASK_COUNT - 1U - (regIndex)) * IRQSTEER_INT_SRC_REG_WIDTH) + (bitOffset)) |
enum irqsteer_int_group_t |
void IRQSTEER_Init | ( | IRQSTEER_Type * | base | ) |
This function enables the clock gate for the specified IRQSTEER.
base | IRQSTEER peripheral base address. |
void IRQSTEER_Deinit | ( | IRQSTEER_Type * | base | ) |
The clock gate for the specified IRQSTEER is disabled.
base | IRQSTEER peripheral base address. |
|
inlinestatic |
base | IRQSTEER peripheral base address. |
irq | Interrupt to be routed. The interrupt must be an IRQSTEER source. |
|
inlinestatic |
base | IRQSTEER peripheral base address. |
intSrc | Interrupt source number. The interrupt must be an IRQSTEER source. |
|
inlinestatic |
base | IRQSTEER peripheral base address. |
intSrc | Interrupt to be set/forced. The interrupt must be an IRQSTEER source. |
set | Switcher of the interrupt set/force function. "true" means to set. "false" means not (normal operation). |
|
inlinestatic |
By default, all the master interrupts are enabled.
base | IRQSTEER peripheral base address. |
intMasterIndex | Master index of interrupt sources to be routed. "irqsteer_int_master_t". |
For example, to enable the interrupt sources of master 1:
|
inlinestatic |
base | IRQSTEER peripheral base address. |
intMasterIndex | Master index of interrupt sources to be disabled. "irqsteer_int_master_t". |
For example, to disable the interrupt sources of master 1:
|
inlinestatic |
base | IRQSTEER peripheral base address. |
intSrc | Interrupt source status to be checked. The interrupt must be an IRQSTEER source. |
For example, to check whether interrupt from output 0 of Display 1 is set:
|
inlinestatic |
The master interrupt status represents at least one interrupt is asserted or not among ALL interrupts.
base | IRQSTEER peripheral base address. |
|
inlinestatic |
The group interrupt status represents all the interrupt status within the group specified. This API aims for facilitating the status return of one set of interrupts.
base | IRQSTEER peripheral base address. |
intGroupIndex | Index of the interrupt group status to get. |
IRQn_Type IRQSTEER_GetMasterNextInterrupt | ( | IRQSTEER_Type * | base, |
irqsteer_int_master_t | intMasterIndex | ||
) |
base | IRQSTEER peripheral base address. |
intMasterIndex | Master index of interrupt sources. "irqsteer_int_master_t". |