你好,对话框的团队,
我正在工作的对话DA14681“DA1468x_DA15xxx_SDK_1.0.10.1072”SDK。首先,我想关闭BLE广告,当我们检测到任何引脚中断时,我们需要启用BLE广告5分钟,然后再次禁用BLE广告,直到它没有检测到任何引脚中断,等等。请让我知道BLE广告禁用和启用的API调用。
任何帮助都将被感激。
谢谢,Jitendra
嗨Jitendrapraprasad,
设备将休眠和唤醒取决于BLE或RTOS中断(如果有来自BLE事件或自由RTOS定时器的中断),或者来自唤醒模块或VBUS中断的外部唤醒。为了睡觉时没有祝福活动你所要做的就是防止任何幸运的事件,所以在没有启动设备广告或扫描(不调用ble_gap_adv_start()或扫描)的相应的函数,它将直接进入睡眠后8秒。也为了通过醒来醒来计时器必须配置模块为了这样做,配置可以通过prvSetupHardware()函数,你可以检查hrp_sensor()为了看到API的使用为了设置硬件模块和中断发生时广告是如何启动的。
由于MT_dialog
谢谢你这么快的答复。
如果我们在启动时不调用ble_gap_adv_start() API,设备就不会发布。我可以在中断时管理广告启用但一段时间后,我想禁用广告。所以我不能再禁用广告了。使用哪个API禁用广告?
谢谢
嗨Jitendraprasad
我认为以下功能是你需要的:
ble_gap_adv_stop ()
致以最亲切的问候
IM_Dialog
你好
在我的例子中,看起来“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
嗨Jitendraprasad。
我用ble_adv项目做了一个简单的例子,但是我不能复制您的问题。在我的示例中,我添加了一个软件计时器(周期为10秒),在它到期时,我通过调用ble_gap_adv_stop函数终止了广告。请注意,如果与对端设备建立了连接,则通告过程将被终止,因此ble_gap_adv_stop函数不起作用。我能理解你的线程的(1)和(2),但是你能解释一下(3)步骤吗?
谢谢,PM_Dialog
嗨Jitendrapraprasad,
设备将休眠和唤醒取决于BLE或RTOS中断(如果有来自BLE事件或自由RTOS定时器的中断),或者来自唤醒模块或VBUS中断的外部唤醒。为了睡觉时没有祝福活动你所要做的就是防止任何幸运的事件,所以在没有启动设备广告或扫描(不调用ble_gap_adv_start()或扫描)的相应的函数,它将直接进入睡眠后8秒。也为了通过醒来醒来计时器必须配置模块为了这样做,配置可以通过prvSetupHardware()函数,你可以检查hrp_sensor()为了看到API的使用为了设置硬件模块和中断发生时广告是如何启动的。
由于MT_dialog
谢谢你这么快的答复。
如果我们在启动时不调用ble_gap_adv_start() API,设备就不会发布。我可以在中断时管理广告启用但一段时间后,我想禁用广告。
所以我不能再禁用广告了。使用哪个API禁用广告?
谢谢
嗨Jitendraprasad
我认为以下功能是你需要的:
ble_gap_adv_stop ()
致以最亲切的问候
IM_Dialog
你好
在我的例子中,看起来“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
嗨Jitendraprasad。
我用ble_adv项目做了一个简单的例子,但是我不能复制您的问题。在我的示例中,我添加了一个软件计时器(周期为10秒),在它到期时,我通过调用ble_gap_adv_stop函数终止了广告。请注意,如果与对端设备建立了连接,则通告过程将被终止,因此ble_gap_adv_stop函数不起作用。我能理解你的线程的(1)和(2),但是你能解释一下(3)步骤吗?
谢谢,PM_Dialog