中,在中场里,在中间的这个时代时代不正常,会偏长更多,但一段时代后又正常了。
void buttonirqcallback(void)
{
unsigned int key = 0;
unsigned char keystate = 0;
wkupct_disable_irq();
if(getBits16(sys_stat_reg,per_is_down))
periph_init();
app_timer_set(app_timer_button_detect,task_app,20);
}
void app_button_enable(void)
{
wkupct_register_callback(buttonirqcallback);
wkupct_enable_irq(wakeup_pins,wakeup_pins,1,0x00);//使用5ms
}
设备:
你是在进行工程上的吗?
\ da1458x_sdk3.0.6 \ dk_apps \ keil_projects \ proximity \ eporter_fh
3.0.6之迹有了的错误。在3.0.8的版本已经进行。
1.删除删除数app_adv_timer_handler()里的app_ble_ext_wakeup_on()函数调用。
2.把app_button_press_cb分数里的这这分内容
if(app_ble_ext_wakeup_get())
{
#如果0.
//唤醒这里的ble
#if(ext_sleep_enabled)
app_set_extended_sleep();
#elif(deep_sleep_enabled)
app_set_deep_sleep();
#别的
app_disable_sleep();
#万一
setbits32(gp_control_reg,ble_wakeup_req,1);
app_ble_ext_wakeup_off();
ke_msg_send_basic(app_wakeup_msg,task_app,null);
#万一
//新增
app_ble_force_wakeup();//唤醒BLE核心
ke_msg_send_basic(app_wakeup_msg,task_app,null);
}
非常感谢。请问下上游的中间回调函数码回调函面的#if0ir面的是不是不不当。值需要添加app_ble_force_wakeup();//唤醒BLE核心
KE_MSG_SEND_BASIC(app_wakeup_msg,task_app,null);这两条语句就行?