STMCU小助手
发布时间:2022-5-22 21:00
|
前言 本文将介绍stm32定时器的使用。 一、定时器介绍" p! q8 N o5 X% w: U5 ? 定时器是单片机内部的特殊功能模块。% e/ b4 |- y& d" @, }9 w9 m X$ L* S / S" O/ ]) w2 \5 B 在控制系统中,常常要求有一些实时时钟以实现定时或者延时控制,如定时中断、定时检测、定时扫描等等,也往往要求有计数器,对外部事件进行计数。 : f; ~, O# |0 z: H 要实现定时或者延时功能,一般有三种方法:软件定时,不可编程硬件定时,可编程硬件定时。/ o2 ~, d% D/ b9 I' v & i9 F8 M! t0 O# z6 X 软件定时——让软件循环执行一段程序,程序本身并无执行目的,而是通过执行程序延时固定的时间,也就是以前的程序中经常使用的延时程序。这种方法降低了cpu的利用率。% X& B6 U J7 G) }5 Y6 b 不可编程硬件定时——如外部芯片555 时基电路,通过外部阻容,达到一定的延时功能,改变阻容大小可以改变延时长度。这种定时器取决于硬件,设定好以后不能通过软件更改。 ! }% h# C+ {$ i. ]) {& z 可编程定时器——这种定时器的定时值可以通过软件确定和修改,使用灵活便捷。' c5 K0 w3 Z3 o: ~* \7 a 二、CubeMX配置及工程代码讲解 1.CubeMX配置 1.选择单片机型号$ U" W o5 T+ ]
2.设置引脚功能
5 c& L/ ?, h2 w* s- O 3.选择时钟源# K& Z1 P9 d3 Y3 y6 a6 s " f \+ E8 C, w9 p% N
4.开启Debug仿真 * D t4 n+ @3 v6 k
5.配置定时器
# F7 J6 k7 O d 定时器定时时间简单计算方法:这里我们时钟树选择的时钟频率是72MHZ,用72MHZ/72/50000就得到了计数的频率然后再取倒数就是我们想要的定时时间了。/ \( C. I, v7 S: n( x( j 9 j* I% _* `* ?% }/ | 6.配置时钟树 1 w" U6 ?- _0 B
# @+ P8 g5 \* G9 X' e 7.创建工程8 n4 X, P, R/ g+ T
% s- \' n4 z4 e1 x7 M r' w3 t/ ? 2.代码讲解: ~9 G/ `% G% I) @8 H; _
总结$ |1 m# B& v! Q* _+ q4 J 本文简单讲述了定时器中断的使用,主要就是要注意中断回调函数的使用方法,以及打开定时器的方法。3 x$ s) s+ ^! Z+ j' y& [2 \ " h+ T7 x; I1 Y' E2 D/ \7 ? 2 l4 b) E& M7 z' {3 K7 r, p& { |
经验分享 | 利用TIMER定时和捕获功能实现编解码演示
STM32 LSE 不起振排查指南:五大核心原因与快速解决方案
我心中的ST中文论坛
经验分享 | 利用STM32 TIMER实现同频跟随输出示例
2025软件工具兔哥知道
经验分享 | 利用STM32 TIMER实现同频跟随输出示例
经验分享 | 一个基于TIMER事件的中断响应话题_续
经验分享 | 一个基于TIMER事件的中断响应话题
11张图学会STM32定时器!
经验分享 | STM32U5系列TIMER+DMA+DAC应用演示
微信公众号
手机版