你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32CUBEIDE的GPIO输出函数经验分享篇四

[复制链接]
攻城狮Melo 发布时间:2023-4-9 18:55
概述
    本章主要讲解GPIO输出函数说明。
3 h/ r) E. s$ w* {+ f
生成例程. K9 x2 z  x6 `! h* \; R4 y
   使用STM32CUBEMX生成例程,这里使用NUCLEO-F103RB开发板。

( ]7 @7 \  |9 @5 `1 {
微信图片_20230409210253.png

2 d- x' Q3 n/ Y2 o" ^) Y5 KHAL_GPIO_Init()函数; _' D+ M# K2 L4 g( W: J
  该函数的作用是根据GPIO_Init中指定的参数初始化GPIOx外设。

) w( l# N, @2 d) Q+ ^
7.png

& j) u' o( A2 T3 l
    由于是对管脚进行初始化定义,一般在mian()函数初始化中。
    而在主程序的初始化中,有个注释是初始化所有配置的外设,点击查看这个函数。
  _( m' J1 i  K& R8 t$ L
6.png

9 ]6 E/ |  ~5 K
    在MX_GPIO_Init()可以看到,这里对管脚进行了初始化的配置。
8 }% R0 c8 u& |" }' L7 }
5.png

. T- z. E. c, y+ |# vHAL_GPIO_DeInit()函数
/ h% b# S5 ~# Q- [+ j
    该函数的作用是重置GPIO口,由下图可知,该函数输入GPIO管脚号即可初始化对应的GPIO。  
% ?  J" D: j- ?; Q
4.png
, v" \- p2 Y0 E1 |# f
$ i! d7 e2 a9 @9 v5 e# R9 R
HAL_GPIO_WritePin()函数
" o8 G5 ^7 i$ c8 z5 P
    该函数的作用是设置或清除选定的数据端口位。  
    一般情况下是配置GPIO输出高低电平。
0 V( @; K. N9 ^- Z# y& J8 L
3.png
- S: C. a0 f5 _! R# t- s% F
HAL_GPIO_TogglePin()函数
9 C4 w& m! Z* O& Y
    该函数的作用是翻转选定的数据端口位。  
    一般情况下是切换GPIO输出电平状态。

7 [4 o/ i* H" V1 a; @* R0 B
2.png

" G7 e" V' ?/ b/ V; u3 OHAL_GPIO_LockPin()函数
9 }6 ~# f+ u* |' [) Y, h0 \* j- G
    锁定GPIO引脚配置寄存器,就是将GPIO的模式锁定,例如有个GPIO已经设定为推挽输出模式,只要将该GPIO锁定,后面你的代码执行该GPIO变成输入模式的代码将不起作用,最主要作用是在强干扰环境下防止意外跑飞导致修改io的模式状态导致严重意外问题,一般情况下不适用该函数。

- c$ S9 L5 E3 P* S& a. v$ Q; ~
1.png
' Y5 ^2 O  @( X% B' P: a2 {- C
转载自:记帖
如有侵权请联系删除
8 i. z9 z% P, R: p

1 i, [/ A5 N2 Q3 i4 d2 D+ {8 q
收藏 评论0 发布时间:2023-4-9 18:55

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版