《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于MC9S12DG128B超頻狀態(tài)下高精度PWM輸出的研究
基于MC9S12DG128B超頻狀態(tài)下高精度PWM輸出的研究
來(lái)源:微型機(jī)與應(yīng)用2011年第22期
徐 杰
(安徽工程大學(xué),安徽 蕪湖241000)
摘要: 以MC9S12DG128作為核心控制單元,利用MC9S12DG128實(shí)現(xiàn)了超頻條件下的高精度PWM輸出。隨著輸出PWM精度的增加,PWM輸出的幅值開(kāi)始減小,同時(shí)PWM輸出脈沖幅值減小,超頻狀態(tài)下可應(yīng)用于高精度PWM輸出系統(tǒng)中。
Abstract:
Key words :

摘  要:MC9S12DG128作為核心控制單元,利用MC9S12DG128實(shí)現(xiàn)了超頻條件下的高精度PWM輸出。隨著輸出PWM精度的增加,PWM輸出的幅值開(kāi)始減小,同時(shí)PWM輸出脈沖幅值減小,超頻狀態(tài)下可應(yīng)用于高精度PWM輸出系統(tǒng)中。
關(guān)鍵詞: 單片機(jī);頻率;測(cè)量

    MC9S12DG128微控制器[1-3]是Freescale公司M68HC12系列16位單片機(jī)中的一種。由于具有抗干擾能力強(qiáng)、傳輸距離遠(yuǎn)、接口簡(jiǎn)單靈活、占用資源少等特點(diǎn),在許多測(cè)控系統(tǒng)中得到了廣泛的應(yīng)用。本文采用MC9S12DG128單片機(jī)作為控制芯片,提出了減小誤差的測(cè)量方法,并在此基礎(chǔ)上編寫(xiě)了程序設(shè)計(jì)流程。
    微控制器的脈沖寬度調(diào)制(PWM)模塊是工業(yè)控制和新型消費(fèi)機(jī)電產(chǎn)品中最常用的技術(shù)。脈寬調(diào)制波可用軟件程序來(lái)控制波形占空比、周期和相位,廣泛地應(yīng)用在直流電機(jī)調(diào)速、伺服電機(jī)控制方向盤(pán),伺服電機(jī)的旋轉(zhuǎn)角度與給定的PWM信號(hào)占空比一致,即每個(gè)占空比數(shù)值都對(duì)應(yīng)一個(gè)旋轉(zhuǎn)角度。
    鎖相環(huán)產(chǎn)生的時(shí)鐘頻率可由下式得到:
    fPLLCLK=2×fOSCCLK×(SYNR+1)/(REFDV+1)(1)
式中:fPLLCLK為振蕩器頻率;SYNR為時(shí)鐘合成寄存器的值;REFDV為時(shí)鐘分頻寄存器的值。對(duì)于CPU12可以選用8 MHz或者16 MHz外部晶體振蕩器作為外時(shí)鐘選用8 MHz晶振時(shí),若將SYNR設(shè)為2,REFDV設(shè)為1,可以得到24 MHz的總路線頻率,接近S12微控制器的上限內(nèi)部總路線頻率25 MHz。
    S12微控制器產(chǎn)生PWM波形的方法主要有兩種:軟件輸出比較和PWM硬件模塊。利用輸出比較功能可以通過(guò)軟件設(shè)定輸出任意脈沖,但會(huì)占用CPU資源,而且不易產(chǎn)生精確的脈沖序列,F(xiàn)reescale S12微控制器集成了PWM模塊,專(zhuān)門(mén)用于輸出PWM波,使用時(shí)不影響計(jì)數(shù)器運(yùn)行,也極少占用CPU資源。MC9S12DG128B可提供優(yōu)異的高頻率、高分辨率、占空比可調(diào)的、寬范圍的PWM信號(hào)[1,5]。
    8路獨(dú)立PWM通道通過(guò)相應(yīng)設(shè)置可變成4個(gè)16 bit PWM通道,每個(gè)通道都有專(zhuān)用的計(jì)數(shù)器,PWM輸出極性和對(duì)齊方式可選擇。8個(gè)通道分成兩組,共有4個(gè)時(shí)鐘源控制。通道0、1、4、5為一組,使用時(shí)鐘源ClockA和ClockSA;通道2、3、6、7構(gòu)成另一組,使用時(shí)鐘源ClockB和ClockSB。PWM模塊內(nèi)部結(jié)構(gòu)框圖如圖1所示。ClockA和ClockSA均源于總線時(shí)鐘,可通過(guò)軟件編程設(shè)定[1]。


1 開(kāi)發(fā)軟件
    開(kāi)發(fā)軟件采用Freescal公司為S12系列處理器提供的嵌人式應(yīng)用開(kāi)發(fā)軟件包,“Codewarrior for S12”是一款專(zhuān)為工程人員設(shè)計(jì)的功能強(qiáng)大的圖形化編程軟件,包含集成開(kāi)發(fā)環(huán)境IDE、處理器專(zhuān)家系統(tǒng)和全芯片仿真等[4]。
