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

stm32 CUBE:定时器

[复制链接]
STMCU小助手 发布时间:2023-3-7 14:00
1、配置定时器。选择内部时钟,也就是72M。
" N! x5 `: a: w- p/ ~8 {) t5 _7 {预分频值36000-1.9 [% E4 f5 J  c
重装载值:1000-16 y8 }$ [, [; R: Q) a* H
所以使用2K时钟,计数1000次。时间是0.5S。所以0.5S进一次定时器中断, }* ~6 l8 I5 r4 P' W7 F
  v& ]/ X0 ]- U, n2 S% S
20190827162021113.png
& j0 Y. Y' |% F
! l* L. |* m- r3 ]4 ~
2、设置NIVC中断
+ k$ i: T$ d' w4 K; p1 v5 r. F; s* L1 c+ ^& c7 G. f% l: y$ T
20190827162450813.png
$ W2 `' n1 k1 O) r: Q6 w# u7 W

0 L! O) j% j! Y( E; c3、完成了程序,但是记住,主程序要启动 定时器+ J! u% F0 R. ~+ m% J) d+ j; G
启动函数: HAL_TIM_Base_Start_IT(&htim2);  K: j6 p1 P8 d3 |# s
4、定时器中断函数默认在stm32f1xx_it.c中
) W; }% a; U* V0 b9 S# _1 _中断函数TIM2_IRQHandler+ D9 a8 N+ G6 B7 r, \& H
* ^! ?4 _/ w9 s9 l+ r. C0 C
5、定时器回调函数使用。在进入中断以后会自动进入此回调函数执行一次6 t1 t1 B9 B0 B0 }, a% P3 M
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)" x1 a0 d: w6 O& y& v" w
{
3 ?# V# N- i. t  p, _if(htim->Instance == TIM3)1 R% k, x( ?7 w( P% h
{% a; Z6 V4 \5 |. C1 I$ c6 B
}
+ z" Y0 d. x$ H6 F& E5 f9 p* bif(htim->Instance == TIM5)% U# X% s% F5 W2 N* M; i) W3 a% {1 Q$ c
{- B: N2 v  Y- p* S
}. F7 }; a% I1 x
}/ Q& H3 c- [, p% J1 o& S5 N
————————————————% n# e+ x. b# P6 M
版权声明:冬麻麻* j+ _1 g( x1 j, K# U4 _

0 s7 V( G; m4 @' f* z; r" r: X$ L# R7 z
赞 收藏 评论0 发布时间:2023-3-7 14:00

举报

0个回答

所属标签

相似技术帖

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