主持人睡眠和唤醒

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
4个帖子/ 0新
最后一篇
本杰德杜
离线
最后一次露面:2个月4周前
加入:2016-03-14 02:38
主持人睡眠和唤醒

我的应用方案如下:

两个DA14580芯片,一个是设备,另一个是主机。
设备定期宣传,
主机侦听设备,可以启动连接,也可以停止连接,主机需要在某些条件下输入睡眠模式(例如引脚中断),并在另一个条件下唤醒(例如另一个引脚中断)。

我的问题是主机的编程,我有样本,但它是设备,它不起作用(始终是错误)。
我希望有代码输入睡眠模式并唤醒模式,我想知道您是否有主机的示例代码,或者给我一些关于如何编写输入睡眠并唤醒的主机代码的指令。

谢谢和最好的问候

关键词:
设备:
mt_dialog.
离线
最后一次露面:3个月2周前
职员
加入:2015-06-08 11:34
嗨Benjamindu,

嗨Benjamindu,

将设备在睡眠模式下放置的验证是相同的,该设备在中环运行作为外设,通常如果580没有待处理活动(广告或扫描或保持连接还有连接事件),那么它将进入默认值睡眠模式,在您的情况下,只要停止扫描程序,设备将进入睡眠模式。例如,假设您正在扫描(也假设您是一个中央,并且您使用Gap_gen_discovery程序扫描),在近似10秒后设备将停止扫描,并调用完整的扫描回调。因此,在调用此回调时,您应该调用Arch_ble_ext_WakeUp_On()函数,然后设置要唤醒您的唤醒中断(通过App_easy_WakeUp_set唤醒时,设置将执行的函数,设置将在唤醒中断触发时调用的回调,并通过wkupct_enable_irq()启用唤醒中断。可以在BLE_APP_SLEEPMODE中找到一个示例(该示例演示了外围设备,但据我所知,中心和外围设备之间没有区别,而睡眠和唤醒过程涉及)。

谢谢mt_dialog.

本杰德杜
离线
最后一次露面:2个月4周前
加入:2016-03-14 02:38
非常感谢你的快速

非常感谢您的快速回复。

我对蓝牙和c的知识很少,没有什么比某些样品更好。
我有一些术语不是很清楚你的答案。
1)ARCH_BLE_EXT_WAKEUP_ON()实际上是app_ble_ext_wakeup_on()?Arch_和App_之间有什么区别?
2)什么是app_easy_wakeup_set?功能?在Serveral样本中找不到它。

再次感谢。
本杰明
2017年8月26日

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

嗨Benjamindu,

如上所述,关于中央和外围之间的睡眠过程没有差异,只要没有指示堆栈被指示宣传或扫描或一般地服务于设备将睡觉的较近的BLE事件。所以对于您的应用程序时,当没有扫描设备时会睡眠而不是唤醒(只要您将默认睡眠模式设置为Arch_ext_sleep_on)。关于你的问题:

1)app_ble_ext_wakeup_on()和Arch_ble_ext_wakeup_on()是相同的函数并执行相同的函数,App_ble_ext_wakeup_on()不再用于SDK5,并且由ARCH_BLE_EXT_WAKEUP_ON()替换。APP_ Prefix在SDK3上使用,它不再用于SDK5。

2)使用app_easy_wakeup_set()以设置应在BLE核心唤醒时执行的回调函数。该函数用于BLE_APP_SLEEPMODE示例中,应与APP_EASY_WAKEUP()函数一起使用。后一函数是实际发送触发先前设置回调函数的消息的函数。这可确保当回调执行设备时,将具有BLE核心操作。

谢谢mt_dialog.