STC12C2052AD單片機控制的改進型調(diào)壓電路
0 引言
在ZXC10通信電源系統(tǒng)中,上位機輸出的PWM調(diào)制信號的頻率為1 kHz,而且系統(tǒng)要求電源能根據(jù)PWM信號的占空比進行調(diào)壓。即對電源輸出電壓在40 Vdc~60 Vdc范圍內(nèi)通過此PWM信號進行線性調(diào)節(jié)。PWM信號5%占空比對應(yīng)40±0.5 Vdc,95%的占空比對應(yīng)60±0.5 Vdc。以前此功能是用帶有D/A的單片機來實現(xiàn).即把PWM調(diào)制信號輸入單片機,通過單片機來計算PWM信號的占空比,再根據(jù)PWM信號的占空比與輸出電壓的關(guān)系,并通過D/A轉(zhuǎn)換來產(chǎn)生用于調(diào)節(jié)輸出電壓的偏移量,最后通過此偏移量和電源輸出反饋量的共同作用來實現(xiàn)調(diào)壓。
1 單片機調(diào)壓系統(tǒng)
通過帶有D/A的單片機來實現(xiàn)調(diào)壓系統(tǒng)的方框圖如圖1所示。但是,由于帶有D/A的單片機比較貴,因而會增加產(chǎn)品成本。而如果把PWM調(diào)制信號的頻率提高,再經(jīng)過一個簡單的二階有源低通濾波器來產(chǎn)生調(diào)壓偏移量,則可用不帶D/A轉(zhuǎn)換的單片機來實現(xiàn)調(diào)壓,這樣可以大大節(jié)省成本。其改進后的電路方框圖如圖2所示。
2 STC12C2052AD的PCA/PWM工作原理
由于STC12C2052AD單片機是作于1個時鐘/機器周期,且有增強型8051內(nèi)核,故其速度比普通8051快8~12倍。該單片機有2路可編程計數(shù)器陣列(PCA)/PWM,其中PCA1模塊用作捕獲模式,可識別輸入的PWM調(diào)制信號,PCA0模塊用作脈寬調(diào)節(jié)模式(PWM),可實現(xiàn)頻率轉(zhuǎn)換。此外,由于該單片機價格比較便宜,故采用此單片機作為核心控制芯片。
2.1 STC12C2052AD單片機的PCA捕獲模式
STC12C2052AD系列單片機中的PCA可編程計數(shù)器陣列含有一個特殊的16位定時器,它可與2個16位捕獲/比較模塊相連。每個模塊可編程工作在4種模式下,即:上升/下降沿捕獲、軟件定時器、高速輸出或可調(diào)制脈沖輸出。設(shè)計時,可將模塊0連接到P3.7(CEX0/PCA0/PWM0),模塊1連接到P3.5(CEX1/PCA1/PWM1)。由于寄存器CH和CL的內(nèi)容是正在自由遞增計數(shù)的16位PCA定時器的值,因此,PCA定時器可作為2個模塊的公共時間基準(zhǔn),并可通過編程工作在1/12振蕩頻率、1/2振蕩頻率、定時器0溢出或ECI腳的輸入(P3.4)。定時器的計數(shù)源由CMOD SFR的CPS1和CPS0位來確定。
要使PCA模塊工作在圖3所示的捕獲模式,寄存器CCAPMn中的CAPNn和CAPPn至少應(yīng)有一位必須置1。對模塊的外部CEXn輸入(包括CEX0/P3.7、CEX1/P3.5、CEX2/P2.0、CEX3/P2.4口)的跳變進行采樣時,若采樣到有效跳變,其PCA硬件就將PCA計數(shù)器陣列寄存器(CH和CL)的值裝載到模塊的捕獲寄存器中(CCAPnL和CCAPnH)。
2.2 STC12C2052AD的PCA脈寬調(diào)節(jié)模式
所有PCA模塊都可按圖4所示的工作模式用作PWM輸出。其輸出頻率取決于PCA定時器的時鐘源。由于所有模塊均共用僅有的PCA定時器,所以,它們的輸出頻率相同。各個模塊的輸出占空比是獨立變化的,與使用的捕獲寄存器{EPCnL,CCAPnL}有關(guān)。當(dāng)CL SFR的值小于{EPCnL,CCAPhL}時,輸出為低,而當(dāng)PCA CLSFR的值等于或大于{EPCnL,CCAPnL}時,輸出為高。當(dāng)CL的值由FF變?yōu)?0溢出時,{EPCnH,CCAPnH}的內(nèi)容將被裝載到{EPCnL,CCAPnL}中。這樣就可實現(xiàn)無干擾地更新PWM。使能PWM模式時,模塊CCAPMn寄存器的PWMn和ECOMn位必須置位。由于PWM是8位的,所以可用下式來計算PWM的信號頻率:
3 PWM信號的接收與轉(zhuǎn)換
3.1 PWM調(diào)制信號接收模塊
由于要用PCA1模塊來把上位機輸出的頻率為1 kHz的PWM調(diào)制信號的頻率提高(因為頻率越高,越容易濾波),故將PCA定時器的時間基準(zhǔn)置為1/2振蕩頻率。用PCA1 (P3.7)模塊來識別接收的PWM調(diào)制信號時,應(yīng)使PCA1工作在上升/下降沿捕獲工作模式,并打開PCA中斷。設(shè)計時,可首先設(shè)置PCA1工作在上升沿捕獲工作模式,這樣,當(dāng)P3.7腳采樣到上升沿跳變時,PCA0模塊即可將PCA計數(shù)器陣列寄存器CH和CL的值裝載到模塊的捕獲寄存器中{CCAP1H,CCAP1L}。然后在中斷中把{CCAP1H,CCAP1L}的值存放到自定義的數(shù)據(jù)單元{UP_DATAH,UP_DATAL}中,并在中斷中把PCA1工作模式設(shè)置為下降沿捕獲工作模式,從而在P3.7腳采樣到下降沿跳變時,PCA1模塊硬件就可將PCA計數(shù)器陣列寄存器{CH,CL)的值裝載到模塊的捕獲寄存器中{CCAP1H,CCAP1L}。之后,再在中斷中把{CCAP1H,CCAP1L}的值存放在數(shù)據(jù)單元{DOWN_DATAH,DOWN_DATAL}中,并利用雙字節(jié)無符號數(shù)減法得出PWM調(diào)制信號正脈沖時定時器的計數(shù)個數(shù)為:
N1={DOWN_DATAH,DOWN_DATAL)-{DOWN_DATAH,DOWN_DATAL}
由于PWM調(diào)制信號的頻率為1 kHz,周期T為1 ms。因此,可設(shè)1 ms中PCA定時器的計數(shù)個數(shù)為N2,則PWM調(diào)制信號的占空比為:
3.2 PWM調(diào)制信號的頻率轉(zhuǎn)換
上位機輸出的PWM調(diào)制信號的頻率為1 kHz左右。由于該頻率比較低,直接對其進行濾波后的紋波比較大,因此,在濾波之前,應(yīng)先把接收的PWM調(diào)制信號轉(zhuǎn)變成與占空比成線性比例的高頻PWM調(diào)制信號,頻率轉(zhuǎn)換可通過PCA0 (P3.5)PWM功能模塊來實現(xiàn)。由于選擇的晶振為20MHz,故可選Fosc/2為PCA/PWM時鐘輸入源,這樣,其PWM的頻率為39.062 kHz。
這樣,當(dāng)PCA0模塊設(shè)置為PWM輸出模式時,根據(jù)PCA脈寬調(diào)節(jié)模式(PWM)的工作原理,當(dāng)CCAP0L=FFH時,P3.5將輸出占空比為0的PWM信號,而當(dāng)CCAP0L=80H時,P3.5則輸出占空比為50%的PWM信號,當(dāng)CCAP0L=0時,P3.5會輸出占空比為100%的PWM信號。這樣,由PCA脈寬調(diào)節(jié)模式(PWM)的工作原理可得:
這樣,通過上式即可把頻率為1 kHz的PWM信號轉(zhuǎn)換為頻率為39.062 kHz的PWM信號,其轉(zhuǎn)換后的PWM占空比與原來的1 kHz的PWM信號成線性比例關(guān)系。
4 二階濾波電路
圖5所示為有源二階濾波電路的原理圖。由有電源變換器的反饋量可知,當(dāng)調(diào)壓偏移量為1.5V的時候,電源輸出40 V;當(dāng)調(diào)壓偏移量為3.0V的時候,電源輸出60 V。因此,在PWM信號的占空比為5%時,調(diào)節(jié)二階有源濾波器的參數(shù),并通過調(diào)節(jié)R5/R4來改變運算放大器的增益,然后調(diào)節(jié)RW1即可改變運算放大器的基準(zhǔn),使偏移量VS為1.5 V;而在PWM信號占空比為95%時,使偏移量VS為3.0 V。這樣就可使PWM信號的占空比在5%~95%之間變化,從而使變換器的輸出電壓在40 Vdc~60 Vdc范圍內(nèi)線性變化。
5 仿真驗證
根據(jù)圖5進行PSIM仿真驗證時,可將仿真參數(shù)設(shè)定為:R1=R2=R4=R5=10 kΩ,R3=20 kΩ,R6=2 kΩ,R7=1 kΩ,C1=C2=C3=C4=104 pF,從而得出如圖6所示的特定占空比的Vs波形。
其它特定占空比(D=5%,20%,40%,60%,80%,95%)的仿真記錄數(shù)據(jù)如表1所列。圖7所示是該調(diào)壓電路的PWM信號占空比與Vs調(diào)壓偏移量的變化曲線。由圖可見,該變化呈線性關(guān)系。
6 結(jié)束語
本文通過提高PWM調(diào)制信號的頻率,再結(jié)合二階有源濾波電路,實現(xiàn)了頻率到電壓的一種轉(zhuǎn)換。該轉(zhuǎn)換可在40Vdc~60Vdc范圍內(nèi),對ZXC10通信電源的輸出電壓通過PWM信號進行線性調(diào)節(jié),這種方法可以避免使用較貴的D/A轉(zhuǎn)換模塊,因而可以節(jié)省成本。同時也提高了該電源的工程使用價值。
評論
查看更多