STM32-keil+CubeMX快速开发:GPIO功能

摘要

本文介绍了非复用GPIO的快速操作流程与配置要点。

软件安装及其他教程 点击打开可查看专栏【STM32Cube开发方式】

CubeMX配置

基本配置流程

新建项目的操作可以点击链接跳转到我的文章:

STM32-keil+CubeMX快速开发:新建项目

简记

选择GPIO引脚→选择模式→添加用户标签→配置默认输出电平、模式、上下拉、速度

图文详述

  • 在"Pinout & Configuration"界面的右侧可以对引脚进行功能分配,如下图。
  • 右下角的搜索框可以直接输入引脚名称搜索引脚。也可以按下鼠标拖拽、滑动滚轮缩放开寻找引脚。
  • 以"PF9"引脚为例,在对应图标上单击鼠标左键后会弹出如下图所示的弹窗。其中的选项表示这个引脚的可复用模式,单纯作为GPIO的有:GPIO_Input、GPIO_Output、GPIO_EXTI、GPIO_Analog这四种模式。
  • 选择好模式后,可以点击右键,然后点击"Enter User Label"给引脚添加用户标签,这样开发过程中就可以使用用户标签来区分引脚的作用了。
  • 然后,在左侧的"System Core→GPIO"栏内,可以对引脚进一步配置。还可以一次性选中多个引脚进行配置。

各配置项的意义

GPIO output level:配置GPIO初始状态下的输出电平。

GPIO mode:进一步配置GPIO模式

output模式下可选择推挽输出或者开漏输出。

EXTI模式下可选择中断触发模式。

GPIO Pull-up/Pull-down:配置引脚上下拉模式。

Maximum output/input speed:配置引脚的最大速度,配置项与速度值对应如下表。

|-----------|------------|
| LOW | 2MHz |
| MEDIUM | 12.5-50MHz |
| HIGH | 25-100MHZ |
| VERY_HIGH | 50-200MHZ |

User Lable:用户标签设置。

外设相关的常用HAL函数

|--------------------|------------------------|
| 函数名 | 功能描述 |
| HAL_GPIO_Init | GPIO引脚初始化 |
| HAL_GPIO_DeInit | GPIO引脚反初始化,恢复为复位后的状态 |
| HAL_GPIO_WritePin | 使引脚输出0或1 |
| HAL_GPIO_ReadPin | 读取引脚的输入电平 |
| HAL_GPIO_TogglePin | 翻转引脚的输出 |
| HAL_GPIO_LockPin | 锁定引脚配置,而不是锁定引脚的输入或输出状态 |

典型应用汇总

相关推荐
FreakStudio42 分钟前
MicroPython 内核开发者直接狂喜!这个 Claude 插件市场,把开发全流程做成了「对话式外挂」
python·单片机·嵌入式·面向对象·并行计算·电子diy
天诚智能门锁1 小时前
天诚公租房管控平台CAT.1人脸猫眼智能锁助力青神县公租房管理
人工智能·嵌入式硬件·物联网·智能家居·智能硬件
m0_377108144 小时前
5月1日zzz
单片机
踏着七彩祥云的小丑4 小时前
嵌入式——认识电子元器件——晶体谐振器系列
单片机·嵌入式硬件
玩转单片机与嵌入式4 小时前
TinyML应用场景解析:动作识别!
人工智能·单片机·嵌入式硬件·嵌入式ai·ai+嵌入式
xiangw@GZ4 小时前
智能锁TouchKey的抗干扰设计-1.概述
单片机·嵌入式硬件
这波不该贪内存的4 小时前
嵌入式开发避坑指南
单片机·嵌入式硬件
振南的单片机世界4 小时前
单片机是嵌入设备的“单芯片计算机”
单片机·嵌入式硬件
zhangrelay5 小时前
三分钟云课实践速通--单片机原理与应用--Arduino--SimulIDE--
linux·单片机·嵌入式硬件·学习·ubuntu