开启和关闭BLE广告,节省电池电量

了解更多常见问题教程

6个职位/ 0个新职位
最后发表
Jitendraprasad
离线
最后看到:1年12个月前
加入:2017-10-02 38
开启和关闭BLE广告,节省电池电量

你好,对话框的团队,

我正在工作的对话DA14681“DA1468x_DA15xxx_SDK_1.0.10.1072”SDK。首先,我想关闭BLE广告,当我们检测到任何引脚中断时,我们需要启用BLE广告5分钟,然后再次禁用BLE广告,直到它没有检测到任何引脚中断,等等。
请让我知道BLE广告禁用和启用的API调用。

任何帮助都将被感激。

谢谢,
Jitendra

关键词:
设备:
MT_dialog
离线
最后看到:2天13小时前
工作人员
加入:2015-06-08 34
嗨Jitendrapraprasad,

嗨Jitendrapraprasad,

设备将休眠和唤醒取决于BLE或RTOS中断(如果有来自BLE事件或自由RTOS定时器的中断),或者来自唤醒模块或VBUS中断的外部唤醒。为了睡觉时没有祝福活动你所要做的就是防止任何幸运的事件,所以在没有启动设备广告或扫描(不调用ble_gap_adv_start()或扫描)的相应的函数,它将直接进入睡眠后8秒。也为了通过醒来醒来计时器必须配置模块为了这样做,配置可以通过prvSetupHardware()函数,你可以检查hrp_sensor()为了看到API的使用为了设置硬件模块和中断发生时广告是如何启动的。

由于MT_dialog

Jitendraprasad
离线
最后看到:1年12个月前
加入:2017-10-02 38
谢谢你这么快的答复。

谢谢你这么快的答复。

如果我们在启动时不调用ble_gap_adv_start() API,设备就不会发布。我可以在中断时管理广告启用但一段时间后,我想禁用广告。
所以我不能再禁用广告了。使用哪个API禁用广告?

谢谢

IM_Dialog
离线
最后看到:3天5小时前
加入:2016-12-06 22:25
嗨Jitendraprasad

嗨Jitendraprasad

我认为以下功能是你需要的:

ble_gap_adv_stop ()

致以最亲切的问候

IM_Dialog

Jitendraprasad
离线
最后看到:1年12个月前
加入:2017-10-02 38
你好

你好

在我的例子中,看起来“ble_gap_adv_stop()”似乎不起作用。

下面是我正在做的事情:

1.最初在系统启动时,我不会开始发布广告。
2.我编写了一个计时器超时处理程序,其中我开始使用“ble_gap_adv_start(GAP_CONN_MODE_UNDIRECTED)”发布广告,我从传感器的ISR例程之一开始启动这个计时器。(这个时间是100毫秒。这意味着当那个ISR在BLE广告开始100毫秒后被调用。
3.一旦BLE广告开始在步骤2,我发送的数据通过BLE大约15秒,完成数据发送,我试图停止BLE广告使用“ble_gap_adv_stop()”。

但是,在调用“ble_gap_adv_stop()”之后,BLE广告不会停止。为了供您参考,我也尝试了以下顺序:

' ' '
set_advertising_interval (ADV_INTERVAL_FAST);
ble_gap_adv_stop ();
' ' '

请问我是做错了什么,还是漏掉了什么步骤?

谢谢

Jitendra

PM_Dialog
离线
最后看到:1天13小时前
工作人员
加入:2018-02-08 11:03
嗨Jitendraprasad。

嗨Jitendraprasad。

我用ble_adv项目做了一个简单的例子,但是我不能复制您的问题。在我的示例中,我添加了一个软件计时器(周期为10秒),在它到期时,我通过调用ble_gap_adv_stop函数终止了广告。请注意,如果与对端设备建立了连接,则通告过程将被终止,因此ble_gap_adv_stop函数不起作用。我能理解你的线程的(1)和(2),但是你能解释一下(3)步骤吗?

谢谢,PM_Dialog