GPS Device
Loading...
Searching...
No Matches
IRQ Numbers and EXTI Lines

IRQ position enumeration and EXTI line definitions. More...

Collaboration diagram for IRQ Numbers and EXTI Lines:

Enumerations

enum  IRQn_te {
  WWDG_IRQn = 0 , EXTI16_IRQn = 1 , EXTI21_IRQn = 2 , EXTI22_IRQn = 3 ,
  FLASH_IRQn = 4 , RCC_IRQn = 5 , EXTI0_IRQn = 6 , EXTI1_IRQn = 7 ,
  EXTI2_IRQn = 8 , EXTI3_IRQn = 9 , EXTI4_IRQn = 10 , DMA1_Stream0_IRQn = 11 ,
  DMA1_Stream1_IRQn = 12 , DMA1_Stream2_IRQn = 13 , DMA1_Stream3_IRQn = 14 , DMA1_Stream4_IRQn = 15 ,
  DMA1_Stream5_IRQn = 16 , DMA1_Stream6_IRQn = 17 , ADC_IRQn = 18 , EXTI9_5_IRQn = 23 ,
  TIM1_BRK_TIM9_IRQn = 24 , TIM1_UP_TIM10_IRQn = 25 , TIM1_TRG_COM_TIM11_IRQn = 26 , TIM1_CC_IRQn = 27 ,
  TIM2_IRQn = 28 , TIM3_IRQn = 29 , TIM4_IRQn = 30 , I2C1_EV_IRQn = 31 ,
  I2C1_ER_IRQn = 32 , I2C2_EV_IRQn = 33 , I2C2_ER_IRQn = 34 , SPI1_IRQn = 35 ,
  SPI2_IRQn = 36 , USART1_IRQn = 37 , USART2_IRQn = 38 , EXTI15_10_IRQn = 40 ,
  EXTI17_IRQn = 41 , EXTI18_IRQn = 42 , DMA1_Stream7_IRQn = 47 , SDIO_IRQn = 49 ,
  TIM5_IRQn = 50 , SPI3_IRQn = 51 , DMA2_Stream0_IRQn = 56 , DMA2_Stream1_IRQn = 57 ,
  DMA2_Stream2_IRQn = 58 , DMA2_Stream3_IRQn = 59 , DMA2_Stream4_IRQn = 60 , OTG_FS_IRQn = 67 ,
  DMA2_Stream5_IRQn = 68 , DMA2_Stream6_IRQn = 69 , DMA2_Stream7_IRQn = 70 , USART6_IRQn = 71 ,
  I2C3_EV_IRQn = 72 , I2C3_ER_IRQn = 73 , FPU_IRQn = 81 , SPI4_IRQn = 84
}
 IRQ numbers in the STM32F401RE Cortex-M4 vector table. More...
enum  EXTI_LINES_te {
  EXTI_LINE_0 , EXTI_LINE_1 , EXTI_LINE_2 , EXTI_LINE_3 ,
  EXTI_LINE_4 , EXTI_LINE_5 , EXTI_LINE_6 , EXTI_LINE_7 ,
  EXTI_LINE_8 , EXTI_LINE_9 , EXTI_LINE_10 , EXTI_LINE_11 ,
  EXTI_LINE_12 , EXTI_LINE_13 , EXTI_LINE_14 , EXTI_LINE_15 ,
  EXTI_LINE_16 , EXTI_LINE_17 , EXTI_LINE_18 , EXTI_LINE_21 = 21 ,
  EXTI_LINE_22
}
 EXTI line numbers. More...
enum  PORT_CODES_ts {
  PA = 0 , PB = 1 , PC = 2 , PD = 3 ,
  PE = 4 , PH = 7
}
 SYSCFG port codes for EXTICRx routing. More...

Detailed Description

IRQ position enumeration and EXTI line definitions.

Enumeration Type Documentation

◆ IRQn_te

enum IRQn_te

IRQ numbers in the STM32F401RE Cortex-M4 vector table.

Values correspond to the position offset from the first device IRQ (IRQ0), used directly as the argument to nvic_set_interrupt.

Enumerator
WWDG_IRQn 

