430有6中工作模式,在此不再累述,C程序中,使430單片機低功耗進入低功耗的語句非常簡單,只需一句LPM0/LPM1/LPM2/LPM3/LPM4即可使其進入低功耗狀態。看了一天430的系統時鐘模塊和低功耗狀態,發現最靠譜的東西還是官網數據手則,迷惑了一天,最終一張圖片使思維稍微清晰。圖片如下:
LPM0:CPUoff置位------------------------>CPU不能用,MCLK不能用,其他一切照舊活動;
LPM1:CPUoff置位,SGC0置位----------->CPU不能用,MCLK不能用,FLL+停止操作,而ACLK和SMCLK正常活動;
LPM2:CPUoff置位,SCG1置位----------->CPU不能用,MCLK、FLL+、DCOCLK不能用,但直流發生器、ACLK正常工作;
LPM3:CPUoff置位,SCG1置位,SCG0置位---->CPU不能用,MCLK,FLL+,DCOCLK,直流發生器不能用,但ACLK不能用;
LPM4:CPUoff置位,SCG1置位,SCG0置位,OSCoff置位----->LPM3的基礎上使ACLK也不能用。
作者認為自己理解有誤的地方,就是SCG1的控制范圍,即其到底是控制直流發生器還是調制器還是控制FLL+的,由于找不到相關資料,只有勉強做如下理解:SCG1置位的時候,調制器不能工作,自然DCOCLK不能用了,同時FLL+也不能工作,但直流發生器是工作的,只有當SCG1和SCG0同時置位的時候直流發生器才停止工作,這個時候甭管FLL+還是DCOCLK都不能工作了,有可能SCG0對直流發生器也有部分控制作用,但不像對FLL+那樣完全控制。以上理解可能有誤,但希望真正懂得高手路過此帖的時候請給予指正,在此謝過。