0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

定时器基本原理和常见问题

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-04 11:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

对于MCU来说,定时器是必备的一个模块,原因在于定时器是使用频率最高。

下载地址在ST中文网,(最近)进入主页,都能在首页看到这个消息。

https://www.stmcu.com.cn/Designresource/design_resource_detail?file_name=STM32+%E5%AE%9A%E6%97%B6%E5%99%A8%E5%9F%BA%E6%9C%AC%E5%8E%9F%E7%90%86%E5%8F%8A%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E4%B9%8B%E5%9F%B9%E8%AE%AD%E8%B5%84%E6%96%99&lang=EN&ver=3.1

这个资料总共有186页。内容比较多,但讲述的比较全面。

2

资料的主要内容

• STM32定时器概述

• 定时器时基单元

• 定时器输入捕捉功能

• 定时器比较输出功能

• 定时器触发同步与级联

• 定时器DMA批量传送

• 定时器产生的触发输出与其它外设的关联

• STM32F334/STM32F7/STM32L4等新增的定时器功能

• 案例分享【穿插在上述内容中】

3

STM32定时器分类

整体讲, STM32家族的定时器众多,按照核内、核外标准大致分为两部分:

核内定时器 + 外设定时器

• 核内定时器 : Systick

• 外设定时器: 特定应用定时器+常规定时器

• 特定应用定时器: LPTIM;RTC;WTD;HRTIM

• 常规定时器: 基本定时器、通用定时器、高级定时器 【本篇介绍重点】

按计数器位宽来分:

• 16位定时器

• 32位定时器 【TIM2 TIM5】

• 24位定时器 【Systick】

常规定时器

1.基本定时器:几乎没有任何对外输入/输出,常用作时基,实现基本的计数、定时功能。

2.通用定时器:除了基本定时器的时基功能外,还可对外做输入捕捉、输出比较以及连接其它传感器接口编码器和霍尔传感器】 。

3.高级定时器: 此类定时器的功能最为强大,除了具备通用定时器的功能外,还包含一些与电机控制数字电源应用相关的功能,比方带死区控制的互补信号输出、紧急刹车关断输入控制。

4

STM32定时器模块

STM32【通用或高级】 定时器大致分为六个功能单元:

• 从模式控制单元:负责时钟源、触发信号源的选择;控制计数器的启停、复位、门控等;

• 时基单元:定时器核心单元。负责时钟源的分频、计数、溢出重装等。

• 输入单元:为部分的时钟信号、 捕捉信号、 触发信号提供信号源。

• 比较输出单元:通过对比较寄存器与计数器的数值匹配比较,实现不同输出波形。

• 触发输出单元:输出触发信号给到其它定时器或外设。

• 捕捉比较单元: 是输入捕捉或比较输出的公共执行单元。

从信号链角度大体了解STM32定时器:

STM32定时器中存在着几种基本的信号:输入信号、 时钟信号、 触发输入信号、 触发输出信号,它们之间相互关联形成相应的信号链,从而衍生出各种定时器的功能。

5

STM32定时器功能汇总

1、 六类功能单元

【时基、从模式控制、输入、输出、捕捉比较、触发输出】

2、 四类信号

【时钟信号、外部输入信号、触发输入信号、触发输出信号】

3、 四类事件

【更新事件、捕捉、 比较事件、触发事件】

4、一大特性

【影子寄存器的预装载特性】

这上面的一些内容掌握了,对定时器基本就没多大问题了,资料中也有详细说明。

6

案例:定时器一使能就进中断的问题

问题描述: TIMER初始化阶段, 经常有人反馈一使能更新中断就就进中断服务程序?给开发带来些困扰,原因可能是什么?如何解决?

因为在定时器的初始化代码里有软件更新操作触发了更新事件,并置位了更新中断标志,当使能更新中断时就立刻进入更新中断服务程序。

在STM32标准库里的TIM_TimeBaseInit( )函数里都有这句代码:

TIMx->EGR = TIM_PSCReloadMode_Immediate;

• 在Cube库里的HAL_TIM_Base_Init( )函数里的 函数有这句代码:

TIMx->EGR = TIM_EGR_UG;

显然,这两行代码使用到了前面提到的软件更新操作,触发了更新事件,置位更新中断标志。所以我们在使能定时器更新中断之前,可以先做更新中断标志的清除操作。

说明:资料中提供了很多案例说明,以及分析,我觉得比较好,方便大家理解。请多理解一下这些案例。

7

时钟源问题思考

1、几种时钟源?来自何处?

2、来自TI1fp1与TIF_ED信号差别是什么?

3、来自TI1/TI2的时钟是否可以直接像内部时钟一样被计数器用来计数?

4、根据时钟源的介绍,你了解到了几种触发输入信号?

5、TI3FP4可以作为通道2的输入捕捉信号吗?