Window watchdog interrupt.

EXTI16_IRQn 

PVD through EXTI line 16.

EXTI21_IRQn 

Tamper and timestamp through EXTI line 21.

EXTI22_IRQn 

RTC wakeup through EXTI line 22.

FLASH_IRQn 

Flash global interrupt.

RCC_IRQn 

RCC global interrupt.

EXTI0_IRQn 

EXTI line 0 interrupt.

EXTI1_IRQn 

EXTI line 1 interrupt.

EXTI2_IRQn 

EXTI line 2 interrupt.

EXTI3_IRQn 

EXTI line 3 interrupt.

EXTI4_IRQn 

EXTI line 4 interrupt.

DMA1_Stream0_IRQn 

DMA1 stream 0 global interrupt.

DMA1_Stream1_IRQn 

DMA1 stream 1 global interrupt.

DMA1_Stream2_IRQn 

DMA1 stream 2 global interrupt.

DMA1_Stream3_IRQn 

DMA1 stream 3 global interrupt.

DMA1_Stream4_IRQn 

DMA1 stream 4 global interrupt.

DMA1_Stream5_IRQn 

DMA1 stream 5 global interrupt.

DMA1_Stream6_IRQn 

DMA1 stream 6 global interrupt.

ADC_IRQn 

ADC1 global interrupt.

EXTI9_5_IRQn 

EXTI lines 5–9 shared interrupt.

TIM1_BRK_TIM9_IRQn 

TIM1 break / TIM9 global interrupt.

TIM1_UP_TIM10_IRQn 

TIM1 update / TIM10 global interrupt.

TIM1_TRG_COM_TIM11_IRQn 

TIM1 trigger+commutation / TIM11 global interrupt.

TIM1_CC_IRQn 

TIM1 capture compare interrupt.

TIM2_IRQn 

TIM2 global interrupt.

TIM3_IRQn 

TIM3 global interrupt.

TIM4_IRQn 

TIM4 global interrupt.

I2C1_EV_IRQn 

I2C1 event interrupt.

I2C1_ER_IRQn 

I2C1 error interrupt.

I2C2_EV_IRQn 

I2C2 event interrupt.

I2C2_ER_IRQn 

I2C2 error interrupt.

SPI1_IRQn 

SPI1 global interrupt.

SPI2_IRQn 

SPI2 global interrupt.

USART1_IRQn 

USART1 global interrupt.

USART2_IRQn 

USART2 global interrupt.

EXTI15_10_IRQn 

EXTI lines 10–15 shared interrupt.

EXTI17_IRQn 

RTC alarm through EXTI line 17.

EXTI18_IRQn 

USB OTG FS wakeup through EXTI line 18.

DMA1_Stream7_IRQn 

DMA1 stream 7 global interrupt.

SDIO_IRQn 

SDIO global interrupt.

TIM5_IRQn 

TIM5 global interrupt.

SPI3_IRQn 

SPI3 global interrupt.

DMA2_Stream0_IRQn 

DMA2 stream 0 global interrupt.

DMA2_Stream1_IRQn 

DMA2 stream 1 global interrupt.

DMA2_Stream2_IRQn 

DMA2 stream 2 global interrupt.

DMA2_Stream3_IRQn 

DMA2 stream 3 global interrupt.

DMA2_Stream4_IRQn 

DMA2 stream 4 global interrupt.

OTG_FS_IRQn 

USB OTG FS global interrupt.

DMA2_Stream5_IRQn 

DMA2 stream 5 global interrupt.

DMA2_Stream6_IRQn 

DMA2 stream 6 global interrupt.

DMA2_Stream7_IRQn 

DMA2 stream 7 global interrupt.

USART6_IRQn 

USART6 global interrupt.

I2C3_EV_IRQn 

I2C3 event interrupt.

I2C3_ER_IRQn 

I2C3 error interrupt.

FPU_IRQn 

FPU global interrupt.

SPI4_IRQn 

SPI4 global interrupt.

Definition at line 771 of file stm32f401re.h.

