在一篇文章中,它提到:请注意,KE_TIMER_SET无法从睡眠模式唤醒DA14580:您只能使用app_timer_set执行此操作。我检查了app_easy_timer的代码,它看起来像使用ke_timer_set,所以它不能用来唤醒?app_timer_set和ke_timer_set之间有什么区别?彼得
请帮忙
嗨Achao1104,
似乎两个功能之间没有必要的差异,我可以看到的唯一差异是app_timer_set确保延迟时间小于ke_timer_delay_max。您能否注明提到的帖子,提到您不应该使用ke_timer_set才能唤醒。
谢谢mt_dialog.
谢谢,我有同样的思考,让我找出帖子。
http://support.dialog-semicondiondiondum/ketkimerset-not-work.
我想POST表示您不应使用KE_TIMER_SET出于安全原因不超过计时器的最大时间限制。
嗨,对话App_easy_Timer仍在延长DA14580时工作吗?我设置了app_easy_timer以定期唤醒da14580,然后发送广告包。当我设置延迟时间时,它可以正常工作(5s或30s)。但是当我设置18000或24000的延迟值时(ke_timer_delay_max下面),它会在计时器过期之前突然醒来,什么都不做。我测量电流检查DA14580是否延长睡眠。可以在扩展睡眠中使用哪种定时器,app_easy_timer或app_timer_set?在延迟过期后,我如何使用app_timer_set调用app_easy_timer等函数?我应该将功能放在处理程序中吗?谢谢。
嗨梁云浩,
是的,当设备延长睡眠时,定时器仍在工作,关于你的经验,我想知道你看到的是设备的定期唤醒,如果没有BLE活动,设备将被配置为每10秒唤醒每10秒(内核定时器也被认为是BLE活动)。因此,每10秒醒来的设备一无所有,并返回睡眠,直到预期您的计时器经过。
app_easy_timer()是正确的函数才能在SDK5中使用KE_Timers,App_timer_Set只是来自上一个SDK的旧API,并且对话框提供的大多数SIG配置文件仍然使用此API,以便按顺序设置计时器要使用app_timer_set,您可以查看如何实现此API的BAS配置文件如何更新客户端上的值,尽管我没有看到任何使用该API的原因。
嗨,对话在我的定制板中,它没有醒来10秒钟。有时它在进入睡眠后立即醒来。有时它很长一段时间工作很好,突然醒来。所需的时间是不可预测的。我已将cfg_max_sleep_duration_external_wakeup_ms设置为300000,仍然存在相同的问题。在我的应用程序中,我使用两个内核计时器。一个设置为3秒钟,它停止广告(app_easy_gap_advertise_stop)。当广告停止时,“user_app_adv_undirect_complete”回调函数将在某个时间(1mins或更长时间)设置其他计时器,然后系统进入延迟睡眠。理论上,当第二定时器到期时,DA14580将唤醒并继续上述步骤。我设置app_easy_timer或者我做错了什么,我还应该做什么?我是否需要取消它?谢谢。
您使用的LP时钟是什么,是XTAL32还是RCX?
您所关注的步骤是正确的,如果通过复制配置,否您在经过时,您不必取消计时器,我无法使用xtal复制您正在遇到的内容。尝试在鞍骨示例中执行相同的配置,只需从user_app_add_undirect_complete()中删除app_easy_timer()并用将计时器替换为广告功能的计时器。也许设备由外部中断或其他东西唤醒。
如果您使用RCX并且您看到设备正在唤醒并倒回睡眠状态,这是一个已知的问题,请查看下面的线程并检查最后一篇文章中的代码片段。
https://support.dialog-semicondiondiondum/forums/post/dialog-smartbond-bl ...
请帮忙
嗨Achao1104,
似乎两个功能之间没有必要的差异,我可以看到的唯一差异是app_timer_set确保延迟时间小于ke_timer_delay_max。您能否注明提到的帖子,提到您不应该使用ke_timer_set才能唤醒。
谢谢mt_dialog.
谢谢,我有同样的思考,让我找出帖子。
http://support.dialog-semicondiondiondum/ketkimerset-not-work.
嗨Achao1104,
我想POST表示您不应使用KE_TIMER_SET出于安全原因不超过计时器的最大时间限制。
谢谢mt_dialog.
嗨,对话
App_easy_Timer仍在延长DA14580时工作吗?我设置了app_easy_timer以定期唤醒da14580,然后发送广告包。当我设置延迟时间时,它可以正常工作(5s或30s)。但是当我设置18000或24000的延迟值时(ke_timer_delay_max下面),它会在计时器过期之前突然醒来,什么都不做。我测量电流检查DA14580是否延长睡眠。可以在扩展睡眠中使用哪种定时器,app_easy_timer或app_timer_set?
在延迟过期后,我如何使用app_timer_set调用app_easy_timer等函数?我应该将功能放在处理程序中吗?谢谢。
嗨梁云浩,
是的,当设备延长睡眠时,定时器仍在工作,关于你的经验,我想知道你看到的是设备的定期唤醒,如果没有BLE活动,设备将被配置为每10秒唤醒每10秒(内核定时器也被认为是BLE活动)。因此,每10秒醒来的设备一无所有,并返回睡眠,直到预期您的计时器经过。
app_easy_timer()是正确的函数才能在SDK5中使用KE_Timers,App_timer_Set只是来自上一个SDK的旧API,并且对话框提供的大多数SIG配置文件仍然使用此API,以便按顺序设置计时器要使用app_timer_set,您可以查看如何实现此API的BAS配置文件如何更新客户端上的值,尽管我没有看到任何使用该API的原因。
谢谢mt_dialog.
嗨,对话
在我的定制板中,它没有醒来10秒钟。有时它在进入睡眠后立即醒来。有时它很长一段时间工作很好,突然醒来。
所需的时间是不可预测的。我已将cfg_max_sleep_duration_external_wakeup_ms设置为300000,仍然存在相同的问题。
在我的应用程序中,我使用两个内核计时器。一个设置为3秒钟,它停止广告(app_easy_gap_advertise_stop)。当广告停止时,“user_app_adv_undirect_complete”回调函数将在某个时间(1mins或更长时间)设置其他计时器,然后系统进入延迟睡眠。理论上,当第二定时器到期时,DA14580将唤醒并继续上述步骤。我设置app_easy_timer或者我做错了什么,我还应该做什么?我是否需要取消它?谢谢。
嗨梁云浩,
您使用的LP时钟是什么,是XTAL32还是RCX?
您所关注的步骤是正确的,如果通过复制配置,否您在经过时,您不必取消计时器,我无法使用xtal复制您正在遇到的内容。尝试在鞍骨示例中执行相同的配置,只需从user_app_add_undirect_complete()中删除app_easy_timer()并用将计时器替换为广告功能的计时器。也许设备由外部中断或其他东西唤醒。
如果您使用RCX并且您看到设备正在唤醒并倒回睡眠状态,这是一个已知的问题,请查看下面的线程并检查最后一篇文章中的代码片段。
https://support.dialog-semicondiondiondum/forums/post/dialog-smartbond-bl ...
谢谢mt_dialog.