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

STM32G0学习手册——点亮LED(GPIO用法HAL库)

[复制链接]
STMCU小助手 发布时间:2022-10-31 11:37
新建CubeMX工程
4 l. e3 [+ ~/ t这片文章中,我们使用芯片自带的HSI时钟,所以不需要配置时钟树,使用默认频率(16MHz),以便理解步骤。6 J; {8 s" l: w2 l1 q  d6 M8 o
1.打开SWD调试接口- e& Z: r3 V9 ^3 S& G% }
2.在引脚视图中,点击PC6,选择"GPIO_Output"。在配置页中选择GPIO-PC6。(LED灯是接到PC6引脚的)
+ H( V. O5 T. Z6 w3 l  y% }- V: u9 G  t
20200419170920422.png
* X9 U3 U6 {: _' v7 E
& Y( s" M' l7 A! q6 w; C; b 20200419170759937.png
7 U8 f# k# J  Q* {) X( |. J6 `/ t: o5 L. K4 D7 L' f
3.配置引脚属性
% c9 x# T' l0 O  h) [; sGPIO output level:默认输出电平。Hight和Low
: u' h! T/ q/ M  ]  _% C, \# W+ e. V/ t6 L2 ]1 L' R
GPIO mode :设置引脚输出模式。有推挽和开漏
  G5 G$ c- U4 O0 n/ e2 A7 A, M% X* w/ n2 w; ~; Y# a  y6 n
GPIO Pull-up/Pull-down:设置上下拉。6 O& G0 n9 `: l/ h

6 s, g& d8 f& B% y% F3 G) VMaximum output speed:设置引脚速度。有四个等级。
2 F. e" ^/ p* d. @/ m/ I
; p/ N) ?$ Y1 F) X4 zUser Label:设置用户标签。相当于自己命名引脚。比如设置LED6,在MDK软件里LED6_Pin,就是这个引脚。自定义引脚格式为*_Pin。
3 t; D. A8 S+ T) i5 W2 [- _8 E( D% W8 i6 L
20200419172351532.jpg * b# ~( X. P& R5 P! a" |

5 B' I! N" S) n9 ]. w生成代码后,使用MDK软件工程,在魔术棒-debug选项卡中勾上"Rest and Run"。. d( h3 m2 |0 Y& H$ Q. f
在Application/User目录下,打开main.c文件。找到while(1)函数,写入下面两句代码。9 N% I9 Y! J, |0 A4 Y
  1.   while (1)
    % ^5 H& i. w- ~5 e
  2.   {$ q0 A3 ^. t8 |7 U& I- T
  3.     /* USER CODE END WHILE */; u4 p, d1 u9 w. R# g! K

  4. / v% F! F  a' O' H: q1 L- A
  5.     /* USER CODE BEGIN 3*/            //在BEGIN与END之间添加代码。重新生成工程就不会删掉
    6 m; m9 d7 k* Y5 M2 v
  6.                 HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_6);   //翻转IO引脚
    3 y2 J$ {0 }' ~2 o' v
  7.                 HAL_Delay(2000);                        //延时2秒
    ; @* X( z/ Q, P- \' O3 m
  8.   }) T  S& \, X4 H4 M; d' O  n
  9.   /* USER CODE END 3 */
复制代码
( C- s- k3 e. s" q6 b' Z
编译后,下载烧录到板子中。: g' L; x% X8 t0 Z: Y$ k# s' Y, y
有人想我不想有规律的闪动,或者常亮呢,该用什么命令呢?就用到一下命令。) ?0 o% d6 {6 R
. D$ j" R) C3 c# C' c; j6 }
GPIO HAL库函数

( ^9 v# `/ O( {+ }" qvoid HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);   //设置引脚函数
* o% i0 q6 N/ S( c* ]; m$ g! v/ a# A, B0 \- Q8 ]4 r% [
GPIO_TypeDef *GPIOx:GPIOA,B,C...
) W- H7 j( d6 x. K5 N% vuint16_t GPIO_Pin:GPIO_PIN_0~GPIO_PIN15/ H$ ]: ~: `5 }7 s2 s% `
GPIO_PinState PinState:GPIO_PIN_RESET(低电平),GPIO_PIN_SET(高电平)
# E6 p" Z5 s9 C
( J$ b* s1 ?" ^1 Y# j
  1.   while (1)8 S: O2 B2 B! ]5 z
  2.   {
    , g- {8 t8 H4 R+ N& P$ [/ ?
  3.     /* USER CODE END WHILE */
    3 I( M8 F! W  ^* e

  4. / o2 k: L' ]2 G
  5.     /* USER CODE BEGIN 3 */% U, P0 \/ K: @. T. e' d
  6.                 HAL_Delay(1000);. W- M0 h: g& X4 G! u/ [
  7.                 HAL_GPIO_WritePin(GPIOC,GPIO_PIN_6,GPIO_PIN_RESET);    //LED灯会亮两秒钟$ d* d% ], t* w4 V* C8 y' U; c* R
  8.                 HAL_Delay(2000);
    / i9 h: d2 |1 ~1 {, ~- V; V8 c
  9.                 HAL_GPIO_WritePin(GPIOC,GPIO_PIN_6,GPIO_PIN_SET);      //LED灯会灭一秒钟; j6 e/ c6 N4 l8 H1 B  w2 l3 a+ o
  10.   }
    % I% T6 E* ], x% A1 X3 s2 ~
  11.   /* USER CODE END 3 */  U! n2 r, R! k3 f+ T
  12. }
复制代码
# q7 X$ ^. g; a( _; n* K+ B
GPIO_PinState     HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);               //读取引脚电平- l5 K  o7 x5 e- L# i6 h4 |* T7 @
4 U% i+ z) h, |4 Y! P
GPIO_TypeDef *GPIOx:GPIOA,B,C...
) A- e- W5 Y8 P% I" P& Huint16_t GPIO_Pin:GPIO_PIN_0~GPIO_PIN_15
- ]' ~- j& J5 k$ b3 N1 K& T$ Z0 QGPIO_PinState返回值:GPIO_PIN_RESET=0代表低电平、GPIO_PIN_SET=1代表高电平
0 F; V. P' ?' N+ N* B还有其他函数,大家在实际中运用吧。
/ q5 U2 F8 |4 H; F5 r+ x. \8 D
) K4 x8 x4 X- @; l0 F% i                       void     HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);         //翻转IO引脚电平, s% w; k+ \/ h4 q* W# m: `4 a
HAL_StatusTypeDef    HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);            //锁定IO引脚电平
9 t  f0 U2 c: B3 q% y! K) S————————————————; z: D7 @! q3 L- `( ?
版权声明:SCCELE
. t6 Y$ a! K& C( q' U' H3 l. y% N, _( _( z, y

  W7 o1 p" d8 S( }
赞 收藏 评论0 发布时间:2022-10-31 11:37

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版