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

【经验分享】STM32cubeMX配置PWM使LED灯闪烁

[复制链接]
STMCU小助手 发布时间:2022-5-22 21:34
前言
' u8 u0 K% B  Q, P0 {% t$ O6 e) v  g本篇文章带大家学习使用cubemx配置PWM让LED闪烁。5 a, c7 h$ U0 j4 Q- a

- ~+ }; U1 Q1 T+ C5 z一、cuebMX配置
) {  `; I0 {2 x$ W3 k3 q9 G9 R* e, G/ ~) F& z, d
Z8FL[6Z~H)AN~4%KZJ5SL96.png 5 ^2 t- u8 h4 ?7 S$ F# Q
6VC630]_%@X3TKWYK{%(E1U.png
3 p( d" c9 l/ E7 i+ Y0 ?$ a; N; H4 A# b
二、代码解析
8 T2 G( B, E' _' f* {* H
  1. //产生PWM完成中断回调函数,当PWM产生完成会触发进入中断调用本函数
    ) R; C, j/ s7 G3 R
  2. void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim)
    ; ?0 `" N8 x' P
  3. {
    , T/ a" k* d0 s. E7 k
  4.   static uint32_t index=0;//占空比变量( i) W7 [9 _, ?3 P9 f( F
  5.   static uint8_t step=0;//模式变量
    0 j# [& E5 a4 C) v

  6. 1 G9 U* c5 N  U
  7.   while(index<=1000)/ n7 K2 U! U3 ~7 c3 y
  8.   {
      K# N/ c( Y1 g) F
  9.           __HAL_TIM_SET_COMPARE(&htim3,TIM_CHANNEL_2,index++);//设置占空比
    9 v1 A2 m5 n! U' `$ o0 w# }
  10.   }/ |7 |% o4 @( ]' H* p' S
  11.   while(index), n! z' ]. F6 m. H) E4 G& b8 o0 f, _+ i
  12.   {
    . H: U, J, g* c# d
  13.           __HAL_TIM_SET_COMPARE(&htim3,TIM_CHANNEL_2,index--);//设置占空比
    6 r! B, o% R$ A
  14.   }
    ' i; ?0 h2 i: @0 W& n, X
  15. }( A1 C" o3 l1 X. l2 P

  16. ' F! V% g0 d# D$ ~7 V2 n  |+ i: c
  17. //以中断方式开启PWM, b* D0 k* X( ^' X' Y9 e5 a
  18. HAL_TIM_PWM_Start_IT(&htim3,TIM_CHANNEL_2);% f# ]0 y+ p6 g6 {' H3 [
复制代码

  f& {8 E! b9 H8 {! N1 x3 o总结
& g( K% `8 D' q0 l1 S1 ?/ e6 P
使用cubeMX配置PWM的相关介绍就到这里了。* b* {7 t: k# |3 u* X% ?
7 c  K& a2 P7 I- {  U- v, w8 ?

5 _4 \2 x. Y) v" |  Y8 c; `
+ w+ j. k2 x8 J1 X
赞 收藏 评论0 发布时间:2022-5-22 21:34

举报

0个回答

所属标签

相似技术帖

官网相关资源

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