772{
773 WWDG_IRQn = 0,
774 EXTI16_IRQn = 1,
775 EXTI21_IRQn = 2,
776 EXTI22_IRQn = 3,
777 FLASH_IRQn = 4,
778 RCC_IRQn = 5,
779 EXTI0_IRQn = 6,
780 EXTI1_IRQn = 7,
781 EXTI2_IRQn = 8,
782 EXTI3_IRQn = 9,
783 EXTI4_IRQn = 10,
784 DMA1_Stream0_IRQn = 11,
785 DMA1_Stream1_IRQn = 12,
786 DMA1_Stream2_IRQn = 13,
787 DMA1_Stream3_IRQn = 14,
788 DMA1_Stream4_IRQn = 15,
789 DMA1_Stream5_IRQn = 16,
790 DMA1_Stream6_IRQn = 17,
791 ADC_IRQn = 18,
792 EXTI9_5_IRQn = 23,
793 TIM1_BRK_TIM9_IRQn = 24,
794 TIM1_UP_TIM10_IRQn = 25,
796 TIM1_CC_IRQn = 27,
797 TIM2_IRQn = 28,
798 TIM3_IRQn = 29,
799 TIM4_IRQn = 30,
800 I2C1_EV_IRQn = 31,
801 I2C1_ER_IRQn = 32,
802 I2C2_EV_IRQn = 33,
803 I2C2_ER_IRQn = 34,
804 SPI1_IRQn = 35,
805 SPI2_IRQn = 36,
806 USART1_IRQn = 37,
807 USART2_IRQn = 38,
808 EXTI15_10_IRQn = 40,
809 EXTI17_IRQn = 41,
810 EXTI18_IRQn = 42,
811 DMA1_Stream7_IRQn = 47,
812 SDIO_IRQn = 49,
813 TIM5_IRQn = 50,
814 SPI3_IRQn = 51,
815 DMA2_Stream0_IRQn = 56,
816 DMA2_Stream1_IRQn = 57,
817 DMA2_Stream2_IRQn = 58,
818 DMA2_Stream3_IRQn = 59,
819 DMA2_Stream4_IRQn = 60,
820 OTG_FS_IRQn = 67,
821 DMA2_Stream5_IRQn = 68,
822 DMA2_Stream6_IRQn = 69,
823 DMA2_Stream7_IRQn = 70,
824 USART6_IRQn = 71,
825 I2C3_EV_IRQn = 72,
826 I2C3_ER_IRQn = 73,
827 FPU_IRQn = 81,
828 SPI4_IRQn = 84
829} IRQn_te;
IRQn_te
IRQ numbers in the STM32F401RE Cortex-M4 vector table.
@ EXTI2_IRQn
@ DMA1_Stream2_IRQn
@ SDIO_IRQn
@ DMA2_Stream0_IRQn
@ DMA2_Stream6_IRQn
@ EXTI16_IRQn
@ I2C1_ER_IRQn
@ I2C2_EV_IRQn
@ TIM4_IRQn
@ TIM2_IRQn
@ DMA2_Stream7_IRQn
@ EXTI22_IRQn
@ USART2_IRQn
@ DMA2_Stream3_IRQn
@ ADC_IRQn
@ SPI3_IRQn
@ SPI2_IRQn
@ RCC_IRQn
@ I2C2_ER_IRQn
@ I2C3_ER_IRQn
@ EXTI17_IRQn
@ I2C3_EV_IRQn
@ EXTI18_IRQn
@ FLASH_IRQn
@ DMA2_Stream5_IRQn
@ WWDG_IRQn
@ I2C1_EV_IRQn
@ TIM3_IRQn
@ DMA2_Stream1_IRQn
@ DMA1_Stream0_IRQn
@ EXTI15_10_IRQn
@ SPI4_IRQn
@ TIM1_UP_TIM10_IRQn
@ EXTI9_5_IRQn
@ DMA1_Stream1_IRQn
@ OTG_FS_IRQn
@ FPU_IRQn
@ EXTI21_IRQn
@ USART6_IRQn
@ SPI1_IRQn
@ TIM1_TRG_COM_TIM11_IRQn
@ TIM1_BRK_TIM9_IRQn
@ EXTI0_IRQn
@ EXTI4_IRQn
@ DMA2_Stream2_IRQn
@ DMA1_Stream5_IRQn
@ USART1_IRQn
@ EXTI3_IRQn
@ EXTI1_IRQn
@ DMA2_Stream4_IRQn
@ TIM5_IRQn
@ DMA1_Stream7_IRQn
@ DMA1_Stream4_IRQn
@ DMA1_Stream6_IRQn
@ TIM1_CC_IRQn
@ DMA1_Stream3_IRQn

