stm32之GPIO学习笔记

和stm32的GPIO相关的寄存器有

(1)两个32位的配置寄存器(GPIOX_CRL,GPIOX_CRH)

image每一个IO占用4位,16个IO占用64位就是两个32为寄存器。

其中CNF[1:0]是用来配置模式的,其定义如下

image

MODE[1:0]是用来配置输入输出模式及输出模式下的端口速率的

image

(2)端口输入数据寄存器(GPIOX_IDR)

其中高16位是保留的,低十六位对应着16个IO口的数据位。

(3)端口输出数据寄存器(GPIOX_ODR)

其中高16位是保留的,低十六位对应着16个IO口的数据位。

(4)端口位设置/清除寄存器(GPIOX_BSRR)

其中的每一位的定义如下:

image

(5)端口位清除寄存器(GPIOX_BRR)

前面的16位是保留的,后面的十六位的定义如下:

image

感觉不理解的是上面已经有一个端口位设置/清除寄存器了,怎么还要独立的一个端口清除寄存器()

(6)端口配置锁定寄存器(GPIOX_LCKR)

image

原文地址:https://www.cnblogs.com/51mcu/p/3288005.html