2 實(shí)驗(yàn)實(shí)現(xiàn)方法
    PWM常用來(lái)輸出一定周期和占空比的脈沖序列。程序流程如圖2所示?;贛C9S12DG128B實(shí)驗(yàn)板,實(shí)現(xiàn)從PTP0口輸出10 kHz的信號(hào),時(shí)鐘源采用ClockA、ClockB,總線時(shí)鐘BusClock=8 MHz[1-4]。

3 實(shí)驗(yàn)分析
    根據(jù)上述實(shí)驗(yàn)方法建立實(shí)驗(yàn)平臺(tái),采用Freescal公司的Codewarrior軟件編程,超頻狀態(tài)下,通過(guò)不同的超頻設(shè)置,時(shí)鐘合成寄存器SYNR的值為4或6,并設(shè)置PWM具有0.1‰~0.5‰不等,得到的波形圖如圖3所示。

 

 


    通過(guò)實(shí)驗(yàn)輸出波形圖3(a)可以看出此時(shí)輸出PWM精度為0.5‰,有效PWM輸出點(diǎn)兩個(gè),輸出脈沖幅值穩(wěn)定在940 mV×4.8,掃描頻率為50 ?滋s,輸出穩(wěn)定。
    通過(guò)圖3(b)可以看出此時(shí)輸出PWM精度為0.1‰,最大脈沖幅值為940 mV×3.9,且此時(shí)間點(diǎn)另一脈沖無(wú)輸出。此時(shí)SYNR為6,PWM輸出失真。
    通過(guò)圖3(c)可以看出輸出PWM精度為0.25‰,有效PWM輸出點(diǎn)兩個(gè),最大脈沖幅值940 mV×4.1,最小脈沖幅值940 mV×0.5,其他脈沖間隔點(diǎn)無(wú)輸出,此時(shí)SYNR為6,PWM輸出失真。
    通過(guò)圖3(d)可以看出此時(shí)輸出PWM精度為0.5‰,有效PWM輸出點(diǎn)4個(gè),最大脈沖幅值940 mV×4.1,最小脈沖幅值940 mV×0.5,其他脈沖間隔點(diǎn)無(wú)輸出。此時(shí)SYNR為6,PWM輸出失真。
    通過(guò)圖3(e)可以看出此時(shí)輸出PWM精度為0.1‰,有效PWM輸出點(diǎn)兩個(gè),最大脈沖幅值940 mV×4.8,最小脈沖幅值940 mV×1.5,其他脈沖間隔點(diǎn)無(wú)輸出,此時(shí)SYNR為4,PWM輸出失真。
    通過(guò)圖3(f)可以看出此時(shí)輸出PWM精度為0.25‰,有效PWM輸出點(diǎn)5個(gè),輸出脈沖幅值穩(wěn)定在940 mV×4.8,掃描頻率為50 μs,輸出穩(wěn)定,產(chǎn)生的輸出有效,但PWM幅值相對(duì)不穩(wěn)定。
    選用MC9S12DG128作為控制核心,在CodeWarrior系列集成開(kāi)發(fā)環(huán)境下開(kāi)發(fā)了軟件系統(tǒng)。在相同超頻條件下,精度越高的PWM輸出值輸出狀態(tài)越不穩(wěn)定,隨著輸出PWM精度的增加,PWM輸出的幅值開(kāi)始減小,同時(shí)PWM輸出脈沖幅值減小??蓱?yīng)用于測(cè)量精度控制,在較小的范圍內(nèi)同時(shí)提高了運(yùn)算速度和測(cè)量量程,能更加簡(jiǎn)單、穩(wěn)定、經(jīng)濟(jì)、方便地應(yīng)用于頻率測(cè)量系統(tǒng)。
參考文獻(xiàn)
[1] 王威.HCS12微機(jī)控制器與原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007.
[2] 常波.高精度PWM輸出的溫度傳感器MAx6666/6667的特性及應(yīng)用[J].現(xiàn)化電子技術(shù),2004,27(6):8-9.
[3] Freescale Semi-Conductor Inc.MC9S12-DG128B device user guide[DB/OL].http://www.reescale.com/webapp/sps/site/S12/MC9S-12DG128B.pdf.2005.
[4] STEVEN F B,DANIEL J P.嵌入式系統(tǒng)——使用68HC12和HCS12的設(shè)計(jì)與應(yīng)用[M].鄭扣根,唐杰,何通能,等譯. 北京:電子工業(yè)出版社,2006.
[5] 俞應(yīng)華,黃寅.精度頻率測(cè)量技術(shù)在單片機(jī)系統(tǒng)中的應(yīng)用[J].現(xiàn)代計(jì)量測(cè)試,1998(3):21-23.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。