External interrupt configuration register 1 (AFIO_EXTICR1)

Первый регистр конфигурации линий внешних прерываний

Смещение (Address offset): 0x08

Reset value: 0x0000

15141312111098
EXTI3[3:0] EXTI2[3:0]
rwrw
00000000
76543210
EXTI1[3:0] EXTI0[3:0]
rwrw
00000000


Bits 31:16
Reserved
Must be kept at cleared
Зарезервировано. Должно быть всегда установлено в 0
Bits 15:0
EXTIx[3:0]
EXTI x configuration (x= 0 to 3)
Конфигурация линий внешних прерываний для EXTI x (где x = 3...0)

 0000 :  порт A - pin x

 0001 :  порт B - pin x

 0010 :  порт C - pin x

 0011 :  порт D - pin x

 0100 :  порт E - pin x

 0101 :  порт F - pin x

 0110 :  порт G - pin x, где x = 3...0



//- stm32F10x.h

/*****************  Bit definition for AFIO_EXTICR1 register  *****************/

#define AFIO_EXTICR1_EXTI0         ((uint16_t)0x000F)            /* EXTI 0 configuration */
#define AFIO_EXTICR1_EXTI1         ((uint16_t)0x00F0)            /* EXTI 1 configuration */
#define AFIO_EXTICR1_EXTI2         ((uint16_t)0x0F00)            /* EXTI 2 configuration */
#define AFIO_EXTICR1_EXTI3         ((uint16_t)0xF000)            /* EXTI 3 configuration */

/* EXTI0 configuration */
#define AFIO_EXTICR1_EXTI0_PA      ((uint16_t)0x0000)            /* PA[0] pin */
#define AFIO_EXTICR1_EXTI0_PB      ((uint16_t)0x0001)            /* PB[0] pin */
#define AFIO_EXTICR1_EXTI0_PC      ((uint16_t)0x0002)            /* PC[0] pin */
#define AFIO_EXTICR1_EXTI0_PD      ((uint16_t)0x0003)            /* PD[0] pin */
#define AFIO_EXTICR1_EXTI0_PE      ((uint16_t)0x0004)            /* PE[0] pin */
#define AFIO_EXTICR1_EXTI0_PF      ((uint16_t)0x0005)            /* PF[0] pin */
#define AFIO_EXTICR1_EXTI0_PG      ((uint16_t)0x0006)            /* PG[0] pin */

/* EXTI1 configuration */
#define AFIO_EXTICR1_EXTI1_PA      ((uint16_t)0x0000)            /* PA[1] pin */
#define AFIO_EXTICR1_EXTI1_PB      ((uint16_t)0x0010)            /* PB[1] pin */
#define AFIO_EXTICR1_EXTI1_PC      ((uint16_t)0x0020)            /* PC[1] pin */
#define AFIO_EXTICR1_EXTI1_PD      ((uint16_t)0x0030)            /* PD[1] pin */
#define AFIO_EXTICR1_EXTI1_PE      ((uint16_t)0x0040)            /* PE[1] pin */
#define AFIO_EXTICR1_EXTI1_PF      ((uint16_t)0x0050)            /* PF[1] pin */
#define AFIO_EXTICR1_EXTI1_PG      ((uint16_t)0x0060)            /* PG[1] pin */

/* EXTI2 configuration */  
#define AFIO_EXTICR1_EXTI2_PA      ((uint16_t)0x0000)            /* PA[2] pin */
#define AFIO_EXTICR1_EXTI2_PB      ((uint16_t)0x0100)            /* PB[2] pin */
#define AFIO_EXTICR1_EXTI2_PC      ((uint16_t)0x0200)            /* PC[2] pin */
#define AFIO_EXTICR1_EXTI2_PD      ((uint16_t)0x0300)            /* PD[2] pin */
#define AFIO_EXTICR1_EXTI2_PE      ((uint16_t)0x0400)            /* PE[2] pin */
#define AFIO_EXTICR1_EXTI2_PF      ((uint16_t)0x0500)            /* PF[2] pin */
#define AFIO_EXTICR1_EXTI2_PG      ((uint16_t)0x0600)            /* PG[2] pin */

/* EXTI3 configuration */
#define AFIO_EXTICR1_EXTI3_PA      ((uint16_t)0x0000)            /* PA[3] pin */
#define AFIO_EXTICR1_EXTI3_PB      ((uint16_t)0x1000)            /* PB[3] pin */
#define AFIO_EXTICR1_EXTI3_PC      ((uint16_t)0x2000)            /* PC[3] pin */
#define AFIO_EXTICR1_EXTI3_PD      ((uint16_t)0x3000)            /* PD[3] pin */
#define AFIO_EXTICR1_EXTI3_PE      ((uint16_t)0x4000)            /* PE[3] pin */
#define AFIO_EXTICR1_EXTI3_PF      ((uint16_t)0x5000)            /* PF[3] pin */
#define AFIO_EXTICR1_EXTI3_PG      ((uint16_t)0x6000)            /* PG[3] pin */