esp32/include/irq_arch.h¶
Implementation of the kernels irq interface.
-
CPU_INUM_GPIO¶ fixed allocated CPU interrupt numbers that are used by RIOT
1
2 /* level interrupt, low priority = 1 */
-
CPU_INUM_CAN¶ 1
3 /* level interrupt, low priority = 1 */
-
CPU_INUM_UART¶ 1
5 /* level interrupt, low priority = 1 */
-
CPU_INUM_RTC¶ 1
9 /* level interrupt, low priority = 1 */
-
CPU_INUM_I2C¶ 1
12 /* level interrupt, low priority = 1 */
-
CPU_INUM_WDT¶ 1
13 /* level interrupt, low priority = 1 */
-
CPU_INUM_SOFTWARE¶ 1
17 /* level interrupt, low priority = 1 */
-
CPU_INUM_ETH¶ 1
18 /* level interrupt, low priority = 1 */
-
CPU_INUM_TIMER¶ 1
19 /* level interrupt, medium priority = 2 */
-
irq_isr_enter()¶ Macros that have to be used on entry into and reset from an ISR.
1 2
int _irq_state = irq_disable (); \ irq_interrupt_nesting++;
NOTE: since they use a local variable they can be used only in same functionMacro that has to be used at the entry point of an ISR
-
irq_isr_exit()¶ Macro that has to be used at the exit point of an ISR.
1 2 3 4 5
if (irq_interrupt_nesting) \ irq_interrupt_nesting--; \ irq_restore (_irq_state); \ if (sched_context_switch_request) \ thread_yield();
-
critical_enter()¶ Macros to enter and exit from critical region.
1
int _irq_state = irq_disable ()
NOTE: since they use a local variable they can be used only in same function
-
critical_exit()¶ 1
irq_restore(_irq_state)
-
critical_enter_var( m)¶ Macros to enter and exit from critical region with state variable.
1
m = irq_disable ()
-
critical_exit_var( m)¶ 1
irq_restore(m)
-
uint32_t
irq_interrupt_nesting¶ Indicates the interrupt nesting depth.
The variable is increment on entry into and decremented on exit from an ISR.