stm32的每个IO口都有8种可配置模式,整理如下,便于日后查阅:
- 模拟输入(0x0),用于ADC。
- 浮空输入(0x4)。
- 下拉输入(0x8),用作输入口,额外设置ODR=0(默认)。
- 上拉输入(0x8),用作输入口,额外设置ODR=1。
- 推挽输出(0x3),用作输出口,50MHz速率。
- 开漏输出(0x7)。
- 推挽复用功能(0xB),使用IO口的第二功能。
- 开漏复用功能(0xF)。
只有在输出模式下,需要配置输出速率(10MHz、2MHz、50MHz)。
AF - Alternate Function,备用。