LPM3あるいはLPM4へはAM_LDO_VCORExあるいはAM_LF_VCORExから状態遷移できます。
出典:MSP432P4xx Technical Reference Manual REVISED June 2019版(Texas Instruments社)
1. SCB SCR[SLEEPDEEP] = 1
SCB (System Control Block) のSCR (System Control Register) レジスタのSLEEPDEEPフィールドをセットします。
SCBの各レジスタのアドレスは、ベース・アドレス0xE000_E000hからのオフセット値で設定されます。
【SCBの構成】
【SCRレジスタの構成】
【SCRレジスタのビット割り付け】
出典:MSP432P4xx Technical Reference Manual REVISED June 2019版(Texas Instruments社)
2. LPMRの設定
PCMCTL0[LPMR] = 0h に設定します。
LPM3、LPM4ともに設定値は同じです。
【PCMの構成】
出典:MSP432P401R データシート REVISED June 2019版(Texas Instruments社)
【PCMCTL0レジスタ構成】
【PCMCTL0レジスタのLPMRビット割り付け】
出典:MSP432P4xx Technical Reference Manual REVISED June 2019版(Texas Instruments社)
3. RTCとWDTの設定
RTC (Real Time Clock)、WDT (Watchdog Timer)の両方あるいはいずれかがイネーブルのときは、
LPM3に状態遷移します。
LPM3でWDTを使用するときは、インターバル・タイマ・モードに設定する必要があります。
4. Wakeupのための割り込み要因を設定
Wakeupに使用する割り込みを有効にします。
MSP432P401R/MSP432P401Mとその他のMSP432P4xxで、Wakeupに使用できる割り込み要因は異なります。
Wakeupに使用可能な割り込み要因は以下となります。
*1 外部クロックで動作
5. LPM3あるいはLPM4へ状態遷移
WFIあるいはWFEインストラクションを実行するか、
SCR[SLEEPONEXIT] =1の状態で保留中の最後の割り込みを実行後、LPM3あるいはLPM4に状態遷移します。