通用输入输出端口 GPIO#
引脚工作模式#
- 输入
- 下拉输入:一端接下拉电阻,另一端接 MCU 低电平,无输入时读取引脚为低电平
- 上拉输入:一端接上拉电阻,另一端接 MCU 高电平,无输入时读取引脚为高电平
- 浮空输入:不接电阻,引脚电平未知
- 模拟输入:???
- 输出
- 推挽输出:高低电平驱动能力都强,高低电平相遇会烧坏
- 开漏输出:低电平驱动能力强(反之 高弱),强弱取决于上拉电阻与上拉电平,上拉电阻越小跳变越快,高低电平相遇变低
- 复用推挽输出:取决于外设
- 复用开漏输出:同上
几个常用的GPIO输出指令#
1 | HAL_GPIO_WritePin(GPIOx,GPIO_PIN_x,GPIO_PinState); |
写入引脚状态 GPIO_PinState
可为
GPIO_PIN_SET
or GPIO_PIN_RESET
(注:SET 与 RESET 对应高低电平取决于 STM32CubeMX 中的定义)
1 | HAL_GPIO_TogglePin(GPIOx,GPIO_PIN_x); |
反转电平
工程配置#
- 配置复位时钟控制器(RCC)
- 配置时钟树
- HSE
- HSI
- PLLCLK
- 配置串口定义