完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
连接设备时,蓝牙可确保可靠的数据传输。需要进行连接才能进行安全的数据传输。本文介绍了蓝牙设备可以处于的各种状态以及如何在这些状态之间移动。
蓝牙状态在启动蓝牙协议栈时,设备将处于空闲状态,也就是说,它将是不可发现且不可连接的。通过调用两个API函数le_gap_set_mode()或le_gap_bt5_set_mode(),可以使设备可发现且不可连接或可发现并可连接。也可以将设备返回到空闲,不可发现和不可连接状态。 可连接的广告商可发现和可连接的设备会通告并接受范围内任何设备的连接。建立连接后,堆栈会将事件le_connection_opened或le_connection_bt5_opened发送到应用程序。此事件包含远程设备的地址,地址的类型,连接句柄,设备在连接中的角色以及用于指示设备是否已绑定的绑定句柄。在蓝牙5连接的情况下,该事件还包括一个句柄,用于指示该连接与哪个广告集相关联。如果需要多个连接,则可以从此事件中重新启动广告。 关闭连接如果关闭连接,则将事件le_connection_closed发送到应用程序。此事件包括连接句柄和断开连接的原因。API指南的“蓝牙错误”部分记录了断开连接的原因。 连接–安全和不安全收到连接事件时(evt_le_connection_opened或evt_le_connection_bt5_opened),应用程序可以通过检查bond_handle参数来确定与远程设备是否存在绑定。值0xFF表示没有绑定,其他任何值表示有效的绑定。如果未绑定本地和远程设备,则它们之间的通信将不会被加密,并且对范围内的任何蓝牙设备都是可见的。强烈建议保护所有敏感数据。 连接事件之后,将至少有一个连接参数事件(gecko_evt_le_connection_parameters_id)。当连接打开且任何时候更新连接参数时,都会发送此事件。连接参数事件包括有关连接参数(连接间隔,等待时间,超时)以及安全模式和最大PDU大小的信息。安全模式是以下之一
绑定与配对安全管理器包含事件和命令,用于控制蓝牙堆栈中包含的安全功能。这些功能之一是形成新键的能力(可键合模式)。如下图所示,固定连接后,它将被绑定并分配一个长期密钥(LTK),该密钥可以在后续连接中使用;或者配对并分配一个短期密钥(STK),该密钥在连接时将被丢弃终止。成功绑定/配对后,堆栈将bond_handle作为参数将事件evt_sm_bonded发送到应用程序。与将bond_handle传递给evt_le_connection_opened一样,除0xFF以外的任何值都表示已绑定设备,而在这种情况下,值0xFF表示已为当前连接配对了设备。 蓝牙5连接无论连接是否安全,Bluetooth 5都允许在每个连接的基础上选择1 Mbps或2 Mbps PHY。可以通过调用le_connection_set_phy()来选择PHY。对该API的调用会导致堆栈发送事件evt_le_connection_phy_status,以指示该连接实际使用了哪个PHY。下图显示了连接状态的流程类似于Bluetooth 4.x的流程,并增加了选择2M Phy的可能性。 蓝牙4.2中的新增功能之一就是所谓的双模式拓扑,该拓扑允许设备同时成为主设备和从设备。以前,必须断开连接才能在主服务器和客户端之间切换角色。 (上述文章阐述归伦茨科技公司所有,转载请注明出处,更多相关信息欢迎关注微信公众号:lenze_tech或微信号:lenzetech,点击http://www.lenzetech.com/) |
|
相关推荐
|
|
深入比较nRF52832和Nordic新的产品nRF54L15参数对比
3560 浏览 0 评论
438 浏览 0 评论
高通的蓝牙QCC308x和51xx芯片开发工具和文档必须高通审核才能下载和使用吗?
7111 浏览 0 评论
2062 浏览 0 评论
会员风采!华秋电子——致力于“为电子产业增效降本”的数字化智造平台
1276 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-5-26 11:39 , Processed in 0.414998 second(s), Total 30, Slave 24 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191