蓝牙5功能介绍

蓝牙5引入了许多有用的新功能。本文讨论Silicon Labs Bluetooth SDK 2.3.0版支持的功能。其中包括多个广告集和对新2M PHY的支持。
多个广告集
现在可以拥有多个广告集,而无需停止和重新开始广告。可以针对每个广告集独立地配置包括广告间隔,广告数据,可发现性,可连接性和停止之前要发送的广告数量的所有参数。
用于控制广告的API类似于蓝牙4.x中使用的API,只增加了一些。
要设置广告数据,我们有API gecko_cmd_le_gap_bt5_set_adv_data(),它有3个参数
handle - 要使用的广告集的编号
scan_rsp - 一个标志,指示数据是用于广告还是扫描响应
adv_data - 要发送的数据
为了控制广告参数,我们有gecko_cmd_le_gap_bt5_set_adv_parameters(),它有5个参数
handle - 要使用的广告集的编号
interval_min - 最小连接间隔,增量为0.625 ms
interval_max - 以0.625毫秒为增量使用的最大间隔
channel_map - 用于指示要在哪个频道上投放广告的标志
report_scan - 一个标志,指示是否将扫描请求报告为事件
为了控制广告集的模式,我们有gecko_cmd_le_gap_bt5_set_mode(),它有5个参数
handle - 要使用的广告集的编号
发现 - 可发现模式(请参阅选项的API指南)
connect - 可连接性模式(参见API指南)
max_events - 停止前发送此广告的最大次数
address_type - 要使用的地址类型(public,static,resolvable或non-resolvable)
蓝牙5还引入了两个新事件。
gecko_evt_le_connection_bt5_opened_id
仅当使用BT5命令建立连接并且附带以下参数时,才会传递此事件
地址 - 远程设备地址
address_type - 远程设备地址类型(参见上一节)
master - 设备角色:slave或master
连接 - 连接句柄
粘接 - 粘接手柄
advertiser - 此连接已打开的广告集
gecko_evt_le_gap_scan_request_id
在调用gecko_cmd_le_gap_bt5_set_adv_parameters()时启用扫描请求时会触发此事件。使用此事件发送以下参数
address - 扫描设备的地址
address_type - 指示地址是公共地址还是随机地址

支持新的PHY
蓝牙5还增加了对更长距离和更高数据速率的支持。
目前,我们的EFR32Bg12 SoC和模块支持2 MBPS PHY。未来将支持更长的范围。为了选择要使用的PHY,我们有以下API函数
gecko_cmd_le_connection_set_phy()
连接 - 要使用的连接句柄
phy - 1:1 MBPS PHY,2:2 MBPS PHY
应该基于每个连接调用此API,这意味着应首先建立连接。调用此API会导致堆栈触发以下事件
gecko_evt_le_connection_phy_status_id
此事件包含以下参数
connection - 与此事件关联的连接的句柄
phy - 整数,表示当前活动的PHY
目前的消费

使用2 M phy的一个优点是电流消耗更低。该示例使用875 - 950 ms的连接间隔。当使用1 M phy时,平均电流为13.5 uA,2M phy的平均电流为10.5 uA。必须关闭LED才能实现这些数字。
(上述文章阐述归伦茨科技公司所有,转载请注明出处,更多相关信息欢迎关注微信公众号:lenze_tech或微信号:lenzetech,或者点击:深圳市伦茨科技有限公司)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值