471****com
请教下,GR5331我们这边需求是设备静止时关闭蓝牙进入sleep,外部有按键按下或Gsensro检测到震动产生中断时醒来开启蓝牙,是否有相关的例程可参考
zhongchengzhi
您好,外部按键或Gsensor都是外部AON GPIO IO唤醒,您可以在AON GPIO IO的中断回调函数里面做开启蓝牙相关事情,可以参考ble_app_pcs 示例:
static void wkup_key_handler(app_io_evt_t *p_evt)
{
if (p_evt->pin == APP_KEY_OK_PIN && \
p_evt->type == APP_KEY_OK_IO_TYPE && !first_wkup)
{
gap_advertising_start();
}
else
{
first_wkup = false;
}
}
static void wkup_key_init(void)
{
s_gpiote_param.type = APP_KEY_OK_IO_TYPE;
s_gpiote_param.mode = APP_KEY_TRIGGER_MODE;
s_gpiote_param.pin = APP_KEY_OK_PIN;
s_gpiote_param.pull = APP_IO_PULLUP;
s_gpiote_param.io_evt_cb = wkup_key_handler;
app_gpiote_init(&s_gpiote_param, 1);
}
打开微信,使用“扫一扫”即可关注