6、TI4FP4可以作为触发信号吗?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    19232

    浏览量

    405178
  • STM32
    +关注

    关注

    2313

    文章

    11206

    浏览量

    375231
  • 定时器
    +关注

    关注

    23

    文章

    3378

    浏览量

    125074
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索Cebek I - 36延时定时器:设计与应用指南

    探索Cebek I - 36延时定时器:设计与应用指南 在电子工程师的日常工作中,延时定时器是一种常见且实用的设备。今天,我们就来深入了解Cebek I - 36延时定时器,从其特性、
    的头像 发表于 05-11 14:40 136次阅读

    瑞萨RA系列FSP库开发实战指南之AGT低功耗定时器简介和结构框图

    瑞萨RA MCU有两种定时器外设:GPT(General PWM Timer)定时器和AGT(Asynchronous General Purpose Timer)定时器
    的头像 发表于 04-30 16:47 7555次阅读
    瑞萨RA系列FSP库开发实战指南之AGT低功耗<b class='flag-5'>定时器</b>简介和结构框图

    深入剖析NE555定时器:特性、参数与应用

    深入剖析NE555定时器:特性、参数与应用 在电子工程师的工具箱中,NE555定时器是一款经典且实用的双极性集成电路。它以其高精度的定时功能和广泛的应用场景,在电子设计领域占据着重要的地位。今天
    的头像 发表于 04-28 15:40 210次阅读

    XD/XL7555与7556:高性能CMOS RC定时器的设计与应用

    XD/XL7555与7556:高性能CMOS RC定时器的设计与应用 引言 在电子设计领域,定时器是一种常见且关键的元件。XD/XL7555和7556作为CMOS RC定时器,在性能上
    的头像 发表于 04-28 13:15 204次阅读

    LM555QML定时器:功能特性、应用及设计要点

    LM555QML定时器:功能特性、应用及设计要点 在电子设计领域,定时器是一种常用的器件,可用于生成精确的时间延迟或振荡。TI公司的LM555QML定时器就是这样一款高度稳定的器件,下面我们来详细
    的头像 发表于 02-10 15:40 434次阅读

    深入解析 LM555 定时器:特性、应用与设计要点

    深入解析 LM555 定时器:特性、应用与设计要点 一、引言 在电子工程师的工具箱中,定时器芯片是常用的基础元件之一。而 TI 公司的 LM555 定时器,以其高稳定性、多种工作模式和广泛的应用范围
    的头像 发表于 02-10 15:35 656次阅读

    深入解析Nx556和Sx556双精度定时器:特性、应用与设计要点

    深入解析Nx556和Sx556双精度定时器:特性、应用与设计要点 在电子设计领域,定时器是一种常见且关键的组件,广泛应用于各种需要精确时间控制的场景。德州仪器(TI)的Nx556和Sx556系列双
    的头像 发表于 02-10 10:15 282次阅读

    LAT1173高精度定时器的同步功能应用笔记

    STM32G474 所含的高精度定时器(HRTIMER)其实包含了多个定时器,多个定时器之间可以单独工作,也可以进行同步,且高精度定时器还能与片上的其他
    发表于 01-11 17:32 0次下载

    四探针法测电阻的原理与常见问题解答

    法甚至被用作校正其他方法的基准。下文,Xfilm埃利将系统阐述四探针法的基本原理,并对实际应用中遇到的常见问题进行详细解答。四探针法测电阻的基本原理/Xfilm1
    的头像 发表于 12-04 18:08 1601次阅读
    四探针法测电阻的原理与<b class='flag-5'>常见问题</b>解答

    PWM、定时器、SysTick 区别及应用场景

    在单片机和嵌入式开发中,经常会遇到PWM(脉宽调制)、定时器、SysTick(系统滴答定时器)这几个词。很多初学者容易把它们混为一谈,以为都是“定时相关的东西”。其实,它们在本质和应用上有明显差别
    的头像 发表于 11-17 10:53 861次阅读
    PWM、<b class='flag-5'>定时器</b>、SysTick 区别及应用场景

    RVMCU课堂「21」: 手把手教你玩转RVSTAR—看门狗定时器

    版或 PlatformIO IDE 硬件需求 RV-STAR开发板 看门狗定时器基本原理 看门狗定时器实际上一个计数,在计数溢出时会产生一个复位信号,正常情况下
    发表于 10-29 06:01

    简述冲击电压发生基本原理

    冲击电压发生基本原理是 “电容并联充电、串联放电”,核心流程分三步: 先通过整流电路,将工频交流电转换为直流电,给多组电容器并联充电,储存足够电能并达到设定电压; 当充电完成后,触发高压开关使
    发表于 10-17 14:10

    SysTick系统滴答定时器简介

    SysTick—系统定时器是属于CM33内核中的一个外设,内嵌在NVIC中。系统定时器是一个24bit的向下递减的计数,计数每计数一次的时间为 1/SYSCLK,一般我们设置系统时
    的头像 发表于 09-23 09:50 1906次阅读
    SysTick系统滴答<b class='flag-5'>定时器</b>简介

    大彩讲堂:VisualHMI-LUA教程-定时器的使用指南

    定时器的使用
    的头像 发表于 08-31 16:59 1498次阅读
    大彩讲堂:VisualHMI-LUA教程-<b class='flag-5'>定时器</b>的使用指南

    第二十章 TIM——基本定时器

    本章介绍了W55H32基本定时器TIM6、TIM7,16位向上计数,含时钟源、预分频等,讲解定时计算及初始化结构体。
    的头像 发表于 06-20 13:51 1481次阅读
    第二十章 TIM——基本<b class='flag-5'>定时器</b>