-
什么是GPI/O?
GPI/O是通用型输入输出接口
-
每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL, GPIOx_CRH),两个32位数据寄存器 (GPIOx_IDR和GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存 器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)
- 对于两个32位配置寄存器(GPIOx_CRL, GPIOx_CRH)来说——分别控制每个端口的高八位和低八位,如果IO口是0-7号的话,则写CRL寄存器,如果IO口是8-15号的话,则写CRH寄存器
- CRL 和 CRH 控制着每个 IO 口的模式及输出速率。
3. GPIO端口的每个位可以由软件分别配置成多种模式。
─ 输入浮空
─ 输入上拉 在引脚空闲的时候有可靠的高电平
─ 输入下拉 在引脚空闲的时候有可靠的低电平
─ 模拟输入
─ 开漏输出
─ 推挽式输出 输出高低电平最常用的方法
─ 推挽式复用功能
─ 开漏复用功能
4. 有“FT”标识的引脚(IO口)是可以接入5V电压的,但不能接5V以上的电压
5.一个IO口由4位控制,一个32位的寄存器最多可以控制8个IO口,也就是PA0——PA7了
先找寄存器对应的IO口,然后配置该IO口是输出模式还是输入模式,以及输出的速度