當前位置:編程學習大全網 - 遊戲軟體 - msp430各種低功耗模式有什麽區別

msp430各種低功耗模式有什麽區別

單片機中,功耗最低的單片機要MSP430單片機,這是做手持設備最優選擇,MSP430中,用到5種低功耗,LPM0,LPM1,LPM2,LPM3,LPM4,這五種低功耗各種解釋如下 :

CPU的活動狀態稱為AM(ACTVE MODE)模式。其中AM耗電最大,LPM4耗電最省,僅為0.1uA。另外工作電壓對功耗的影響:電壓越低功耗也越低。 系統PUC復位後,MSP430進入AM狀態。在AM狀態,程序可以選擇進入任何壹種低功耗模式,然後在適當的條件下,由外圍模塊的中斷使CPU退出低功耗模式,返回AM模式,再由AM模式選擇進入相應的低功耗模式,如此類推。

CPU的結構:16個寄存器R0-R15,16位算數邏輯單元ALU和壹個指令控制單元。

。寄存器中R4-R15是通用寄存器沒有特殊功能。

R0-R3具有特殊性:

R0:程序計數器PC(Program counter),存放著下壹條要從程序存儲器中取出的指令的地址。

R1:堆棧指針SP(Stack Point),系統堆棧在系統調用子函數或者進入中斷服務程序時,保護程序計數器PC。

R2:狀態寄存器SR(State Register):

R3:常數發生器

狀態寄存器SR

工作模式的選擇由狀態寄存器SR中的SCG1、SCG0、OSCOFF、CPUOFF位控制。由於在CPU的頭文件中對CPU內的各寄存器和模塊的各種工作模式都作了詳盡的定義,所以編程時盡可能的利用就是了。如:要進入低功耗模式0,可在程序中直接寫:LPM0; 。進入低功耗模式4,可以寫:LMP4;就可以了。退出低功耗模式如下:

LPM0_EXIT; //退出低功耗模式0

LPM4_EXIT; //退出低功耗模式4

LPM0:CPU停止工作,MCLK時鐘停止,SMCLK、ACLK時鐘還在工作。

LPM1:CPU停止工作,MCLK時鐘停止,在活動模式如果DCO沒有作為MCLK和SMCLK時鐘時,則直流發生器被禁止,否則就保持活動狀態,SMCLK、ACLK時鐘依然還在工作。

LPM2:CPU停止工作,MCLK、SMCLK時鐘停止工作,如果DCO沒有作為MCLK、SMCLK,自動被禁止直流發生器保持有效,ACLK還處於工作中。

LPM3:CPU停止工作,MCLK、SMCLK時鐘停止工作,DCO時鐘也停止工作,僅ACLK時鐘還處於工作狀態。

LPM4:CPU停止工作,MCLK、SMCLK時鐘停止工作,DCO時鐘也停止工作,ACLK也停止工作。此時功耗最低。

壹般情況下,處理器進入低功耗模式後,由中斷來喚醒,外部中斷或內部中斷。

如果想進入低功耗1,則程序可以為:_BIS_SR(LPM1_bits + GIE);退出低功耗1,則程序可以為:LPM1_EXIT; 進入其他低功耗和退出低功耗壹樣。

低功耗執行的壹個過程:程序從main函數入口開始執行程序,當遇到進入低功耗程序時,如:_BIS_SR(LPM1_bits + GIE);此時相當於下面的程序處於停止狀態不再執行,當有壹個中斷來到,則會進入中斷處理程序,自動退出低功耗,如果在中斷中沒有沒有退出低功耗,當中斷服務程序執行完成後,又會重新進入低功耗。

不同的低功耗模式就是配置不同的SCG1,SCG0,OscOff,CPUOff.

SCG1:復位使能SMCLK,置位則禁止SMCLK.

SCG0:復位激活DCO,置位且DCOCLK不用於MCLK或SMCLK時禁止DCO。

OscOff:復位則LFXT激活,置位且LFXT不用於MCLK或SMCLK時,LFXT振蕩器禁止--對應著ACLK。

CPUOff:復位則MCLK激活,置位則MCLK停止。

  • 上一篇:ps遊戲是什麽意思
  • 下一篇:福斯特醫生有第三季嗎
  • copyright 2024編程學習大全網