電源應用中,不同PWM頻率之間的同步設置
在電源項目應用中,有時候不同PWM頻率信號之間需要同步,此時需要一些特殊設置可以實現(xiàn)。本文就介紹其中一種方法,基于dsPIC33CK256MP506實驗平臺,采用ADC分頻觸發(fā)事件,結合PWM的PCI同步功能來實現(xiàn)這一需求。
本文引用地址:http://cafeforensic.com/article/202402/455556.htm首先,設置兩路不同頻率的PWM信號,這里PWM3設置為500kHz,PWM4設為100kHz,分別設置為自觸發(fā)模式,互補模式輸出,此時我們查看二者波形。
圖1 CH1-PWM3L,CH2-PWM4L
從圖1上看,PWM3L的頻率為500k,而PWM4L的頻率為100kHz,符合我們前面的基本設置要求。不過,此時我們還沒有對二者做同步的動作。
圖2 采用ADC分頻觸發(fā)功能
這里選擇PG3EVTL寄存器中的ADTR1PS項進行ADC觸發(fā)分頻設置,并且使能ADTR1EN1對應TRIGA輸出,根據需要我們選擇1:5的分頻。
圖3 輸出ADC分頻觸發(fā)事件信號
在PWMEVTy寄存器中,這里我們通過對EVTySEL設置,將ADC觸發(fā)1這個信號輸出在一個I/O口上,這里以RC12為例。
圖4 使用PWM3的ADC分頻觸發(fā)信號1作為PWM4的PCI同步輸入信號
這里我們設置PWM4的PCI同步的源,PWM3的PWMEVTA事件作為同步源信號,此時PWMEVTA也就是剛剛我們設置的ADC trigger1的信號,相對于PWM3來說,就是5:1的頻率的信號,如圖5所示。
圖5 對PWMEVTA進行配置
圖6 CH1-PWM3L,CH2-PWM4L,CH3-ADC Trigger1 Event
圖7 CH1-PWM3L,CH2-PWM4L,CH3-ADC Trigger1 Event
在圖7中,我們將PWM3的觸發(fā)信號TRIGA向后進行了200nS延時,以驗證設置的合理性。在圖6中TRIGA為0,所以觸發(fā)信號基本和PWM3L的下降沿對齊。
圖8 設置PWM4的周期起始信號SOCS
由于我們采用PWM4的同步PCI的信號作為觸發(fā)信號,那么我們需要將PWM4的SOCS(Start of Cycle Selection)選項設置為0b1111,即通過TRIGA bit或者PCI sync功能設置SOCS。
圖9 設置PWM4的相應的SOCS寄存器為PCI sync功能
圖10 MCC中的配置相應與寄存器設置可以同步更新
圖11 PWM3設置為自觸發(fā)模式TRIGA為觸發(fā)輸出信號
圖12-1 PWM4SPCIH設置
圖12-2 PG4SPCIL設置
以上圖12為PWM4的PCI Sync功能設置,詳細功能請參考規(guī)格書內容。
圖13 PG4頻率設為250kHz驗證PCI同步的作用
圖14 CH1-PWM3L,CH2-PWM4L,CH3-ADC Trigger1 Event
基于圖13的設置,我們將PWM4頻率設為為250kHz,但此時看到PWM4的同步PCI源在起作用,PWM4L的頻率由PWM3的ADC Trigger1信號分頻觸發(fā)為100kHz,即從圖14上看到的周期約為10uS。
圖15 設置PWM4的頻率為100kHz且占空比40%
圖16 設置PWM3的頻率為500k且占空比30%
圖17 PWM3的觸發(fā)選項設置
這里我們由PWM3觸發(fā)PWM4,所以設置ADC Trigger1為觸發(fā)信號,且使用TRIGA信號,延時200ns,如果實際應用不需要延時,可以不設置這個數值,默認為0。
此時的波形為圖18,19所示。
圖18 CH1-PWM3L,CH2-PWM4L,CH3-ADC Trigger1 Event
圖19 CH1-PWM3L,CH2-PWM4L,CH3-ADC Trigger1 Event
從圖19來看,基于PWM3和PWM4都是互補模式輸出,死區(qū)設置都在50ns以內,那么從PWM3L的下降沿到ADC Trigger1的事件之間的時間主要是我們設置的觸發(fā)延時200ns產生,基于此PWM4和PWM3是完全同步的PWM波形。
以上我們對PWM不同頻率的通道之間的同步做了一個基本的說明,這個過程通過PWM自帶的ADC分頻觸發(fā)信號進行分頻觸發(fā),使用PWM事件作為PWM4的PCI同步源,以實現(xiàn)二者的同步。
評論