引言
在高精度定時器中,可以使用外部事件來對 PWM 輸出進(jìn)行封鎖,并可自動恢復(fù);在高級控制定時器中,可以使用 Break 或是 Clr_input 來對 PWM 輸出進(jìn)行封鎖, 然后也可以自動恢復(fù),其中 Break 必須結(jié)合 AOE 置位來實(shí)現(xiàn)自動恢復(fù)。
雖然都可以實(shí)現(xiàn)封波后的自動恢復(fù),但是在二者之間還是存在一些區(qū)別。
PWM 封波-自動恢復(fù)原理分析
在高精度定時器中,通過配置 PWM 的 Set 與 Reset 事件,當(dāng) Set/Reset 事件發(fā)生時,PWM 輸出做出對應(yīng)的響應(yīng)。要實(shí)現(xiàn)封波-自動恢復(fù),只需配置合適的 Reset 事件,Reset 發(fā)生時,觸發(fā) PWM 輸出 inactive 電平,當(dāng) Reset 事件消失后,PWM 將在下個 Set 事件點(diǎn)重新輸出。
在高級控制定時器中,PWM 的工作方式有 PWM_Mode1 與 PWM_Mode2,基于定時器比較器的值與當(dāng)前 Counter 的值來結(jié)合 PWM 模式來確定輸出電平的狀態(tài)。要實(shí)現(xiàn)封波-自動恢復(fù),通過 Break(with AOE)或是 Clr_input 功能,當(dāng) Break 信號或是 Clr_input 信號電平有效時,PWM 輸出會被封鎖,此時端口電平跟當(dāng)時的 PWM 配置有關(guān);當(dāng) Break 信號或是 Clr_input 信號電平無效時,PWM 將在下個 UEV(更新事件)或是新的 PWM 的周期恢復(fù)輸出。
下面通過實(shí)際的測試與波形來詳細(xì)說明。
高精度定時器的 “封波-自動恢復(fù)”
使用的是外部事件 1(EEV1)關(guān)聯(lián)外部過流故障信號,利用 EEV1 來封鎖 PWM。配置如下(測試中使用的配置是高電平觸發(fā)事件):
使用以上配置時,只要故障信號持續(xù)高電平的時間和 PWM 的 Set 事件不重疊,那么定時器在下個 PWM 周期能正常輸出 PWM,如下圖所示。
但是如果 Fault 信號高電平的持續(xù)時間覆蓋了 PWM 的 set 事件,那么 PWM 將一直輸出低電平,直到 Fault 信號高電平不再覆蓋 PWM 的 Set 件,如下圖所示。
另外,高精度定時器中的還可以工作的沿模式,例如配置 EEV1 工作在上升沿觸發(fā)模式,如下圖所示。
高級控制定時器的“封波-自動恢復(fù)”
高級控制定時器中,break 為電平有效模式(測試中使用的配置是高電平觸發(fā) Break)。當(dāng)出現(xiàn) Break 信號出現(xiàn)高電平時,PWM 封波,如果 Break 信號高電平未跨周期,那么在下個周期 PWM 能正常輸出,如下圖所示。
但是如果 Break 信號高電平跨周期,即使高電平持續(xù)時間沒有到達(dá)比較事件點(diǎn),下個周期 PWM 依舊繼續(xù)“封波”,直到 Break 信號恢復(fù)低電平的下個周期 PWM 才會正常輸出,如下圖所示。
小結(jié)
綜上以上的分析與實(shí)驗(yàn)結(jié)果:
? 高精度定時器封波基于事件觸發(fā),封波后只要故障消失,則在下個觸發(fā)來臨時就可以立即生效,恢復(fù) PWM 輸出。
? 高級控制定時器封波后,即使故障消失后,也要等到下個 UEV 事件或是新的 PWM周期才能恢復(fù) PWM 輸出。
原文標(biāo)題:工程師筆記|高精度定時器與高級控制定時器 PWM 封波后再恢復(fù)的區(qū)別
文章出處:【微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
PWM
+關(guān)注
關(guān)注
114文章
5119瀏覽量
213174 -
定時器
+關(guān)注
關(guān)注
23文章
3232瀏覽量
114331 -
自動恢復(fù)
+關(guān)注
關(guān)注
0文章
2瀏覽量
5993
原文標(biāo)題:工程師筆記|高精度定時器與高級控制定時器 PWM 封波后再恢復(fù)的區(qū)別
文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論