你好大团队,
当我修改睡眠模式示例代码“BLE_APP_SLEEPMOD”如下如下,通过剪切按钮(SW3)。
1)默认情况下Sleep应该是关闭的(BLE设备应该处于广告模式)
2)按SW3(Pro EVKT上的按钮)使能睡眠模式
3)通过SW3使用唤醒定时器唤醒BLE核心(唤醒后BLE设备应处于广告模式)。
这是第一次,这些步骤工作得很好。
当前行为:我正在尝试持续按下SW3(接下来的第二个和每一个),但在第2步之后,在按SW3之前调用wkup_quadec_handler。
预期行为:BLE核心仅在按SW3后睡眠或醒来。
请找到代码并尽快给出您的建议。
注意:Pro DA14580 EVKT-P_VB与SDK5.0.4
设备:
嗨GAK,
你能解释一下" next 2 "是什么意思吗n和每一个“?如果我能够从提到的正确了解,设备是默认启动广告(步骤1),如果按下该按钮,则停止广告,它进入睡眠模式(步骤2)。步骤1和步骤2都是完全功能的,是正确的吗?但是如果在步骤2中的按钮连续按下按钮,则设备进入睡眠模式,但触发WKUP控制器?您能否在步骤2和3中提供配置配置?有些东西正在触发唤醒控制器,并且da1580醒来。
谢谢,PM_Dialog
嗨,团队,
您的设备是默认启动广告(步骤1),如果按下该按钮,则停止广告,并进入睡眠模式(步骤2)。步骤1和步骤2都是完全功能的,是正确的吗?但是如果您在步骤2中的按钮连续按下按钮,则设备进入睡眠模式,但触发WKUP控制器?>>>>>
是的,没错。
请查收附件的配置。
请尽快提供支持。
嗨GAK,
中断出现了一些问题,当唤醒GPIO中断时也会触发,因此应用程序代码返回到步骤2。我先问你一件事。在user_app_adv_start()中,为什么仍然使用app_easy_timer()定时器?在计时器到期时,adv_data_update_timer_cb()将被触发。我不知道这是不是你的整个项目,但在ble_app_sleemode的例子的sdk,当adv_data_update_timer_cb()广告将停止。我试图测试你的代码,并为你创建一个简短的演示。我马上给你回电话。WKUP和GPIO中断都应该是低电平的,对吗?
谢谢,PM_Dialog
嗨,团队,
请找到以下内联重播,
为什么仍然使用app_easy_timer()定时器?当计时器到期时,adv_data_update_timer_cb()将被触发<<<<<我只是遵循了在SDK 5.0.4的示例“ble_app_sleepmode”项目中DA给出的任何内容。
我不知道这是你的整个项目,<<<<<<<<<<<<<<我想要控制DA14580进入睡眠并被中断唤醒。
WKUP和GPIO中断都应该是低电平的,对吗?<<<<<<<<我正在使用SW3生成中断。所以,它是正确的(按SW3)
请尽快提供您的支持。
谢谢
嗨GAK,
我创建了一个简短的DAME代码,演示如何使用SW3来停止广告,然后唤醒。我只使用唤醒控制器而不是IRQ,因为如果您正在使用任何睡眠模式,则不会检测到IRQ。请附上唤醒控制器的配置。WKUP_FLAG应存储到保留RAM中,以便在睡眠时保留该值。除了唤醒控制器的配置外,您应该在SDK的BLE_APP_SLEEPMODE示例中执行以下修改:
所有其他都应与SDK的默认BLE_APP_SLEEPMODE示例一样。
谢谢,PM_Dialog
嗨,团队,
谢谢你的演示代码。
但是我们的真正期望是什么,我们应该使用GPIO IRQ进入DA14580来睡眠。
所以请你给出GPIO的一个例子,因为它是伊克的GPIO
嗨GAK,
如果在发布间隔之间使用扩展睡眠模式,则只能通过唤醒控制器检测中断。是否有任何特定的原因要使用IRQ而不是唤醒控制器?
谢谢,PM_Dialog
嗨,团队,
我尝试使用IRQ将DA14580放到SLEEP。
而不是醒来。
预期的流程:
1)默认情况下Sleep应该是关闭的(BLE设备应该处于广告模式)
2)使用IRQ,通过按SW3(Pro EVKT上的按钮)===========>开启睡眠模式
3)通过SW3使用唤醒定时器唤醒BLE核心(唤醒BLE设备应在广告模式中)===========>通过使用唤醒控制器
谢谢,
嗨GAK,
很抱歉耽搁了。对于第二步使用IRQ有什么特别的原因吗?设备在连接间隔之间进入睡眠模式,因此您可能会错过中断。为什么不像我建议的那样用唤醒控制器来实现呢?
谢谢,PM_Dialog
嗨,团队,
谢谢你的重播。
我们使用DA14580“ble_app_peripheral.“我们产品中的项目(传感器相关产品,用于Helath Care Comine)
所以我们正在计划合并睡眠模式“ble_app_sleepmode”“当前项目在职的"ble_app_peripheral.”项目。
正因为如此,我们不应该张e任何当前工作流程“ble_app_peripheral”项目和我们的产品规格也。
我们的平台/产品已经拥有了一个引脚连接DA14580通过SPI(仅适用于FW闪烁),UART(仅用于数据传输的RX和TX)和DA14580的GPIO(P0_1)引脚。
这是一个片上系统产品所以我们不能改变我们产品的任何原理。
和我们的期待是减少该系统权力我们的产品。我们正在努力推动DA14580睡眠尽管断开连接的DA14580用户(中央BLE).
请尽快证实你的超声。
注意:我们在我们的旁边实现了这个我们仍在挣扎和不有着当前(i)减少我好好师(不是纳米垃圾).但是在睡眠模式项目中,我们可以看到当前的减少(nAmps)。
请问有可能吗在“ble_app_peripheral”项目中共享睡眠模式的任何演示?
如果是的,它非常帮助对我们来说现在.
谢谢,
嗨GAK,
关于你的最后一个问题,你能不能给我更多的解释?在ble-app_peripheral示例中使用休眠模式是什么意思?如果你想进入睡眠模式之间的广告或连接的间隔,你可以使用arch_set_deep_sleep()在深度睡眠的情况下或arch_set_extended_sleep扩展睡在user_app_adv_start(),因为它是实现ble_app_sleepmode SDK的例子。另外,您应该修改user_config.h头文件中的app_default_sleep_mode配置。
谢谢,PM_Dialog
嗨,团队,
我们的最终目标是减少了传感器产品当前的(我)。
在我们的整个产品中,DA14580有1mAmps电流。所以我们想优化的当前的的我们的产品通过进入DA14580到“延长睡眠时间”模式。
你是什么意思在BLE-App_Peripheral示例中使用睡眠模式?>>>>其平均值,实施一个da14580.睡眠特性”ble-app_perizera.L“示例。
您应该在user_config.h头文件中更改app_default_sleep_mode配置。> > >这不用于我们的亚博电竞菠菜.经过默认的,哒睡眠应该是离开.
DA14580在DA14580断开用户应用程序时应入住睡眠状态。这是我们的要求,我们使用了“延长睡眠”模式。
嗨GAK,
断开DA14580从对等设备的连接时,将触发USER_APP_DISCONNECT()。因此,您必须将DA14580配置为此功能内的扩展睡眠模式。
谢谢,PM_Dialog