DA14580的外部唤醒

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
5个职位/ 0个新
最后发表
GAK
离线
最后看到:1年9个月前
加入:2018-10-01 11:18
DA14580的外部唤醒

你好大团队,

我改变BLE_sleep_mode_example应用程序使用外部GPIO(通过在Pro套件中使用SW3)中断作为唤醒。

为此,我在“user_app_main_loop_callbacks”中添加了API。
在这个“user_app_init”API中被正确地调用,但是用户定义的API如user_app_in_sleep、user_app_after_sleep和user_app_resume_from_sleep在运行时没有被调用。
而且我还正确地完成了这个API和keil IDE的定义和声明,没有显示任何错误/交战。

我可以知道这个用户定义api回调钩子的确切原因/步骤吗?

关于GPIO中断还有一个需要澄清的地方,

1)在Peripheral_init() API中注册、配置和启用SW3/SW2的IRQ。
如果我按下SW3/SW2,它不会产生任何中断请求。

你能不能分享一些简单的代码示例,如SW3/SW2按下,LED切换(如果可能的话)。

谢谢,

设备:
PM_Dialog
离线
最后看到:6天17小时前
工作人员
加入:2018-02-08 11:03
嗨GAK,

嗨GAK,

对不起,我对你的描述有点困惑,所以你能解释一下你想要完成的是什么吗?如果我理解正确,您正在处理SDK的ble_app_sleepmode示例,并且您想用SW3或SW2唤醒您的设备?我理解对了吗?另外,你能解释一下你提到的api“在运行时不被调用”是什么意思吗?请注意,我无法在示例的源代码中找到这些api。它们是您在应用程序代码中实现的定制函数吗?最后,您正在开发哪个版本的SDK ?

谢谢,PM_Dialog

GAK
离线
最后看到:1年9个月前
加入:2018-10-01 11:18
嗨,团队,

嗨,团队,

是的,没错。我想通过SW3或SW2唤醒设备。

我使用SDK 5.0.4,我添加了自定义函数(user_app_in_sleep, user_app_after_sleep和user_app_resume_from_sleep是我创建的)在应用程序代码上,我想通过“user_app_main_loop_callbacks”调用这个函数。

谢谢,

PM_Dialog
离线
最后看到:6天17小时前
工作人员
加入:2018-02-08 11:03
嗨GAK,

嗨GAK,

我将为您提供从2个不同按钮(Pro-DK上放置的SW2或SW3)中唤醒的建议程序。

  1. 将SW2和SW3配置并保留为“user_peri_setup .c / .h”文件。SW2已经在ble_app_sleepmode示例中配置好了,所以你应该只保留和配置SW3按钮(P1_1)。
  2. 用以下代码片段替换ble_sleepmode.c中的app_button_enable()

静态孔隙app_button_enable(空白)

app_easy_wakeup_set (app_wakeup_cb);
wkupct_register_callback (app_button_press_cb);
WKUPCT_PIN_SELECT(GPIO_BUTTON_PORT, GPIO_BUTTON_PIN), //选择pin (GPIO_BUTTON_PORT, GPIO_BUTTON_PIN)
//极性变低。//极性变低
1, // 1事件
40);//调试时间= 0

通过此代码片段,您可以唤醒da14580sw2或SW3按钮。如果你发现任何有用的答案,请标记为接受。

谢谢,PM_Dialog

GAK
离线
最后看到:1年9个月前
加入:2018-10-01 11:18
谢谢你的支持

谢谢你的支持