16.5.1. PMU 示例代码
16.5.1.1. 进入休眠
uint32_t wakeup_from;
uint32_t wakeup_mode;
// 唤醒后从哪里启动 GX_START_MODE_ROM 从ROM启动; GX_START_MODE_SRAM 从指定的SRAM地址启动
wakeup_from = GX_START_MODE_ROM;
// 唤醒中断源源
wakeup_mode = GX_PMU_WAKEUP_AUDIO_IN;
GX_PMU_WAKEUP_ADDR wakeup_addr = {
.wakeup_from = wakeup_source,
.wakeup_address = CONFIG_STAGE2_IRAM_BASE + 0x100,
};
// 配置唤醒启动地址
gx_pmu_ctrl_set(GX_PMU_CMD_WAKEUP_ADDR, &wakeup_addr);
// 配置唤醒源
gx_pmu_ctrl_set(GX_PMU_CMD_WAKEUP_MODE, &wakeup_mode);
// 进入休眠
gx_pmu_ctrl_enable();