2个帖子/ 0新
最后一篇
兰州
离线
最后一次露面:14小时前5天
加入:2014-02-20 07:09
睡眠唤醒问题

1.在定义ext_sleep_enabled宏之后唤醒是不可行的:
app_disable_sleep();
if(getBits16(sys_stat_reg,per_is_down))
periph_init();
2.在定义了ext_sleep_enabled这个这个之外,在没有的是不可能的外部接口(spi,i2c等),在没有唤醒之迹,都不行使用,如果我想使用外部接口是不是在唤醒后后才用作
3.在没有唤醒之后,定时机任务app_timer_set(app_timer,task_app,5);会不会驾驭
4.唤醒唤醒后想再次再次进入是不可能使用app_set_extended_sleep
抱歉问题有多多,麻烦解答

设备:
Gongyu_dialog.
离线
最后一次露面:1周5天前
加入:2016-04-27 07:07
1.对

1.对
2.是的,延长睡眠模式在睡眠情况下会把外设的电气都了,所以要用作先唤醒
3.会计,APP_TIMER_SET使用的是BLE的时代,在考虑否睡眠以及睡睡长时钟,都会将之设定的ble timer计算
4.对,这样就可设回延长睡眠模式,之字在dsps工程下做过一个按键的代码,可以参考:
void app_button_press_cb(void)
{
if(getBits16(sys_stat_reg,per_is_down)){
periph_init();
}

if(arch_get_sleep_mode()== arch_sleep_off)
{
app_easy_gap_advertise_stop();
ARCH_SET_SLEEP_MODE(ARCH_EXT_SLEEP_ON);
user_sps_set_mode(arch_ext_sleep_on);
user_scheduler_reinit(); //
ARCH_BLE_EXT_WAKEUP_ON();
}
app_button_enable();
}