• 資料介紹
    • 1、引言
    • 2、寄存器更新問(wèn)題的產(chǎn)生
    • 3、解決方法
    • 4、小結(jié)
  • 資料預(yù)覽
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

LAT1432 變頻控制中的TIMER寄存器更新話題

03/06 14:21
423
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

LAT1432 變頻控制中的TIMER寄存器更新話題

582.81 KB

1、引言

采用 LLC 功率拓?fù)涞淖儞Q器需要采用 PFM(Pulse Frequency Modulation)控制方式完成環(huán)路控制,由于開(kāi)關(guān)頻率變化范圍寬,在高頻段無(wú)法完成單開(kāi)關(guān)周期控制,所以一般的做法是將環(huán)路算法的運(yùn)行頻率和開(kāi)關(guān)頻率解耦,即環(huán)路算法運(yùn)行頻率不與開(kāi)關(guān)頻率關(guān)聯(lián),而是以一個(gè)定頻的方式運(yùn)行并按照環(huán)路計(jì)算結(jié)果進(jìn)行開(kāi)關(guān)頻率的更新。由于環(huán)路算法運(yùn)行頻率與開(kāi)關(guān)頻率不同步,經(jīng)常會(huì)出現(xiàn)當(dāng)向定時(shí)器的多個(gè)寄存器進(jìn)行寫(xiě)入操作中發(fā)生了更新事件,出現(xiàn)部分寄存器更新延遲,從而導(dǎo)致 PWM 波形異常,嚴(yán)重時(shí)上下橋臂功率管直通損壞。

2、寄存器更新問(wèn)題的產(chǎn)生

寄存器更新延時(shí)的產(chǎn)生原理如下圖所示,環(huán)路算法定時(shí)運(yùn)行,圖形上脈沖表示環(huán)路算法此時(shí)正在進(jìn)行寄存器寫(xiě)入操作,如果在所有寄存器寫(xiě)入操作還未完成的時(shí)候發(fā)生了更新事件(比如定時(shí)器周期事件),在使能了預(yù)加載功能的情況下,此時(shí)會(huì)造成更新事件前寫(xiě)入的寄存器值立即生效,而更新事件后寫(xiě)入的寄存器值需要延遲到下次更新事件才生效,這種情況下可能導(dǎo)致定時(shí)器所產(chǎn)生的 PWM 輸出波形異常。

3、解決方法

為了解決以上描述中的寄存器更新問(wèn)題,在高精度定時(shí)器中有個(gè)專(zhuān)門(mén)的寄存器位 MUDIS 和TxUDIS(x=A/B/C/D/E/F)來(lái)控制更新操作的使能與屏蔽,且所有位都在同一個(gè)寄存器中,在軟件中可以通過(guò)一個(gè)操作同時(shí)完成所有內(nèi)部定時(shí)器更新操作的使能/屏蔽。

另外,在無(wú)法屏蔽的更新操作的情況下,則需要選擇合適的時(shí)間點(diǎn)進(jìn)行寫(xiě)寄存器操作,以防止寫(xiě)操作未完成就發(fā)生了更新事件。比如在寫(xiě)寄存器操作前讀取定時(shí)器計(jì)數(shù)器的值并與當(dāng)前的周期值進(jìn)行比較(周期事件觸發(fā)寄存器更新操作),只有當(dāng)時(shí)間間隔確保能夠完成所有寫(xiě)寄存器操作的情況下,才進(jìn)行寫(xiě)操作,否則放棄在本計(jì)數(shù)周期內(nèi)更新。

也可以選擇再使能一個(gè)高優(yōu)先級(jí)中斷,比如周期中斷,在算法中斷服務(wù)程序中完成寄存器值的計(jì)算后,再開(kāi)啟周期中斷,待下一個(gè)周期中斷來(lái)到時(shí),在周期中斷中進(jìn)行寄存器寫(xiě)操作,完成后再將周期中斷關(guān)閉,基本流程如下:

算法中斷服務(wù)程序—>計(jì)算寄存器值—>使能周期中斷

周期中斷服務(wù)程序—>寄存器寫(xiě)操作—>關(guān)閉周期中斷

按照以上的思路,一個(gè)實(shí)際的更新示例如下,C1 和 C2 為 LLC 半橋變換器驅(qū)動(dòng)波形,C4 的脈沖表示進(jìn)入了環(huán)路算法中斷,在完成環(huán)路運(yùn)算后使能定時(shí)器周期中斷,C3 的脈沖表示進(jìn)入定時(shí)器周期中斷進(jìn)行寄存器寫(xiě)操作,完成后屏蔽定時(shí)器周期中斷。每次頻率修改,PWM 輸出正常,沒(méi)有出現(xiàn)異常。

4、小結(jié)

本文介紹了在 PFM 控制模式下定時(shí)器寄存器更新存在的問(wèn)題和產(chǎn)生的原因,在高精度定時(shí)器中可以使用更新操作的使能與屏蔽來(lái)避免該問(wèn)題,同時(shí)給出了在不屏蔽更新操作的情況下如何通過(guò)選擇合理時(shí)間點(diǎn)和使用中斷方式進(jìn)行定時(shí)器寄存器寫(xiě)入操作的方案,讓所有寄存器能夠同時(shí)完成更新,保證 PWM 輸出波形的正常。

資料預(yù)覽

相關(guān)推薦

  • LAT1209 Arm?v7-M架構(gòu)的STM32如何啟用DWT進(jìn)行計(jì)數(shù)
  • LAT1202 TIM DMA burst 輸出變頻 PWM 波形
  • LAT1255 直接修改寄存器來(lái)輸出內(nèi)部時(shí)鐘的方法