最近在使用8208芯片开发,在使用低功耗代码。
GPIO_WAKEUP_FEATURE_LOW;
cpu_set_gpio_wakeup (GPIO_WAKEUP_FEATURE, Level_High, 1);
cpu_sleep_wakeup(DEEPSLEEP_MODE, PM_WAKEUP_PAD, 0);
使用pm_get_wakeup_src()函数,返回值为0;
使用pm_is_deepPadWakeup()函数,返回值为0;
GPIO_WAKEUP_FEATURE_LOW;
cpu_set_gpio_wakeup (GPIO_WAKEUP_FEATURE, Level_High, 1);
cpu_sleep_wakeup(DEEPSLEEP_MODE_RET_SRAM_LOW16K, PM_WAKEUP_PAD, 0);
使用pm_get_wakeup_src()函数,返回值为3;
使用pm_is_deepPadWakeup()函数,返回值为1;请问为什么在DEEPSLEEP_MODE,被PAD唤醒仍然为0?
这样不能就区分上电与Deepsleep。请问如何去区分power on 与Deepsleep?
BLE配对绑定的底层操作 |
在广播事件为ADV_IND,能否取消扫描回复包? |
8258芯片出厂的默认状态 |
白名单与更新参数调试情况不对 |
cache的使用方法? |
你好,
可以再deep休眠前设置模拟寄存器DEEP_ANA_REG0 的值,唤醒后判断该寄存器是否是deep前配置的值。
好的,顺便请问下,在ble_sample例程中,看门狗使能是在BLE协议栈初始化之后,协议栈里blc_controller_check_appBufferInitialization(); bls_ll_setAdvParam(); 这两个函数在返回了一个错误的类型时,都会进入while(1),由于看门狗没被初始化,是不是代表芯片已经进入了死循环?永远都出不来?
@TL_Soyo
出不来的,你可以修改代码,做些自己的逻辑。
@pcxtlpc
你好,
可以再deep休眠前设置模拟寄存器DEEP_ANA_REG0 的值,唤醒后判断该寄存器是否是deep前配置的值。
好的,顺便请问下,在ble_sample例程中,看门狗使能是在BLE协议栈初始化之后,协议栈里blc_controller_check_appBufferInitialization(); bls_ll_setAdvParam(); 这两个函数在返回了一个错误的类型时,都会进入while(1),由于看门狗没被初始化,是不是代表芯片已经进入了死循环?永远都出不来?
@TL_Soyo
出不来的,你可以修改代码,做些自己的逻辑。
@pcxtlpc