你好,
我使用的是基于SDK5.0.3的DA14580 DSPS项目。我遇到了一个问题,如果我启用扩展睡眠模式,设备就会停止工作,在睡眠模式下一切都是正常的。我使用ULINK进行在线调试,发现软件在
而(! ble_deep_sleep_stat_getf ());在"rwip.c"的"sleep_mode_t rwip_sleep(void)"函数中。
函数如下所示
__INLINE uint8_t ble_deep_sleep_stat_getf(空白)
{
uint32_t localVal = REG_BLE_RD(BLE_DEEPSLCNTL_ADDR);
返回((localVal & ((uint32_t)0x00008000)) >> 15);
}
"BLE_DEEPSLCNTL_ADDR"寄存器定义为:
#定义x40000030 BLE_DEEPSLCNTL_ADDR 0
然而,我在数据表中找不到任何关于这个寄存器的描述。
请问,在什么情况下,这个寄存器会返回0 ?
此外,任何使用扩展睡眠模式的演示项目都不能在此设备上工作,一旦禁用了睡眠模式,就会显示为ok。
这和水晶有关系吗?
谢谢你帮我!
设备:
嗨zhoujianhua,
在大多数SDK中,直到5.0.4的最新版本,当fw启用休眠功能时,fw会暂停,以便用户退出调试模式,程序才能运行。这包括和DSPS,你不能调试fw和设备在睡眠模式,调试只能在睡眠被禁用时进行。
由于MT_dialog