GPIO相关配置寄存器
STM32F103ZET6一共有7组IO口,每组IO口有16个IO,每组IO口包含7个寄存器,一共可以控制一组GPIO的16个IO口。
- GPIOx_CRL :端口配置低寄存器
- GPIOx_CRH:端口配置高寄存器
- GPIOx_IDR:端口输入寄存器
- GPIOx_ODR:端口输出寄存器
- GPIOx_BSRR:端口位设置/清除寄存器
- GPIOx_BRR :端口位清除寄存器
- GPIOx_LCKR:端口配置锁存寄存器
每个I/O端口位可以自由编程,然而I/O端口寄存器必须按32位字被访问(不允许半字或字节访问)
1. GPIOx_CRL :端口配置低寄存器
STM32中的32位寄存器,每4位(MODEy和CNFy)配置一个IO口,所以端口配置低寄存器能配置8个IO口。
但是STM32的一组IO口中有16个IO口,所以需要两个32位寄存器来配置IO口。