CC23x0R5DriverLibrary
|
Functions | |
void | IntRegister (uint32_t intNum, void(*handler)(void)) |
Registers a function as an interrupt handler in the dynamic vector table. More... | |
void | IntUnregister (uint32_t intNum) |
Unregisters an interrupt handler in the dynamic vector table. More... | |
void | IntSetPriority (uint32_t intNum, uint8_t priority) |
Sets the priority of an interrupt. More... | |
int32_t | IntGetPriority (uint32_t intNum) |
Gets the priority of an interrupt. More... | |
void | IntEnable (uint32_t intNum) |
Enables an interrupt or system exception. More... | |
void | IntDisable (uint32_t intNum) |
Disables an interrupt or system exception. More... | |
void | IntSetPend (uint32_t intNum) |
Pends an interrupt. More... | |
bool | IntGetPend (uint32_t intNum) |
Checks if an interrupt is pending. More... | |
void | IntClearPend (uint32_t intNum) |
Unpends an interrupt. More... | |
__STATIC_INLINE bool | IntEnableMaster (void) |
Enables the CPU interrupt. More... | |
__STATIC_INLINE bool | IntDisableMaster (void) |
Disables the CPU interrupts with configurable priority. More... | |
void IntRegister | ( | uint32_t | intNum, |
void(*)(void) | handler | ||
) |
Registers a function as an interrupt handler in the dynamic vector table.
This function writes a function pointer to the dynamic interrupt vector table in SRAM to register the function as an interrupt handler (ISR). When the corresponding interrupt occurs, and it has been enabled (see IntEnable()), the function pointer is fetched from the dynamic vector table, and the System CPU will execute the interrupt handler.
intNum | specifies the index in the vector table to modify.
|
handler | is a pointer to the function to register as interrupt handler. |
Referenced by SPIRegisterInt(), SysTickRegisterInt(), and uDMARegisterInt().
void IntUnregister | ( | uint32_t | intNum | ) |
Unregisters an interrupt handler in the dynamic vector table.
This function removes an interrupt handler from the dynamic vector table and replaces it with the default interrupt handler IntDefaultHandler().
intNum | specifies the index in the vector table to modify.
|
References ASSERT, IntDefaultHandler(), and NUM_INTERRUPTS.
Referenced by SPIUnregisterInt(), SysTickUnregisterInt(), and uDMAUnregisterInt().
void IntSetPriority | ( | uint32_t | intNum, |
uint8_t | priority | ||
) |
Sets the priority of an interrupt.
This function sets the priority of an interrupt, including system exceptions. When multiple interrupts are asserted simultaneously, the ones with the highest priority are processed before the lower priority interrupts. Smaller numbers correspond to higher interrupt priorities thus priority 0 is the highest interrupt priority.
intNum | specifies the index in the vector table to change priority for.
|
priority | specifies the priority of the interrupt.
|
References ASSERT, INT_PRI_LEVEL3, INT_PRIORITY_MASK, IntDisable(), IntEnable(), NUM_INTERRUPTS, NVIC, and SCB.
int32_t IntGetPriority | ( | uint32_t | intNum | ) |
Gets the priority of an interrupt.
This function gets the priority of an interrupt.
intNum | specifies the index in the vector table to read priority of.
|
References ASSERT, INT_PRIORITY_MASK, NUM_INTERRUPTS, NVIC, and SCB.
void IntEnable | ( | uint32_t | intNum | ) |
Enables an interrupt or system exception.
This function enables the specified interrupt in the interrupt controller.
intNum | specifies the index in the vector table to enable. |
References ASSERT, INT_SYSTICK, NUM_INTERRUPTS, NVIC, SysTick, and SysTick_CTRL_TICKINT_Msk.
Referenced by IntSetPriority(), SPIRegisterInt(), and uDMARegisterInt().
void IntDisable | ( | uint32_t | intNum | ) |
Disables an interrupt or system exception.
This function disables the specified interrupt in the interrupt controller.
intNum | specifies the index in the vector table to disable.
|
References ASSERT, INT_SYSTICK, NUM_INTERRUPTS, NVIC, SysTick, and SysTick_CTRL_TICKINT_Msk.
Referenced by IntSetPriority(), SPIUnregisterInt(), and uDMAUnregisterInt().
void IntSetPend | ( | uint32_t | intNum | ) |
Pends an interrupt.
This function pends the specified interrupt in the interrupt controller. This causes the interrupt controller to execute the corresponding interrupt handler at the next available time, based on the current interrupt state priorities.
This interrupt controller automatically clears the pending interrupt once the interrupt handler is executed.
intNum | specifies the index in the vector table to pend. |
References ASSERT, INT_NMI_FAULT, INT_PENDSV, INT_SYSTICK, NUM_INTERRUPTS, NVIC, SCB, SCB_ICSR_NMIPENDSET_Msk, SCB_ICSR_PENDSTSET_Msk, and SCB_ICSR_PENDSVSET_Msk.
bool IntGetPend | ( | uint32_t | intNum | ) |
Checks if an interrupt is pending.
This function checks the interrupt controller to see if an interrupt is pending.
The interrupt must be enabled in order for the corresponding interrupt handler to be executed, so an interrupt can be pending waiting to be enabled or waiting for an interrupt of higher priority to be done executing.
intNum | specifies the index in the vector table to check pending status for.
|
true
: Specified interrupt is pending.false
: Specified interrupt is not pending. References ASSERT, NUM_INTERRUPTS, and NVIC.
void IntClearPend | ( | uint32_t | intNum | ) |
Unpends an interrupt.
This function unpends the specified interrupt in the interrupt controller. This causes any previously generated interrupts that have not been handled yet (due to higher priority interrupts or the interrupt no having been enabled yet) to be discarded.
intNum | specifies the index in the vector table to unpend.
|
References ASSERT, INT_PENDSV, INT_SYSTICK, NUM_INTERRUPTS, NVIC, SCB, SCB_ICSR_PENDSTCLR_Msk, and SCB_ICSR_PENDSVCLR_Msk.
__STATIC_INLINE bool IntEnableMaster | ( | void | ) |
Enables the CPU interrupt.
Allows the CPU to respond to interrupts.
true
: Interrupts were disabled and are now enabled.false
: Interrupts were already enabled when the function was called. References __enable_irq(), and __get_PRIMASK().
Referenced by TempDiodeGetTemp().
__STATIC_INLINE bool IntDisableMaster | ( | void | ) |
Disables the CPU interrupts with configurable priority.
Prevents the CPU from receiving interrupts except NMI and hard fault. This does not affect the set of interrupts enabled in the interrupt controller; it just gates the interrupt from the interrupt controller to the CPU.
true
: Interrupts were already disabled when the function was called.false
: Interrupts were enabled and are now disabled. References __disable_irq(), and __get_PRIMASK().
Referenced by TempDiodeGetTemp().