活动模式到Hibernate模式

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
10个帖子/ 0新
最后一篇
powersquare
离线
最后一次露面:6个月1周前
加入:2018-12-27 04:15
活动模式到Hibernate模式

亲爱的对话团队,

谢谢您的支持。

我们定制的董事会由14683。应用程序is based on ble_peripheral project. While one task reads the data from sensors, other task sends data to the mobile app, once connected.

We have 2 sensors, RTC, flash, 3 LEDs, vibrator connected to the board.

我们的应用程序将在系统init期间处于活动模式。我们想将板带到Hibernate模式,按下按钮5秒钟。我们观察到该董事会在某种程度下进入Hibernate模式,但并非总是如此。

我们还观察到始终调用按钮中断,柜台被告知按钮按5秒钟,但是一些过程从电路板上阻止到休眠模式。

你能帮助我们解决这个问题吗?

此致

Malli

设备:
PM_DIALOG.
离线
最后一次露面:3天3小时前
职员
加入:2018-02-08 11:03
嗨powersquare,

嗨powersquare,

谢谢你的问题。我正在研究你的问题,我会尽快回复你。

你能告诉我你的问题是否与这个问题有关吗?

https://support.dialog-seminile.com/forums/post/dialog-smartbond-bluetooth-low-energy-%2%80%93-software/button-press-5-sec-wakeup-sleep-mode.

谢谢,PM_DIALOG.

powersquare
离线
最后一次露面:6个月1周前
加入:2018-12-27 04:15
是的。

是的。

PM_DIALOG.
离线
最后一次露面:3天3小时前
职员
加入:2018-02-08 11:03
嗨powersquare,

嗨powersquare,

对不起,但我在这张票和附加的票之间很困惑。在附加的票证中,您已提到您无法在唤醒时获得回调函数。根据这次票证,您的问题是您无法将设备放在休眠模式中。要将设备放在休眠模式下,您应该使用PM_SET_SLEEP_MODE(PM_MODE_HIBERNATION)。请注意,休眠模式是用于将最终产品运送到市场的特殊模式,而无需排出电池。这是用于运输和存储最终产品的内容,我不建议您为开发或调试范围建议休眠。如果您有活动或任何其他待定中断,系统将无法进入休眠状态。那么,你能告诉我你跟随你追随的程序吗?你是否停止了BLE活动,传感器阅读等?

谢谢,PM_DIALOG.

powersquare
离线
最后一次露面:6个月1周前
加入:2018-12-27 04:15
亲爱的对话团队,

亲爱的对话团队,

谢谢您的支持。

我们正试图找出代码的哪一部分,这导致了这个问题。

我们将所有代码放入注释(#if 0)中,并开始使用PCB测试按钮问题。

Please find the attached main.c.pdf file for your reference.

在此文件中,我们将代码输入注释(行号569至584,605至649,行号588,595)。我们还向评论提供了划线586,590,591和593)。

通过这种裸露的最小代码,我们观察到的按钮在PCB中工作正常。

然后我们开始逐一删除评论。删除了行号586,590,591和593中的注释,下面是代码:

-------------------------------------------------------------------------------------

ad_nvms_init();

// nvms_var = ad_nvms_open(nvms_generic_part);

nvms_binvar = ad_nvms_open(nvms_bin_part);

OS_ASSERT(nvms_Binvar);

printf("flash bin part success\r\n");

----------------------------------------------------------------------------------------

With this code, button doesn't work properly. In the above lines, we initialized the flash and opened the bin partition. Its printing message "flash bin part success".

在将PCB放入Hibernation模式之前,我们没有像AD_NVMS_CLOSE()API的API,以关闭分区。

请注意,PCB配有电池。

你能帮助我们解决这个问题吗?如果上面的代码适用于按钮,那么我们将开始在我们的代码中删除评论以进一步测试。

请告诉我们任何澄清。

此致

Malli

PM_DIALOG.
离线
最后一次露面:3天3小时前
职员
加入:2018-02-08 11:03
嗨powersquare,

嗨powersquare,

请您附上main.c文件吗?我无法在附件中看到它。

谢谢,PM_DIALOG.

powersquare
离线
最后一次露面:6个月1周前
加入:2018-12-27 04:15
亲爱的对话团队,

亲爱的对话团队,

您可以分享您的电子邮件,我会将源代码发送给您。

此致

Malli

PM_DIALOG.
离线
最后一次露面:3天3小时前
职员
加入:2018-02-08 11:03
嗨powersquare,

嗨powersquare,

你可以在这里上传一些代码片段吗?如果您将系统放入休眠状态时,请确认您是否可以确保停止BLE活动并与传感器进行交互?在进入Hibernate之前,您需要完全停止BLE活动。您有定制董事会,或者您正在使用我们的任何DKS?

谢谢,PM_DIALOG.

powersquare
离线
最后一次露面:6个月1周前
加入:2018-12-27 04:15
亲爱的对话团队,

亲爱的对话团队,

we use custom board made from 14683.

您是否有任何代码片段或示例项目来停止BLE活动。目前我们使用BLE停止广告API来停止广告。我们是否需要在BLE中停止任何其他东西。

我们使用PM将睡眠模式设置为Hibernation API以将系统放到休眠模式。

您可以帮助我们,如何找到哪个进程阻止系统转到Hibernate模式。

此致

Malli

PM_DIALOG.
离线
最后一次露面:3天3小时前
职员
加入:2018-02-08 11:03
嗨米莉,

嗨米莉,

我们将为您提供支持您的私人支持渠道。

谢谢,PM_DIALOG.