低功耗MCU動態(tài)時鐘分析
由基礎(chǔ)時鐘模塊可以提供系統(tǒng)所需的3種時鐘信號,即:ACLK、MCLK、SMCLK。其中輔助時鐘ACLK是LFXT1CLK信號經(jīng)1、2、4、8分頻后得到的。ACLK可由軟件選作各個外圍模塊的時鐘信號,一般用于低速外設(shè);系統(tǒng)主時鐘MCLK可由軟件選擇來自LFXT1CLK、XT2CLK、DCOCLK三者之一,然后經(jīng)1、2、4、8分頻得到。MCLK主要用于CPU和系統(tǒng)。子系統(tǒng)時鐘SMCLK可由軟件選擇來自LFXT1CLK和DCOCLK,或者XT2CLK和DCOCLK,然后經(jīng)1、2、4、8分頻得到,主要用于高速外設(shè)模塊。系統(tǒng)可以根據(jù)實際需要通過軟件來選擇合適的系統(tǒng)時鐘頻率,這三種不同頻率的時鐘輸出給不同的模塊,從而合理利用系統(tǒng)的電源,實現(xiàn)整個系統(tǒng)的超低功耗,這一點對于電池供電的系統(tǒng)來講至關(guān)重要。在具體應(yīng)用中,CPU及各個時鐘源的工作狀態(tài)如表1。
4 動態(tài)時鐘應(yīng)用實例
通過MSP430外接32768Hz晶體構(gòu)建超低功耗實時時鐘,結(jié)構(gòu)如圖4。
部分代碼如下:
setc
Dadc.b SEC
cmp.b #060h,SEC
jlo CLKend
clr.b SEC
dadc.b MIN
cmp.b #060h,MIN
jlo CLKend
clr.b MIN
CLKend;
令MSP430 CPU工作在突發(fā)狀態(tài),大部分時間處于LMP3狀態(tài),只有程序代碼中單位時間到之后,才出發(fā)一個極短暫的運行,運行期間電流消耗250?滋A左右。經(jīng)計算指令執(zhí)行時間得到,在1s時間段內(nèi)程序運行時間僅為100μs,系統(tǒng)平均電流約為0.83μA,可見其工作功耗相當(dāng)?shù)汀?p> 本文通過分析MSP430系列MCU的動態(tài)時鐘配置,介紹了通過動態(tài)改變MCU系統(tǒng)時鐘來達到低功耗設(shè)計。在實際應(yīng)用中,通過軟件設(shè)置合理地使用時鐘源,可以有效實現(xiàn)低功耗設(shè)計。
評論