DA14580必须至少每10秒自动唤醒一次,即使没有外部唤醒中断被触发。这种自动唤醒并不能阻止外部唤醒过程完全功能如前所述。此限制的解决方法将在本应用程序说明的未来版本中给出,如下所示替代方案仍在调查中。
你知道吗?对话框支持
嗨,阿乔1104,
da如果没有正在进行的ble操作(公布连接间隔等),它将每10秒唤醒一次。如果要禁止此操作,可以调用app_ble_ext_wakeup_on(),以便从外部中断中唤醒。如果不想使用此解决方法,可以更改CFG\u MAX\u SLEEP\u DURATION\u EXTERNAL\u WAKEUP\u MS定义(如果使用SDK5)中的值或MAX\u SLEEP\u DURATION\u EXTERNAL\u WAKEUP定义(如果使用SDK3)中的值,以强制da以更大的间隔唤醒。
谢谢你的对话
嗨,对话小组,
先祝大家身体健康!
我随便读了这段对话。。。几周前,我在论坛上问过,为什么DA 14580每10秒唤醒一次,因为我们想优化电流消耗,所以我们测量了它,我们看到,每10秒有大约650微安的电流,持续时间为6,5毫秒。我问,是否知道这种行为?现在,我明白了。。。。你知道吗,地方检察官为什么有这种行为?在系统仍然正常工作的情况下,我可以使这个间隔多大?
谢谢
嗨,科西纳,
当da通过HCI运行时,应该是RW的遗留物。该值加载在27位寄存器中,因此最大值高达0x7FFFFFF。
你好,我们正在使用SDK5.0.4,并尝试将MAX\ u SLEEP\ u DURATION\ u EXTERNAL\ u WAKEUP的值设置为0x7FFF,而不是MS\ u to\ u SLOTS\ u CONVERT(CFG\ u MAX\ u SLEEP\ u DURATION\ u EXTERNAL\ u WAKEUP\ u MS)-这将提供约20.5秒的睡眠时间。我们的模块每13.4秒唤醒一次。我们还尝试使用更高的值,如0x7FFFFFF。
您是否尝试使用0x7FFFFFF并检查模块的唤醒频率?当模块进入长睡眠状态时,是否有其他内部计时器可能会唤醒模块?是否有任何编译标志,我们应该尝试防止唤醒不是从keu timer\u设置?可能会更改da1458x\u stack\u config.h中的某些内容,如CFG\u GTL?你能检查一下把最大睡眠时间从外部唤醒改为0x7FFFFFF是否真的能让你持续长时间的深度睡眠吗?例如,在播发1分钟、睡眠1分钟、播发1分钟、睡眠1分钟(重复)的外围程序中,1分钟睡眠中不应出现任何耗电唤醒。
当做,奥伦
嗨,奥伦,
在pro工具包上,当ble\u app\u sleepmode项目处于延长睡眠状态,并测试您发布的值0x7fff时,模块大约在20.5秒后唤醒,还测试了值0x7FFFFFF,这是寄存器可以接受的最大值,但是看起来SDK在将值应用到寄存器本身之前正在处理(可能是递增)这个值,所以设备在几毫秒内就被唤醒了(我假设这个值是环绕的,而睡眠值实际上是很小的),为了总共睡眠大约23小时,我设置的值是0x7FFFFFC,据我所能测试,它睡眠超过2小时(我是我可以运行测试的时间)。据我所知,没有其他计时器或值可以影响设备的唤醒时间。如果在您的设备上,通过更改最大睡眠持续时间\u外部唤醒,周期间隔保持在~13.4秒不受影响,那么据我所知,其他东西正在唤醒您的设备。
你知道吗?对话框支持
嗨,阿乔1104,
da如果没有正在进行的ble操作(公布连接间隔等),它将每10秒唤醒一次。如果要禁止此操作,可以调用app_ble_ext_wakeup_on(),以便从外部中断中唤醒。如果不想使用此解决方法,可以更改CFG\u MAX\u SLEEP\u DURATION\u EXTERNAL\u WAKEUP\u MS定义(如果使用SDK5)中的值或MAX\u SLEEP\u DURATION\u EXTERNAL\u WAKEUP定义(如果使用SDK3)中的值,以强制da以更大的间隔唤醒。
谢谢你的对话
嗨,对话小组,
先祝大家身体健康!
我随便读了这段对话。。。几周前,我在论坛上问过,为什么DA 14580每10秒唤醒一次,因为我们想优化电流消耗,所以我们测量了它,我们看到,每10秒有大约650微安的电流,持续时间为6,5毫秒。我问,是否知道这种行为?现在,我明白了。。。。你知道吗,地方检察官为什么有这种行为?在系统仍然正常工作的情况下,我可以使这个间隔多大?
谢谢
嗨,科西纳,
当da通过HCI运行时,应该是RW的遗留物。该值加载在27位寄存器中,因此最大值高达0x7FFFFFF。
谢谢你的对话
你好,
我们正在使用SDK5.0.4,并尝试将MAX\ u SLEEP\ u DURATION\ u EXTERNAL\ u WAKEUP的值设置为0x7FFF,而不是MS\ u to\ u SLOTS\ u CONVERT(CFG\ u MAX\ u SLEEP\ u DURATION\ u EXTERNAL\ u WAKEUP\ u MS)-这将提供约20.5秒的睡眠时间。
我们的模块每13.4秒唤醒一次。
我们还尝试使用更高的值,如0x7FFFFFF。
您是否尝试使用0x7FFFFFF并检查模块的唤醒频率?
当模块进入长睡眠状态时,是否有其他内部计时器可能会唤醒模块?
是否有任何编译标志,我们应该尝试防止唤醒不是从keu timer\u设置?可能会更改da1458x\u stack\u config.h中的某些内容,如CFG\u GTL?
你能检查一下把最大睡眠时间从外部唤醒改为0x7FFFFFF是否真的能让你持续长时间的深度睡眠吗?例如,在播发1分钟、睡眠1分钟、播发1分钟、睡眠1分钟(重复)的外围程序中,1分钟睡眠中不应出现任何耗电唤醒。
当做,
奥伦
嗨,奥伦,
在pro工具包上,当ble\u app\u sleepmode项目处于延长睡眠状态,并测试您发布的值0x7fff时,模块大约在20.5秒后唤醒,还测试了值0x7FFFFFF,这是寄存器可以接受的最大值,但是看起来SDK在将值应用到寄存器本身之前正在处理(可能是递增)这个值,所以设备在几毫秒内就被唤醒了(我假设这个值是环绕的,而睡眠值实际上是很小的),为了总共睡眠大约23小时,我设置的值是0x7FFFFFC,据我所能测试,它睡眠超过2小时(我是我可以运行测试的时间)。据我所知,没有其他计时器或值可以影响设备的唤醒时间。如果在您的设备上,通过更改最大睡眠持续时间\u外部唤醒,周期间隔保持在~13.4秒不受影响,那么据我所知,其他东西正在唤醒您的设备。
谢谢你的对话