配置睡眠模式时,设备工作不平稳

⚠️
你好。。谢谢你来参加论坛。令人兴奋的消息!我们现在正在移动到我们的新论坛平台,将提供更好的功能,并包含在主对话网站的过程。所有帖子和账号都已迁移。我们现在只接受新论坛上的流量-请在//www.xmece.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
4个职位/0个新职位
最后一篇文章
鲁奇帕特尔
离线
最后一次见到:2年6个月前
已加入:2017-03-29 10:50
配置睡眠模式时,设备工作不平稳

尊敬的Dialog\u支持:,

我在应用程序代码中配置了扩展睡眠模式。在这种情况下,我使用外部按钮中断唤醒,唤醒从I2C中断和唤醒从应用程序时,我们写入特征。10秒后,如果没有任何输入,它就会再次进入睡眠状态。我用定时器唤醒设备10秒钟,然后再次进入睡眠状态。

我面临的问题是,有时设备运行平稳,有时它不采取按钮中断。此外,当应用程序尝试连接到设备,然后应用程序显示“连接”,连接失败,“断开”的状态。

你能看一下我的申请代码吗。我已附加我的项目文件夹链接。

https://drive.google.com/open?id=1ZGN-Me9Nx-tKeLZsC6i_whR0zOvbO_7H

先谢谢你。

关于:,
鲁奇帕特尔

设备:
MT\u对话框
离线
最后一次见到:2个月5天前
工作人员
已加入:2015-06-08 11:34
你好,鲁奇·帕特尔,

你好,鲁奇·帕特尔,

关于设备有时没有被唤醒,我在你上传的代码中没有看到任何可疑的东西,我看到你已经通过外部中断使用了唤醒过程,正如ble\u app\u sleepmode建议的那样,为了检查这一点,你必须调试fw并检查在什么情况下中断不会发生,检查中断的回调是否触发(app\u button\u press\u cb()),检查app\u easy\u wakeup()函数是否执行(在执行该函数之前有一个条件,检查中断命中时是否总是这样,也许设备在没有调用arch\u ext\u wakeup\u on()的情况下进入睡眠状态)。还要检查线路,确保线路上确实有中断,以便触发中断。

对于发生的断开,您可以从断开时检查断开原因开始,然后检查断开的原因,我可以看到,当中央服务器写入CUST1\u IDX\u initialization\u ALERT\u CHAR特征时,有一个app\u easy\u gap\u disconnect()被调用,我想这是一个自定义中央服务器在连接时应该做的事情,所以检查在写入时是否触发了断开连接。

谢谢你的对话

鲁奇帕特尔
离线
最后一次见到:2年6个月前
已加入:2017-03-29 10:50
尊敬的Dialog\u支持:,

尊敬的Dialog\u支持:,

谢谢你的回复。

我已经检查了你提到的所有api。我已经在CUST1\u IDX\u initialization\u ALERT\u CHAR特性中对app\u easy\u gap\u disconnect()函数进行了注释。现在设备比以前更稳定了。

在测试过程中,我知道这个设备在这条线上进入了arch\u main.c。
//恢复中断
全局\u INT \u START();

低功率模式下是否使用LP\ CLK\ RCX20时钟?或者我们可以继续使用LP\u CLK\u XTAL32时钟?

谢谢和问候,
鲁奇帕特尔

MT\u对话框
离线
最后一次见到:2个月5天前
工作人员
已加入:2015-06-08 11:34
你好,鲁奇·帕特尔,

你好,鲁奇·帕特尔,

是的,就在WFI()之后,设备通过调用GLOBAL\u INT\u START()来启用中断。

对于低功耗时钟,您有两个选择如果您处于降压模式,那么您可以选择RCX或XTAL32(这是一个外部晶体),如果您处于升压模式,那么您唯一的选择是XTAL32。

谢谢你的对话