一,AFIO简介
AFIO是Alternate Function Input/Output 的缩写,表示复用功能IO,主要用于实现IO端口的复用功能以及外部中断的控制
STM32外设有很多I/O以及内置外设(如12C,ADC,ISP,USART等)。为节省引出管脚的数量,这些内置外设通常与I/O口共用管教,即I/O管脚具有复用功能。例如,一个GPIO管脚除了可以作为普通的I/O端口外,还可以被复用为某个内置外设的功能引脚。
然而,为了优化64脚或100脚封装的外设数量,有时需要将一些复用功能重新映射到其他引脚上。这时,就可以使用AFIO的复用重映射功能。通过设置复用重映射和调试I/O配置寄存器(AFIO_MAPR),可以实现引脚的重新映射,使得复用功能不再映射到它们的原始分配上。
此外,AFIO 还用于控制外部中断,用来配置 EXTI 中断线 0~15 对应哪个具体 IO 口。当需要使能外部中断线或进行外部中断线的映射时,通常需要开启AFIO的时钟。
二,AFIO与IO口对应关系
右
三,EXTI配置流程