EXTI - регистры внешних прерываний микроконтроллера STM32F10x


Имя регистра
Смещение
Наименование
0x00
Interrupt mask register
Регистр маскировки прерываний
0x04
Event mask register
Регистр маскировки событий
0x08
Rising trigger selection register
Регистр выбора нарастающего фронта
0x0C
Falling trigger selection register
Регистр выбора спадающего фронта
0x10
Software interrupt event register
Регистр программного вызова прерывания
0x14
Pending register
Регистр флага события на линии


//-  stm32f10x.h

#define PERIPH_BASE         ((uint32_t)0x40000000)      /* Peripheral base address in the alias region */
#define APB2PERIPH_BASE     (PERIPH_BASE + 0x10000)
#define EXTI_BASE           (APB2PERIPH_BASE + 0x0400)
#define EXTI                ((EXTI_TypeDef *) EXTI_BASE)


typedef struct
{
  __IO uint32_t IMR;
  __IO uint32_t EMR;
  __IO uint32_t RTSR;
  __IO uint32_t FTSR;
  __IO uint32_t SWIER;
  __IO uint32_t PR;
} EXTI_TypeDef;


EXTI0_IRQn      = 6,      /* EXTI Line0 Interrupt                                 */
EXTI1_IRQn      = 7,      /* EXTI Line1 Interrupt                                 */
EXTI2_IRQn      = 8,      /* EXTI Line2 Interrupt                                 */
EXTI3_IRQn      = 9,      /* EXTI Line3 Interrupt                                 */
EXTI4_IRQn      = 10,     /* EXTI Line4 Interrupt                                 */
EXTI9_5_IRQn    = 23,     /* External Line[9:5] Interrupts                        */
EXTI15_10_IRQn  = 40,     /* External Line[15:10] Interrupts                      */
ETH_WKUP_IRQn   = 62,     /* Ethernet Wakeup through EXTI line Interrupt - только для CL-устройств  */