
1. 引言 STM32G474 中高精度定时器的 PWM 输出支持 Push-Pull 模式,该模式可以用于 PushPull 拓扑或是 LLC 拓扑的驱动,在使用该模式时需要遵循 RM 手册中给出的准则,否则输出的波形将会出现异常。 2. 问题描述 使用高精度定时器 Push-Pull 模式产生 PWM 输出的过程中,发现定时器 PWM 输出通道 CH1 与 CH2 输出先后顺序存在疑问,在定时器使能后,有时 CH1 通道先输出,有时CH2 通道先输出,按照手册中给出的例子理解,应该是 CH1 先输出,然后再是 CH2 输出,如下图所示。 ![]() 然而实际在不同的情况下,输出波形并非如此,这是为什么呢? 2.1. 问题解释 2.1.1. Push-Pull 模式工作原理 Push-Pull 模式下,CH1 与 CH2 通道的输出都是来自 CrossBar 单元产生的波形,但是波形输出到哪一个通道,是由定时器内部一个称作的 Push-Pull Logic 的单元来控制的,如图 2 所示, • 当 Push-Pull Logic 单元的输出为 1 时,CH1 通道输出 CrossBar 单元产生的波形,CH2 的电平保持在 inactive 状态; • 当 Push-Pull Logic 单元的输出为 0 时,CH2 通道输出 CrossBar 单元产生的波形,CH1 的电平保持在 inactive 状态。 ![]() Push-Pull Logic 单元的工作原理为:初始默认情况下 Push-Pull Logic 单元的输出为低,当定时器的计数达到周期值(Roll-over event)或是定时器被外部事件复位(reset)时,Push-Pull Logic 单元输出将出现翻转,从而实现 CH1 与 CH2 的交替输出。 完整版请查看:附件 |
LAT1047高精度定时器Push_Pull模式输出逻辑_v2.pdf
下载606.82 KB, 下载次数: 16
经验分享 | STM32U5系列TIMER+DMA+DAC应用演示
经验分享 | STM32G4 UART+TIMER+DMA应用示例
经验分享 | STM32定时器同步启动示例及应用提醒
经验分享 | STM32 TIMER+DMA输出PWM异常二案例
经验分享 | 更改STM32定时器周期后的输出疑问分析
基于定时器捕获测量脉宽的应用示例
狂欢三】STM32C031使用TIM定时器DMA方式实现WS2812彩灯输出(三)
【狂欢三】STM32C031使用TIM定时器DMA方式实现PWM输出(二)
【狂欢三】STM32C031使用TIM定时器PWM输出
stm32使用定时器触发dma传输,启动dma没反应的几种情况的解决方法