使用计时器从回调唤醒DA1580设备

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
4个帖子/ 0新
最后一篇
Gert186.
离线
最后一次露面:6个月前1年
加入:2016-04-21 12:59
使用计时器从回调唤醒DA1580设备

你好,

问题是否有任何用于从睡眠模式唤醒DA14580的计时器?

所以常规应该是
以特定持续时间启动计时器
把da14580睡觉
比计时器回调函数后醒来吗?

请帮忙

设备:
mt_dialog.
离线
最后一次露面:5个月1周前
职员
加入:2015-06-08 11:34
嗨gert186,

嗨gert186,

是的,您可以通过app_easy_timer()API使用内核定时器,以便在预定义的时间后唤醒580,您将能够在UM-B-051 DA1458X软件平台参考文献中找到更多关于此API的信息.PDF。正如您所提到的APP_EASY_TIMER()期望两种参数延迟和回调将在延迟过后立即执行。

谢谢mt_dialog.

Gert186.
离线
最后一次露面:6个月前1年
加入:2016-04-21 12:59
谢谢你的回应,但我

谢谢你的回答,但我不明白我如何在唤醒定时器的情况下使用app_easy_timer()!

如果DS14580睡觉,我不明白如何采取响铃?

void user_prepare_sleep()
{
//在UART RX上设置唤醒
wkupct_register_callback(user_wakeup);

//指定IO引脚,极性,事件数和计数器IRQ的脱嘴
wkupct_enable_irq.

wkupct_pin_select(UART2_RX_GPIO_PORT,UART2_RX_GPIO_PIN),// UART RX
wkupct_pin_polarity(Uart2_rx_gpio_port,uart2_rx_gpio_pin,wkupct_pin_polarity_low),//极性低
1,//事件数量
0 // demouning time = 0ms
);

ARCH_SET_EXTEDDE_SLEEP();
}

那很清楚,但如果我WPULD喜欢使用回调将自动唤醒?
因为这里是UART RX引脚。
我想睡个时间,然后自动唤醒它。

mt_dialog.
离线
最后一次露面:5个月1周前
职员
加入:2015-06-08 11:34
嗨gert186,

嗨gert186,

我不确定我遵循问题​​,唤醒定时器是用于从扩展睡眠唤醒的模块,App_easy_timer()API正在使用内核定时器,以便在不久的将来安排一个事件,以便为设备排列经过一定的延迟醒来。这两者是淡化的不同功能的580.你附加的代码是为了从外部中断唤醒,在一定的延迟之后不会醒来。因此,如上所述,您可以停止所有BLE活动并设置如此App_easy_Timer(100,回调)的计时器。例如,让我们假设您想要广告特定的时间段,然后停止广告,保持在睡眠模式,然后再次唤醒并再次宣传。因此,您可以在启动广告过程之前设置计时器,以便发出通告停止命令。当颁发定时器和停止命令时,然后将调用.app_on_adv_undirect_complete回调,在该回调中,您可以设置另一个计时器,定时您希望发出启动广告命令的时刻。因此,当时间过去时,将发生计时器的回调,并且在回调中,您应该调用该启动通告命令。

谢谢mt_dialog.