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

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

[复制链接]
攻城狮Melo 发布时间:2023-4-9 18:55
概述
    本章主要讲解GPIO输出函数说明。

$ t: D' f7 g& Y' ~9 Q2 @( A- u# ]) e生成例程
, o7 I* `: X1 u( f3 E" `; y
   使用STM32CUBEMX生成例程,这里使用NUCLEO-F103RB开发板。
, K5 U% o$ K2 T3 y; g. E$ j
微信图片_20230409210253.png
0 V: p0 X# K! `2 m1 h8 j# F
HAL_GPIO_Init()函数
! `2 x+ L5 x' W, N6 K+ ~1 y
  该函数的作用是根据GPIO_Init中指定的参数初始化GPIOx外设。

1 `) T/ s+ t! l0 q
7.png

. |7 y3 u) _$ Z. o' |. g
    由于是对管脚进行初始化定义,一般在mian()函数初始化中。
    而在主程序的初始化中,有个注释是初始化所有配置的外设,点击查看这个函数。
% f) K; C" T) i* d& U
6.png
9 J& Z# r1 i* y5 P( s1 P( i" d
    在MX_GPIO_Init()可以看到,这里对管脚进行了初始化的配置。

5 O5 R: M$ o% l4 A( _! S
5.png

/ C# b% I" g. w& J8 q/ M2 }2 }HAL_GPIO_DeInit()函数# S% S& A7 l) B& @  v9 k5 ^  @; O$ w& ?5 ?
    该函数的作用是重置GPIO口,由下图可知,该函数输入GPIO管脚号即可初始化对应的GPIO。  

: c8 O+ Z8 l, m( h1 O0 l' T
4.png

8 k) W9 y9 H7 v7 X4 X. {1 I5 Z9 m$ q: K( E' R* X, ?" A4 ?
HAL_GPIO_WritePin()函数# `# ]9 n  P9 n% a7 B3 D- @3 c
    该函数的作用是设置或清除选定的数据端口位。  
    一般情况下是配置GPIO输出高低电平。

, Z7 J* t8 `# Z& B
3.png

' _% B2 O. |, g9 a8 q0 I5 n# P" o& |0 PHAL_GPIO_TogglePin()函数
4 O, D8 g! {7 W0 y& `, e* m! z& x! e
    该函数的作用是翻转选定的数据端口位。  
    一般情况下是切换GPIO输出电平状态。

0 m; o  l1 c3 `2 n
2.png

9 ?6 g6 e  [  I# p* `4 yHAL_GPIO_LockPin()函数6 B7 J. ]8 }$ z, Y
    锁定GPIO引脚配置寄存器,就是将GPIO的模式锁定,例如有个GPIO已经设定为推挽输出模式,只要将该GPIO锁定,后面你的代码执行该GPIO变成输入模式的代码将不起作用,最主要作用是在强干扰环境下防止意外跑飞导致修改io的模式状态导致严重意外问题,一般情况下不适用该函数。

/ V% p7 a. w) j$ ]9 }# X! m
1.png
( }: }& S( Z4 k2 i4 h! m. e/ U
转载自:记帖
如有侵权请联系删除
: _' A  U+ d1 x
8 Y1 H) R: \" I/ M8 v
收藏 评论0 发布时间:2023-4-9 18:55

举报

0个回答

所属标签

相似技术帖

官网相关资源

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