Fork of the official mbed C/C++ SDK provides the software platform and libraries to build your applications. The fork has the documentation converted to Doxygen format
Dependents: NervousPuppySprintOne NervousPuppySprint2602 Robot WarehouseBot1 ... more
Fork of mbed by
NVIC Functions
[Functions and Instructions Reference]
Functions that manage interrupts and exceptions via the NVIC. More...
Functions | |
__STATIC_INLINE void | NVIC_EnableIRQ (IRQn_Type IRQn) |
Enable External Interrupt. | |
__STATIC_INLINE void | NVIC_DisableIRQ (IRQn_Type IRQn) |
Disable External Interrupt. | |
__STATIC_INLINE uint32_t | NVIC_GetPendingIRQ (IRQn_Type IRQn) |
Get Pending Interrupt. | |
__STATIC_INLINE void | NVIC_SetPendingIRQ (IRQn_Type IRQn) |
Set Pending Interrupt. | |
__STATIC_INLINE void | NVIC_ClearPendingIRQ (IRQn_Type IRQn) |
Clear Pending Interrupt. | |
__STATIC_INLINE void | NVIC_SetPriority (IRQn_Type IRQn, uint32_t priority) |
Set Interrupt Priority. | |
__STATIC_INLINE uint32_t | NVIC_GetPriority (IRQn_Type IRQn) |
Get Interrupt Priority. | |
__STATIC_INLINE void | NVIC_SystemReset (void) |
System Reset. | |
__STATIC_INLINE void | NVIC_SetPriorityGrouping (uint32_t PriorityGroup) |
Set Priority Grouping. | |
__STATIC_INLINE uint32_t | NVIC_GetPriorityGrouping (void) |
Get Priority Grouping. | |
__STATIC_INLINE uint32_t | NVIC_GetActive (IRQn_Type IRQn) |
Get Active Interrupt. | |
__STATIC_INLINE uint32_t | NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) |
Encode Priority. | |
__STATIC_INLINE void | NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t *pPreemptPriority, uint32_t *pSubPriority) |
Decode Priority. |
Detailed Description
Functions that manage interrupts and exceptions via the NVIC.
Function Documentation
__STATIC_INLINE void NVIC_ClearPendingIRQ | ( | IRQn_Type | IRQn ) |
Clear Pending Interrupt.
The function clears the pending bit of an external interrupt.
- Parameters:
-
[in] IRQn External interrupt number. Value cannot be negative.
Definition at line 550 of file core_cm0.h.
__STATIC_INLINE void NVIC_DecodePriority | ( | uint32_t | Priority, |
uint32_t | PriorityGroup, | ||
uint32_t * | pPreemptPriority, | ||
uint32_t * | pSubPriority | ||
) |
Decode Priority.
The function decodes an interrupt priority value with a given priority group to preemptive priority value and subpriority value. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS) the samllest possible priority group is set.
- Parameters:
-
[in] Priority Priority value, which can be retrieved with the function NVIC_GetPriority(). [in] PriorityGroup Used priority group. [out] pPreemptPriority Preemptive priority value (starting from 0). [out] pSubPriority Subpriority value (starting from 0).
Definition at line 1398 of file core_cm3.h.
__STATIC_INLINE void NVIC_DisableIRQ | ( | IRQn_Type | IRQn ) |
Disable External Interrupt.
The function disables a device-specific interrupt in the NVIC interrupt controller.
- Parameters:
-
[in] IRQn External interrupt number. Value cannot be negative.
Definition at line 510 of file core_cm0.h.
__STATIC_INLINE void NVIC_EnableIRQ | ( | IRQn_Type | IRQn ) |
Enable External Interrupt.
The function enables a device-specific interrupt in the NVIC interrupt controller.
- Parameters:
-
[in] IRQn External interrupt number. Value cannot be negative.
Definition at line 498 of file core_cm0.h.
__STATIC_INLINE uint32_t NVIC_EncodePriority | ( | uint32_t | PriorityGroup, |
uint32_t | PreemptPriority, | ||
uint32_t | SubPriority | ||
) |
Encode Priority.
The function encodes the priority for an interrupt with the given priority group, preemptive priority value, and subpriority value. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS), the samllest possible priority group is set.
- Parameters:
-
[in] PriorityGroup Used priority group. [in] PreemptPriority Preemptive priority value (starting from 0). [in] SubPriority Subpriority value (starting from 0).
- Returns:
- Encoded priority. Value can be used in the function NVIC_SetPriority().
Definition at line 1370 of file core_cm3.h.
__STATIC_INLINE uint32_t NVIC_GetActive | ( | IRQn_Type | IRQn ) |
Get Active Interrupt.
The function reads the active register in NVIC and returns the active bit.
- Parameters:
-
[in] IRQn Interrupt number.
- Returns:
- 0 Interrupt status is not active.
- 1 Interrupt status is active.
Definition at line 1313 of file core_cm3.h.
__STATIC_INLINE uint32_t NVIC_GetPendingIRQ | ( | IRQn_Type | IRQn ) |
Get Pending Interrupt.
The function reads the pending register in the NVIC and returns the pending bit for the specified interrupt.
- Parameters:
-
[in] IRQn Interrupt number.
- Returns:
- 0 Interrupt status is not pending.
- 1 Interrupt status is pending.
Definition at line 526 of file core_cm0.h.
__STATIC_INLINE uint32_t NVIC_GetPriority | ( | IRQn_Type | IRQn ) |
Get Interrupt Priority.
The function reads the priority of an interrupt. The interrupt number can be positive to specify an external (device specific) interrupt, or negative to specify an internal (core) interrupt.
- Parameters:
-
[in] IRQn Interrupt number.
- Returns:
- Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller.
Definition at line 587 of file core_cm0.h.
__STATIC_INLINE uint32_t NVIC_GetPriorityGrouping | ( | void | ) |
Get Priority Grouping.
The function reads the priority grouping field from the NVIC Interrupt Controller.
- Returns:
- Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field).
Definition at line 1234 of file core_cm3.h.
__STATIC_INLINE void NVIC_SetPendingIRQ | ( | IRQn_Type | IRQn ) |
Set Pending Interrupt.
The function sets the pending bit of an external interrupt.
- Parameters:
-
[in] IRQn Interrupt number. Value cannot be negative.
Definition at line 538 of file core_cm0.h.
__STATIC_INLINE void NVIC_SetPriority | ( | IRQn_Type | IRQn, |
uint32_t | priority | ||
) |
Set Interrupt Priority.
The function sets the priority of an interrupt.
- Note:
- The priority cannot be set for every core interrupt.
- Parameters:
-
[in] IRQn Interrupt number. [in] priority Priority to set.
Definition at line 565 of file core_cm0.h.
__STATIC_INLINE void NVIC_SetPriorityGrouping | ( | uint32_t | PriorityGroup ) |
Set Priority Grouping.
The function sets the priority grouping field using the required unlock sequence. The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. Only values from 0..7 are used. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set.
- Parameters:
-
[in] PriorityGroup Priority grouping field.
Definition at line 1214 of file core_cm3.h.
__STATIC_INLINE void NVIC_SystemReset | ( | void | ) |
System Reset.
The function initiates a system reset request to reset the MCU.
Definition at line 601 of file core_cm0.h.
Generated on Tue Jul 12 2022 11:27:28 by 1.7.2