GPIO端口配置 | ||
---|---|---|
32bit配置寄存器 | GPIOx_CRL | GPIOx_CRH |
32bit数据寄存器 | GPIOx_IDR | GPIOx_ODR |
32bit置位/复位寄存器 | GPIOx_BSRR | |
16bit复位寄存器 | GPIOx_BRR | |
32bit锁定寄存器 | GPIOx_LCKR |
GPIO可以被配置成多种模式
输入方式 | 代码宏定义 |
---|---|
浮空输入 | GPIO_Mode_IN_FLOATING |
上拉输入 | GPIO_Mode_IPU |
下拉输入 | GPIO_Mode_IPD |
模拟输入 | GPIO_Mode_AIN |
开漏输出 | GPIO_Mode_Out_OD |
推挽输出 | GPIO_Mode_Out_PP |
复用推挽输出 | GPIO_Mode_AF_PP |
复用开漏功能 | GPIO_Mode_AF_OD |
GPIO整理后可分为三类:
1. 输入模式(模拟/浮空/上拉/下拉):在输入模式时,施密特触发器打开,输出被禁止,可通过输入数据寄存器 GPIOx_IDR读取 I/O 状态。其中输入模式,可设置为上拉、下拉、浮空和模拟输入四种。上拉和下拉输入很好理解,默认的电平由上拉或者下拉决定。浮空输入的电平是不确定的,完全由外部的输入决定,