关于STM32通用和复用I/O口
一,概述
STM32F10x系列具有丰富的端口可供使用包括26、37、51、80、112个多功能双向5V兼容的快速I/O口,所有I/O口可以映射到16个外部中断。每个通用的I/O(GPIO)端口有
2个32位配置寄存器(GPIOx_CRL、GPIO_CRH)
2个32位数据寄存器(GPIOx_IDR、GPIO_ODR)
1个32位置位/复位寄存器(GPIOx_BSSR)
1个16位复位寄存器(GPIOx_BRR)
1个32位锁定寄存器(GPIOx_LCKR)
GPIO端口的每个位可以由软件分别配置成多种模式,如输入浮空、输入上拉、输入下拉、模拟输入、开漏输出、推挽式输出、推挽式复用功能和开漏复用功能。
1.1 通用I/O
复位期间和复位后,复用功能未开启,I/O端口被配置成浮空输入模式。复位后,JTAG引脚被置于上拉或下拉模式。
-
PA15:JTDI置于上拉模式
-
PA14:JTCK置于下拉模式
-
PA13:JTMS置于上拉模式
-
PB4:JNTRST置于上拉模式
当I/O引脚作为输出配置时,写到输出寄存器上的值(GPIOx_ODR)输出到相应的I/O引脚,可以以推挽模式或开漏模式(当输出0时,只有N-MOS被打开)使用输出驱动器。输入数据寄存器(GPIOx_IDR)在每个APB2时钟周期捕捉I/O引脚上的数据,所有GPIO引脚都有