STM32 HRTIM Burst输出模式应用演示
2024-07-31 来源:elecfans
有人使用STM32G474芯片的片上高精度定时器HRTIM,他想使用其输出功能的Burst Mode。但不知如何使用,想找找参考例程。我这里就使用STM32G474芯片做下应用演示。
我们知道,STM32家族中有多个系列或子系列芯片内置HRTIM定时器。这里以STM32G474芯片为蓝本简单介绍下HRTIM时基单元中输出功能的BURST MODE原理及实现过程。HRTIM时基单元中输出模块【或通道】可以有三种工作状态,即运行态、空闲态、出错异常态【RUN、IDLE和FAULT】。

【注 :上面截图来自STM32G4系列参考手册】
此处所要讲的Burst模式其实就是运行态和空闲态交替地实现输出的模式,即输出通道一会工作在运行状态、一会工作在空闲状态,每种状态的持续时间可以编程,由Burst Mode控制器管理。
HRTIM输出单元的Burst 操作模式在轻量负载的电源逆变器产品中用得比较常见。通过减少输出跳变次数及开关损耗,可以显著地提升转换效率。
当工作在Burst模式时【下文中文我统一用交替输出模式来表述】,典型应用就是1个或几个周期的运行状态的有效输出后,紧跟着输出相应周期数的空闲状态,可以单次性,也可以周期性地实现。比方下图就是一个工作在交替输出模式的示例【注 :下面截图来自STM32G4系列参考手册】:

结合上图我们可以看出,交替输出控制器包括三个东西:
Burst计数器:时钟源【Burst Clock】可以有多种,甚至可以是HRTIM以外的事件,比较典型的是PWM周期事件。
寄存器HRTIM_BMCMP:用它定义空闲时间段长度。
寄存器HRTIM_BMPER:用它来定义一次交替输出的整个时间段,即上面的空闲事件段加上运行态时间段。时间段长短通过计数器的计数值来标定。【注 :下面截图来自STM32G4系列参考手册】

上图中的交替输出模块的计数器的时钟源是HRTIM定时器单元的计数周期事件;
HRTIM_BMCMP=4,则一次交替输出的时间段内有5个计数周期做空闲输出;
HRTIM_BMPER=7,则一次交替输出的时间段为8个计数周期,其中运行处于运行态有3个周期;
另外,要进入交替输出模式,还需要触发信号来激活。能触发交替输出模式的事件很多,可以是HRTIM的时基单元的复位事件、溢出事件、比较事件、重复计数事件等,还可以来自其它片上常规定时器的事件。

在下面的演示示例中,我选用TIMA的复位事件作为交替输出模式的触发事件。那么,现在就以STM32G474芯片为例,来介绍下HRTIM交替输出模式的实现过程。
我使用STM32CubeMx图形化工具进行基本配置。使用HRTIM里的TIMA单元,并开启其TA1/TA2的两路PWM输出。关于这两个通道的配置参数基本一样,有一点差别就是我只开启了TA1的交替输出模式,而没有开启TA2的。这样可以明显地做效果比较。重点关注下面配置截图中带下划线,尤其红色下划线的地方。


在交替输出模式配置【Burst Mode configuration】里,我们配置Burst Mode Period为10,它对应前面提到的寄存器HRTIM_BMPER的值,即一次交替输出的整个时间段为11个周期。
配置Burst Mode Idle Duration为4,它对应前面提到的寄存器HRTIM_BMCMP,即一次交替输出时间段中有5个周期处于空闲输出【当然空闲输出电平可以根据需要选择性配置,这里输出低电平】。至于交替输出模式的触发信号,这里选择的是TIMA的复位事件,交替输出模式的计数时钟选择TIMA的周期性溢出事件。当然,具体应用时我们可以根据实际需要选择。

其它配置细节这里就不啰嗦了,先跑出效果来。然后自己结合手册尝试调整,逐渐加深理解,慢慢进入自由使用。
基于我上面的配置,创建基于HAL库的工程后,只需添加几行如下代码即可运行查看结果。


上面截图就是基于前面配置及代码的实现结果。不难看出,TA1开启了交替输出功能,TA2没有开启。从TA1的输出,我们可以看出整个交替输出时间段为11个周期,其中6个周期为有效运行状态,5个周期处于空闲输出状态。
下一篇:可以快速用STM32实现什么?
- 意法半导体中国本地造STM32微控制器启动规模量产
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 基于机智云与STM32的智能拐杖安全监测系统在养老物联网中的应用
- 内置全栈安全,一站式满足CRA法案与IEC 62443标准——米尔STM32MP257核心板
- 如何用 STM32 FLASH 实现等效 100 万次擦写的 EEPROM 功能?
- 实战解析:通过一个小项目掌握STM32所有外设
- STM32学了两年半,却还是不会做项目
- 意法半导体推出最新STM32MP21微处理器,兼具高性价比、低功耗、高灵活性
- 基于STM32的矿井作业环境监测系统设计与实现
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 有源晶振与无源晶振的六大区别详解
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 蓝牙信道探测技术原理与开发套件实践
- Microchip 推出生产就绪型全栈边缘 AI 解决方案,赋能MCU和MPU实现 智能实时决策
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析




