ble_validate_sleep_mode()失败

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
2个职位/ 0个新职位
最后发表
Sandeep Sira
离线
最后看到:一年九个月前
加入:2014-11-10 15:50
ble_validate_sleep_mode()失败

你好,

我们已经构建了一个产品,使用DA14580连接到一个音频DSP使用I2C。DA14580工作在BOOST模式下。它以外围角色运行修改后的SPS服务。

在正常操作中,我们使用延长睡眠,一切工作都很完美。当电池电压下降到阈值以下时,我需要将DA14580放入Deep Sleep,让音频DSP尽可能长时间地运行。在Deep Sleep(设置为30s)中,设备会定期重启,首先检查电池电压,然后返回Deep Sleep或重新开始正常操作。

这也能令人满意,但前提是我不顾在arch_main->ble_validate_sleep_mode()中检查ke_mem_is_empty(KE_MEM_NON_RETENTION)。

if((sleep_mode == mode_deep_sleep)) // && ke_mem_is_empty(KE_MEM_NON_RETENTION)) {func_check_mem_flag = 1;//true;} else sleep_mode = mode_ext_sleep;

我想知道我能做些什么来解决这个问题,如果有必要的话。

我的应用程序代码没有数据存储在保留RAM中。此外,事实证明,应用程序将不能正常运行与MemoryMap工具建议的内存设置。我必须增加一些值如下所示:

#define reit_descript_buf 0 //0: keep in RetRAM, 1: re-init is required(当使用Extended Sleep时设置为0)#define USE_MEMORY_MAP DEEP_SLEEP_SETUP #define DB_HEAP_SZ 1524 // 1024 #define ENV_HEAP_SZ 328 #define MSG_HEAP_SZ 1940 // 1312 #define NON_RET_HEAP_SZ 1024

提前谢谢,

Sandeep

---------

设备:
PM_Dialog
离线
最后看到:17小时33分钟前
工作人员
加入:2018-02-08 11:03
嗨Sandeep,

嗨Sandeep,

非常感谢你的问题。我们将直接支持你的问题。

谢谢,PM_Dialog