博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
STM32低功耗定时器(LPTIM)有哪些独特功能?
阅读量:2044 次
发布时间:2019-04-28

本文共 1645 字,大约阅读时间需要 5 分钟。

关注+星标公众,不错过精彩内容

作者 | strongerHuang

微信公众号 | 嵌入式专栏

开发低功耗产品,我们会比较关注整个系统的功耗问题。那么,LPTIM低功耗定时器你有关注吗?

1写在前面

在早些年,可能较少听见LPTIM这个名词。随着低功耗产品需求越来越严格,MCU厂商就推出了针对低功耗应用的LPTIM定时器。

定时器是我们常见的一种外设,之所以这么常见,原因在于定时器的用途非常广泛。

在STM32所有MCU中都配有定时器,那么你有关注、对比过各系列,各型号MCU中定时器的差异吗?

2哪些STM32配有LPTIM定时器

在STM32中,相对较新的MCU部分型号配有LPTIM定时器。

比如:STM32F7、H7高性能MCU,STM32L0、 L4低功耗MCU,以及新推出的G0、G4系列中都配有这种LPTIM定时器。

具体哪些MCU配有LPTIM,大家可以下载对应的数据手册查看

本文围绕STM32G0讲述其中的LPTIM定时器。

3LPTIM功能

LPTIM:Low-power timer,即低功耗定时器。

LPTIM 是一个 16 位定时器,得益于其定时器的低功耗。

由于 LPTIM 的时钟源具有多样性,因此 LPTIM 能够在所有电源模式(待机模式除外)下保持运行状态。

即使没有内部时钟源, LPTIM 也能运行,鉴于这一点,可将其用作“脉冲计数器”,这种脉冲计数器在某些应用中十分有用。

此外, LPTIM 还能将系统从低功耗模式唤醒,因此非常适合实现“超时功能”,而且功耗极低。

LPTIM 引入了一个灵活的时钟方案,该方案能够提供所需的功能和性能,同时还能最大程度地降低功耗。

我仔细对比了一下STM32各系列的LPTIM低功耗定时器,发现很多功能基本一样。

1.框图

STM32G0低功耗定时器框图:

STM32L0低功耗定时器框图:

对比框图,可以发现这个LPTIM片上外设有相似之处。

当然,有些细节是不一样的,像在STM32H7中有多个LPTIM,这几个LPTIM之间是有一定差异的。

2.LPTIM 主要特性

  • 16 位递增计数器

  • 3 位预分频器,可采用 8 种分频系数(1、 2、 4、 8、 16、 32、 64 和 128)

  • 可选时钟

– 内部时钟源:LSE、 LSI、 HSI 或 APB 时钟

– LPTIM 输入的外部时钟源(在没有 LP 振荡器运行的情况下工作,可在使用脉冲计数器应用场景中使用)

  • 16 位 ARR 自动重载寄存器

  • 16 位比较寄存器

  • 连续/单触发模式

  • 可选软件/硬件输入触发

  • 可编程数字防抖动干扰滤波器

  • 可配置输出:脉冲和 PWM

  • 可配置 I/O 极性

  • 编码器模式

拿这些特性和其它基本定时器相对较,你会发现,这些特性中很多都是LPTIM独有的。

3.LPTIM  RCC

LPTIM的RCC和其他定时器相比较,其RCC功能更加丰富。

通过上面框图可以发现,LPTIM 可通过多个时钟源提供时钟。

它可以由内部时钟信号提供时钟,内部时钟信号可通过复位和时钟控制器 (RCC) 在 APB、 LSI、 LSE 或 HSI 时钟源中进行选择

4.干扰滤波器

这个功能也是LPTIM所特有的一个功能。

LPTIM 输入由数字滤波器保护,避免任何毛刺和噪声干扰在 LPTIM 内部传播,从而防止产生意外计数或触发。

滤波示意图:

这个原理比较简单,如果不能理解请查看参考手册详解。

LPTIM定时器的功能比较多,可能初学者一看到那么多内容就吓到了。其实,把内容拆开来看并不难。

本文旨在让更多朋友知道这些功能,想要深入掌握其中知识,需结合手册和实践编程。

------------ END ------------

后台回复『STM32』『MCU』阅读更多相关文章。

关注微信公众号『嵌入式专栏』,底部菜单查看更多内容,回复“加群”按规则加入技术交流群。

点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

转载地址:http://lfxof.baihongyu.com/

你可能感兴趣的文章
单元测试需要具备的技能和4大阶段的学习
查看>>
【Loadrunner】【浙江移动项目手写代码】代码备份
查看>>
LoadRunner中获取当前系统时间方法
查看>>
Python几种并发实现方案的性能比较
查看>>
【实战】10.10.1.9考试系统代码完成一次答题代码备份
查看>>
[Jmeter]jmeter之脚本录制与回放,优化(windows下的jmeter)
查看>>
Jmeter之正则
查看>>
【JMeter】1.9上考试jmeter测试调试
查看>>
【虫师】【selenium】参数化
查看>>
【JMeter】如何用JMeter进行压力测试
查看>>
【Python练习】文件引用用户名密码登录系统
查看>>
学习网站汇总
查看>>
【Python】用Python打开csv和xml文件
查看>>
【Loadrunner】性能测试报告实战
查看>>
【面试】一份自我介绍模板
查看>>
【自动化测试】自动化测试需要了解的的一些事情。
查看>>
【selenium】selenium ide的安装过程
查看>>
【手机自动化测试】monkey测试
查看>>
【英语】软件开发常用英语词汇
查看>>
Fiddler 抓包工具总结
查看>>