◆ EXTI_LINES_te

EXTI line numbers.

Used with gpio_clear_interrupt to identify which EXTI pending flag to clear. Lines 0–15 correspond to GPIO pins 0–15. Lines 16–22 are connected to internal peripherals (PVD, RTC, USB, etc.).

Enumerator
EXTI_LINE_0 

EXTI line 0 (GPIO pin 0).

EXTI_LINE_1 

EXTI line 1 (GPIO pin 1).

EXTI_LINE_2 

EXTI line 2 (GPIO pin 2).

EXTI_LINE_3 

EXTI line 3 (GPIO pin 3).

EXTI_LINE_4 

EXTI line 4 (GPIO pin 4).

EXTI_LINE_5 

EXTI line 5 (GPIO pin 5).

EXTI_LINE_6 

EXTI line 6 (GPIO pin 6).

EXTI_LINE_7 

EXTI line 7 (GPIO pin 7).

EXTI_LINE_8 

EXTI line 8 (GPIO pin 8).

EXTI_LINE_9 

EXTI line 9 (GPIO pin 9).

EXTI_LINE_10 

EXTI line 10 (GPIO pin 10).

EXTI_LINE_11 

EXTI line 11 (GPIO pin 11).

EXTI_LINE_12 

EXTI line 12 (GPIO pin 12).

EXTI_LINE_13 

EXTI line 13 (GPIO pin 13).

EXTI_LINE_14 

EXTI line 14 (GPIO pin 14).

EXTI_LINE_15 

EXTI line 15 (GPIO pin 15).

EXTI_LINE_16 

EXTI line 16 (PVD output).

EXTI_LINE_17 

EXTI line 17 (RTC alarm).

EXTI_LINE_18 

EXTI line 18 (USB OTG FS wakeup).

EXTI_LINE_21 

EXTI line 21 (RTC tamper and timestamp).

EXTI_LINE_22 

EXTI line 22 (RTC wakeup timer).

Definition at line 839 of file stm32f401re.h.

839 {
859 EXTI_LINE_21 = 21,
EXTI_LINES_te
EXTI line numbers.
@ EXTI_LINE_9
@ EXTI_LINE_7
@ EXTI_LINE_2
@ EXTI_LINE_10
@ EXTI_LINE_4
@ EXTI_LINE_5
@ EXTI_LINE_16
@ EXTI_LINE_14
@ EXTI_LINE_18
@ EXTI_LINE_22
@ EXTI_LINE_0
@ EXTI_LINE_13
@ EXTI_LINE_12
@ EXTI_LINE_17
@ EXTI_LINE_11
@ EXTI_LINE_6
@ EXTI_LINE_3
@ EXTI_LINE_1
@ EXTI_LINE_21
@ EXTI_LINE_8
@ EXTI_LINE_15

◆ PORT_CODES_ts

SYSCFG port codes for EXTICRx routing.

Written into the SYSCFG_EXTICRx 4-bit fields to select which GPIO port is routed to an EXTI line. Used internally by gpio_init. Note: PH = 7 to match the hardware encoding for GPIOH.

Enumerator
PA 

Port A.

PB 

Port B.

PC 

Port C.

PD 

Port D.

PE 

Port E.

PH 

Port H (value 7 to match hardware encoding).

Definition at line 871 of file stm32f401re.h.

871 {
872 PA = 0,
873 PB = 1,
874 PC = 2,
875 PD = 3,
876 PE = 4,
877 PH = 7
PORT_CODES_ts
SYSCFG port codes for EXTICRx routing.
@ PH
@ PE
@ PB
@ PC
@ PA
@ PD