跳至内容
文档中心
用户工具
Login with Keycloak
站点工具
搜索
工具
显示页面
修订记录
反向链接
最近更改
媒体管理器
网站地图
Login with Keycloak
>
最近更改
媒体管理器
网站地图
您在这里:
index
»
cc2640r2f
»
ble_stack_app
»
bluetooth_overview
»
overview
cc2640r2f:ble_stack_app:bluetooth_overview:overview
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
<markdown> # 蓝牙概述 # 从这一章节开始尝试去系统地了解蓝牙协议栈,在这之前我们需要储备以下知识点: ## 蓝牙 ## 蓝牙是一种短距离的无线通信技术,设计之初是为了取代有线连接,其鲁棒性、低功耗、低成本特性已经让其广泛应用于各种终端产品。 蓝牙核心规范是根据不同终端产品可选择、可裁剪的。根据功耗和速率主要被设计为两种设备类型—— LE 和 BR ,两种设备都实现设备发现、连接建立、连接机制。同时 BR 无线系统还包含一个可选择的 EDR 设备类型,EDR 又包含一个二选一的 MAC 层以及可扩展的 PHY 层。基于这些设计 BR 的速率可以达到 721.2kb/s ,EDR 可以达到 2.1Mbps 以及工作在高速模式的 802.11AMP 54Mbps。 蓝牙发展至今,已经从 1.0 到现在 5.0 版本了。前面 3 个版本蓝牙主要是以 BR / EDR / HS发展,也就是我们常说的经典蓝牙。4.0 版本后引入 LE ,蓝牙技术联盟(Bluetooth Special Interest Group,简称 SIG )维护着蓝牙核心规范。不难看出,从高速 AMP 直接使用 802.11 PHY,还是低功耗参考使用802.15.4 以及最新标准的蓝牙 5.0 协议,SIG 一直在功耗、速率、和最新的物联网功能上面平衡。 >**注意**:注意区分 BLE 、BR、EDR 等特定术语,区分低功耗蓝牙和经典蓝牙。 蓝牙核心系统由两个逻辑实体 Host & Controller 组成,一个 Host 对应一个或者多个 Controller ,Host 和 Controller 之间通过 HCI 接口层交互。Controller 对应两种类型:Primary Controllers 和 Secondary Controllers 。通常来说 Primary Controllers 只有一个,Secondary Controllers 可能有多个。 * 对于 BR/EDR 蓝牙设备类型,Controller 通常包含无线电处理、基带、链路管理、和可选择的 HCI 接口层; * 对于 LE Controller 主要包含 LE PHY、链路层、和可选择的 HCI ; * 通常来说还可以合并 BR/EDR Controller 和 LE Controller 到一个 Controller,也就是常说的双模蓝牙。   上图完整演示了 LE 核心系统、BR/EDR 核心系统、带 Secondary Controller AMP 的 BR/EDR 核心系统、以及合并 LE & BR/EDR 的双模蓝牙系统。 ## LE ## ### 信道 ### BLE 工作在无需认证的 2.4G 免费频段,该频段广泛应用于 ISM(工业、科学、医疗)领域。它是通过跳频通信来实现抗干扰特性的,调制方式为GFSK 调制。采用 1Mbps 码元率 PHY层设计,可以实现 1Mbps 波特率通信,BLE5.0 优化的物理层可以工作在 2Mbps 码元率。 2.4G 的频段按照每 2M 带宽划分为 40 个信道,由 FDMA(频分多址)和 TDMA(时分多址)实现多路访问信道资源。  信道资源被约定的 `Events` 划分为以时间单位访问,有效数据也包含在这些 `Events` 里面。`Events` 以连接状态为区分,包含未连接的 `Advertising Events` 和已经连接的 `Connection events`。 在物理信道发送广播包的设备称为 `Advertisers`,接收到该广播包但是还没有建立连接意图前的设备称为 `Scanners` 。 如下图所示,`Advertisers` 在 3 个广告信道(可配置)轮询发生 `Advertising Events` ,`Scanners` 接收到该广告包后可能在该信道发生的事件类型是`ScanReq` 扫描请求和 `ScanRsp` 扫描回复。  如果此时 `Scanner` 产生了尝试建立连接请求,`Scanner` 身份切换为 `Initiators` 。`Initiators` 会在接收到 `Advertising Events` 产生一个时间类型为 `Connect` 的连接请求。一旦建立连接请求,`Advertiser` 和 `Initiators` 分别切换为 `Slave` 和 `Master`。  在建立连接的时候,Master 会基于某种算法产生一个跳频序列,保证 37 个数据信道按照某个序列进行跳频切换。双方会约定一个跳频间隔,保证通信双方在固定时间在固定信道相遇。 ## 分层设计 ##  如上图所示: **Controller** * LinkManager、LinkController、BR/EDR Radio 组成 BR/EDR Controller; * AMP PAL 、AMP MAC、 AMP PHY 组成 AMP Controller; * Link Manager,Link Controller、LE Radio 组成 LE Controller; ** Host ** * L2CAP、SDP、GAP 组成 BR/EDR Host; * L2CAP、SMP、Attribute protocol、GAP GATT组成 LE Host; ## 加入我们 ## 文章所有代码、工具、文档开源。加入我们[**QQ群 591679055**](http://shang.qq.com/wpa/qunwpa?idkey=d94f12d37c3b37892af4b757c6dc34bea140f3f3128a8d68e556a3d728148e85)获取更多支持,共同研究CC2640R2F&BLE5.0。 <div> <p align="right"> <a target="_blank" href="http://shang.qq.com/wpa/qunwpa?idkey=d94f12d37c3b37892af4b757c6dc34bea140f3f3128a8d68e556a3d728148e85"><img border="0" src="http://pub.idqqimg.com/wpa/images/group.png" alt="CC2640R2F&BLE5.0-乐控畅联" align="right" title="CC2640R2F&BLE5.0-乐控畅联"></a> © Copyright 2017, 成都乐控畅联科技有限公司. </p> </div> </markdown>
cc2640r2f/ble_stack_app/bluetooth_overview/overview.txt
· 最后更改: 2021/06/22 23:14 (外部编辑)
页面工具
显示页面
修订记录
反向链接
回到顶部
LECONIOT
Toggle navigation
文档
博客