<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 基于C8051的軟開關(guān)用移相PWM的實現(xiàn)

          基于C8051的軟開關(guān)用移相PWM的實現(xiàn)

          ——
          作者:四川大學(xué) 陸冬良 張代潤 時間:2007-11-20 來源:21IC中國電子網(wǎng) 收藏

            摘要:通過C8051單片機的可編程計數(shù)器列陣PCA來實現(xiàn)用移相PWM觸發(fā)脈沖,實驗結(jié)果表明通過此法產(chǎn)生的PWM波調(diào)試方便,運行可靠,可應(yīng)用于多種電路中。

            關(guān)鍵詞
          ;

          0 引言

              軟開關(guān)技術(shù)近年來已經(jīng)得到了深入,廣泛的研究并且發(fā)展迅速。但在各種軟開關(guān)電路中,使開關(guān)管實現(xiàn)軟開關(guān)的觸發(fā)脈沖比較特殊:例如在典型的Boost ZCT—PWM電路[1]中,主開關(guān)管的觸發(fā)脈沖超前于輔助開關(guān)管的觸發(fā)脈沖,兩者雖然頻率相同,但占空比不同。在實驗中發(fā)現(xiàn),利用Cvgnal公司的C8051F系列單片機可以方便地產(chǎn)生此種軟開關(guān)用的、多路占空比不等的移相PWM脈沖。

          1 C805lF系列單片機可編程計數(shù)器陣列PCA簡介

              圖1為PCA原理框圖,以C8051F040為例,PCA包含1個專用的16位計數(shù)器/定時器和6個16位捕捉/比較模塊。從圖1中可見,16位PCA專用計數(shù)器/定時器的時基信號可有多種選擇,可通過配置相關(guān)的系統(tǒng)控制器的特殊功能寄存器(SFR)來實現(xiàn)。每個捕捉/比較模塊有自己的I/O線CEXn,可通過配制交叉開關(guān)寄存器(XBR。)將每個模塊的I/O線連接到端口I/0;每個模塊都可配制為獨立工作,有4種工作方式:邊沿觸發(fā)捕捉方式、軟件定時器比較方式、高速輸出和脈寬調(diào)制器。本文中產(chǎn)生多路占空比不等的移相PWM是使用了捕捉/比較模塊的高速輸出工作方式,其原理如圖2所示。

              PCAOL和PCAOH分別為系統(tǒng)16位PCA計數(shù)器/定時器的低8位和高8位,PCAOCPLn和PCAOCPHn分別為捕捉/比較模塊寄存器低8位和高8位。在高速輸出方式下,配制模塊工作方式的寄存器PCA0CPM值如圖2中所示。當系統(tǒng)PCA計數(shù)器/定時器與模塊寄存器值發(fā)生匹配時,模塊的CEXn引腳上的邏輯電平將發(fā)生變化,如果將相應(yīng)模塊的I/0線CEXn連接到端口I/0,單片機相應(yīng)端口輸出電平即發(fā)生變化,這就可實現(xiàn)PWM脈沖的高、低電平輸出。每個模塊的工作是單獨進行的,需要的CPU干預(yù)較少,這就可同時輸出多路PWM。

              控制寄存器PCAOCN中,CF是當PCA計數(shù)器/定時器溢出時,由硬件置位,如CF中斷被允許則此時CPU轉(zhuǎn)向CF中斷服務(wù)程序,該位只能由軟件清零。CR置1是允許PCA計數(shù)器/定時器工作,置O是禁止。CCF0~CCF5是模塊捕捉比較標志,當匹配發(fā)生時,該位由硬件置位,如CCF中斷被允許則此時CPU轉(zhuǎn)向相應(yīng)CCF中斷服務(wù)程序,該位只能由軟件清零。

              可見要產(chǎn)生多路移相PWM,可允許多個捕捉/比較模塊同時工作,當發(fā)生匹配即電平轉(zhuǎn)換時,允許CPU轉(zhuǎn)向CCF中斷服務(wù)程序,在中斷服務(wù)程序中,將相應(yīng)的數(shù)值偏移量與寄存器PCAOCPLn和PCAOCPHn值相加,這一數(shù)值偏移量便決定了下一次匹配的時間,PWM的高、低電平脈寬便由各自相應(yīng)的數(shù)值偏移量決定。

          2 軟件系統(tǒng)設(shè)計及編程語言的選擇

              系統(tǒng)主程序框圖如圖3所示。

              在針對具體電路應(yīng)用時,須加入主開關(guān)管PWM觸發(fā)脈沖調(diào)節(jié)子程序,根據(jù)輸出電壓采樣反饋來調(diào)節(jié)其占空比以保證輸出電壓穩(wěn)定。在選擇編程語言時,同時用C51和匯編語言來產(chǎn)生2路移相PWM,并作了比較。比較如下:設(shè)定開關(guān)頻率為20kHz,主開關(guān)管觸發(fā)脈沖占空比為50%,輔助管為20%并滯后于主開關(guān)管2lμs開通。進入CCF中斷服務(wù)程序后,CPU進行捕捉/比較模塊寄存器偏移量計算時,以模塊0計算主開關(guān)管高電壓脈寬偏移量為例,C51語句為:

              tempI=(PCA0CPH0《8)lPCA0CPLO;//取寄存器當前值
              temp1+=0x0271: //上升沿,加上高電壓脈寬
              PCA0CPLO=(0Xff&(temp1);
              PCAOCPH0=[0xff&(temp》8)];//計算結(jié)果返回寄存器

              編譯后的語句執(zhí)行過程為:
              MOV     R7,FCH
              MOV     A,R7
              MOV     R3,FBH
              MOV     0CH,A
              MOV     A,R3
              MOV     0DH,A
              ADD     A,#7lH
              MOV     0DH,A
              MOk     A,#02H
              ADDC    A,OCH//以上取害存器當前值,并加上高電壓脈寬計算
              MOV     OCH,A
              MOV     A,0DH
              MOV     FBH,A
              M0V     A,OCH
              MOV     FCH,A//計算結(jié)果返回寄存器

              直接使用匯編語言實現(xiàn)相同功能時,匯編語句為
              mllV    A,R0
              add     A,#071h
              mov     R0,A
              clr     A
              addc    A,Rl
              add     A,#02h
              mov     R1,A
              mov     PCAOCPLO,R0
              mov     PCAOCPHO,Rl

              編譯后的語句執(zhí)行過程為
              MOV     A,RO
              ADD     A,#71H
              MOV     R0,A
              CLR     A
              AkDDC   A,Rl
              ADD     A,#02H
              MOV     R1,A
              MOV     FBH,R0
              MOV     FCH,Rl

              通過比較中斷服務(wù)程序處理過程可見,C51的執(zhí)行過程中有些地址只是作為數(shù)據(jù)存取的中轉(zhuǎn),另外,還有大量的堆棧操作未在文中給出,這增加了CPU處理CCF中斷的時鐘周期,如果幾個中斷優(yōu)先級相同的CCF中斷發(fā)生的時間間隔過短,就會造成程序跑飛。使用匯編語言編程,在單片機時鐘頻率為24.5MHz時,其中斷服務(wù)程序最少用時約為35個時鐘周期,而C51用時大概為其2倍。因此,用匯編語言編程可實現(xiàn)的PWM頻率和移相范圍都要高于C5l。

          3 實驗結(jié)果

              1)針對主、輔開關(guān)管均實現(xiàn)軟開關(guān)的新型Boost ZCT—PWM電路[圖4(a)]需要的兩路移相PWM觸發(fā)脈沖,用C8051單片機產(chǎn)生了所需觸發(fā)脈沖[圖4(b)],并對此Boost電路作了實驗。單片機端口J/0為低電平有效,故圖4(b)所示是經(jīng)非門反相后的信號。實驗電路參數(shù):Vin=24V,Vo=48V,輸出功率100W,Lf=5mH,L1=4μH,La=6μH,Ca=1μF,Cf200μF。實驗結(jié)果如圖5所示。


              從圖5實驗結(jié)果可見,主、輔開關(guān)管均實現(xiàn)了零電流開通和關(guān)斷,表明單片機產(chǎn)生的移相PWM觸發(fā)脈沖能保證電路實現(xiàn)預(yù)期的全軟開關(guān)效果。

              2)專用移相控制芯片如UC3879,在軟開關(guān)全橋PWM變換器(如圖6所示)中有很廣泛的應(yīng)用。本實驗實現(xiàn)單片機輸出4路PWM脈沖,頻率為50kHz,每路占空比為40%,同一橋臂開關(guān)管死區(qū)時間設(shè)定為2μs,橋臂S1、S4為一組,S2、S3為一組,實驗結(jié)果如圖7所示。

              從以上實驗結(jié)果可見,所產(chǎn)生的PWM脈沖波形頻率和相移精確度高,波形理想。

          4 結(jié)語

              通過C805l單片機的可編程計數(shù)器列陣PCA產(chǎn)生移相PWM脈沖,可根據(jù)實際應(yīng)用所需產(chǎn)生相應(yīng)脈沖路數(shù),頻率高,移相范圍廣,精確可靠,可應(yīng)用于多種軟開關(guān)實驗或者實際電路中。

          pwm相關(guān)文章:pwm原理




          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();