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

【经验分享】STM32G431学习笔记【1】:点亮二极管

[复制链接]
STMCU小助手 发布时间:2021-11-14 23:04
前言
7 Q. u' Z1 P- r( x3 [. s学完频率计之后花了一周重新看了一下物联网的东西,忙完之后终于有时间开始学习G431单片机了,花了两天时间 把发光二极管点亮了7 l- I- e2 G0 r8 ?) S4 W' c
! T! H  W7 |$ M& f
电路分析
1 J, L1 l! Y# ^; b
20201026193256385.png
7 t3 q+ Z! \4 [+ r# s( L" u6 H
' }4 H" K" y3 x/ y: P
G431开发板自带的发光二极管模块
+ T( l: F7 |+ N, o) A# @1 r- \9 l& I0 w7 p) ^3 z
可以看到在这个电路中PA5引脚输出高电平时三极管导通二极管发光,如果该引脚输出低电平时二极管熄灭。
! w9 O. ^; z! |0 ?) I2 b' H: S# R( l8 \: M* i: N, [
cubemx的相关配置
6 H) t( C9 T9 |, o2 r+ n- v/ J9 i" v+ m0 j9 j8 Q1 z+ L! l. U
2020102619481023.png
8 e2 l$ U6 @7 G  a
" v0 y& h$ z: H- _
20201026194408220.png

- Y+ T2 B: F/ H* z* C, }+ w, b8 v' i+ m& Z2 S
, J. r: g& O; H; f9 U/ o7 ~
这里我们配置该LD2的引脚PA5为输出端口。0 A- ~# _9 ?" j  D5 d% ^
因为该二极管为高电平使能二极管,所以我们设置输出端口为低电平。
9 R- G% N0 c" ]因为是连接数字器件所以我们选择推挽输出模式。
4 M& Q$ Z9 y! q2 X9 j8 j+ Z设置为下拉模式。# a0 z' Q" R' _$ k4 {
因为二极管对gpio输出的速度没有要求,所以配置速度为低速。
% w9 ?8 y. G, O# {" t6 _为了使后面的代码可操作性更好,我设置了user lable 为LD2。
+ S; Y& d! Q& @' l! n4 K4 d. H8 x" e1 G; C5 d( P
代码实现
5 ]& G. h; B) E3 R: o! ^9 Yuser lable的相关代码
( C5 G0 d+ h# i; U7 ~1 ]# p( A
  1. /* Private defines -----------------------------------------------------------*/! T' p; v  C7 P& ?) a! j* f3 ?
  2. #define LD2_Pin GPIO_PIN_5
    ! E2 [0 h: g) ?, @& c$ V
  3. #define LD2_GPIO_Port GPIOA
    . m, G& E# z, Z8 N( e
  4. /* USER CODE BEGIN Private defines */
复制代码

' r* \6 h1 a1 T4 H主函数代码* d" z! y* g. ?% x0 ?
- ^  \+ j# s; J. Z
  1.   while (1)
    * y. l# P5 D5 B3 x9 S& \: Q
  2.   {
    # H2 C8 _7 B9 v, A# B/ |
  3.       HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_SET);, d9 L  b1 t/ J
  4.           HAL_Delay(1000);& H# s- P% j/ \9 G& a7 |9 W- J
  5.           HAL_GPIO_WritePin(LD2_GPIO_Port, LD2_Pin, GPIO_PIN_RESET);7 \! r0 A- K, ?$ a$ i+ G
  6.           HAL_Delay(1000);% u: m+ j0 O4 K+ |  _% U# b
  7.     /* USER CODE END WHILE */
    / r; S! p" S1 d& z0 o
  8. 4 M6 l/ w. {6 b4 K' r. @
  9.     /* USER CODE BEGIN 3 */7 v4 Q* w+ E( W' Q- ]9 z) s
  10.   }
复制代码

# d- h1 Q0 v) D- h: o- S9 \) |这里就没什么好讲的了,就是上拉下拉GPIO,来让二极管发光熄灭。但是我也之前没有写最后一行的延时函数,结果那个发光二极管一直亮着的卡了我好久
, j' i/ B0 T8 F/ }, z+ u" I+ H8 f
* i9 v5 q- J" o

8 g) H& n7 u% B1 P6 s: \
收藏 评论0 发布时间:2021-11-14 23:04

举报

0个回答

所属标签

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