1、引言
在《高精度定時(shí)器如何輸出零占空比與滿占空比 PWM 波形》一文中,我們分享了在高精度定時(shí)器中 PWM 輸出零占空比和滿占空比的方法,但是在實(shí)際的應(yīng)用中還會(huì)存在零占空比和滿占空比連續(xù)切換的情況,在原有的 PWM 發(fā)波方式上,若是采樣 up-down count 模式的話要實(shí)現(xiàn)這種連續(xù)切換會(huì)存在一些問(wèn)題,本文將分析相關(guān)問(wèn)題,并給出更加合適的方案來(lái)實(shí)現(xiàn) PWM 零-滿占空比的連續(xù)切換。
2、Up count 模式下零-滿占空比 PWM 切換
在 STM32G474 的高精度定時(shí)器中,up count 模式下,零-滿占空比的輸出方式以及連續(xù)切換可以直接實(shí)現(xiàn),具體參考下圖以及說(shuō)明。注意以下的示例中,比較寄存器和周期寄存器的賦值都需要滿足芯片用戶手冊(cè)中對(duì)賦值的限制,具體參見(jiàn) RM0440 中 Period and compare registers min and max values 的說(shuō)明。
2.1. 邊沿對(duì)齊模式
PWM 發(fā)波配置:
- PWM Set source :PER event
- PWM Reset source:CMPx event (x=1 or 3)
PWM 發(fā)波動(dòng)作:
- 占空比 0%: CMPx = 0
- 占空比 100%: CMPx > PER
- 其他占空比: CMPx = M
2.2. 非邊沿對(duì)齊模式
PWM 發(fā)波配置:
- PWM Set source :CMPx event (x=1 or 3)
- PWM Reset source:CMPy event
PWM 發(fā)波動(dòng)作:
- 占空比 0%:CMPx > PER,CMPy = 0
- 占空比 100%:CMPx = 0,CMPy > PER
- 其他占空比:CMPy - CMPx = M