Previous: 10.4.1. クロックの供給 |
Up: 10.4. SLEEPモード |
Next: 10.4.3. WFI命令の実行 |
レジスタのデフォルト状態からすると、WFI命令を実行するだけでよいのですが、サンプルプログラムでは念のため、SLEEPDEEPビットをリセットしています。次項で紹介するSTOPモードに入る場合との方法の違いがSLEEPDEEPビットがセットされているかどうかだけの違いしかありません。そこでSLEEPDEEPビットをリセットして、STOPモードではなくSLEEPモードに入ることを確保しています。
#define SCB_SysCtrl?? ((uint32_t)0xE000ED10) #define SysCtrl_SLEEPDEEP_Set?? ((uint32_t)0x00000004) -------------------- // Reset SLEEPDEEP bit of Cortex System Control Register */ *(__IO uint32_t *) SCB_SysCtrl &= !(SysCtrl_SLEEPDEEP_Set); |
Previous: 10.4.1. クロックの供給 |
Up: 10.4. SLEEPモード |
Next: 10.4.3. WFI命令の実行 |