用户工具

站点工具


侧边栏

CC2640R2&BLE5.0开发

关于我们

入门开始

视频教程

外设驱动

开发BLE应用

工具集

其他

cc2640r2f:stack_overivew

这是本文档旧的修订版!


Overview

从这部分开始详细介绍蓝牙协议栈功能和接口,协议栈工程关联实现协议栈的文件以及实现协议栈的任务,该任务也作为协议栈应用的最高优先级任务。
TI采用库文件提供方式作为协议栈提供的一个主策略,尽管如此,还是需要开发者了解协议栈各个抽象的功能和相互作用。

介绍

蓝牙5.0核心规范包含LE和BR/EDR两种设备类型,其中LE主要是设计为低功耗、小数据终端产品。
BLE5.0核心主要包含以下功能:

  • 2MSym/s PLY层设计(2M Symbol Rate 物理层)。
  • LE 信道选择算法#2
  • LE 安全连接
  • LE 数据长度扩展
  • LE 隐私
  • LE LCAP 面向连接的信道支持
  • LE 链路层拓扑结构
  • LE Ping
  • 从机功能扩展
  • 连接参数请求

以上功能均在蓝牙5.0协议栈实现,并且可以选择编译。

BLE协议栈基础


蓝牙协议栈包含一个Host和Controller两个逻辑实体,这种区分从经典蓝牙的BR/EDR就存在了,各种功能独立实现,任务配置文件和应用相关都在Host的GAP、GATT抽象层。
BLE 工作在无需认证的2.4G免费频段,该频段广泛应用于ISM(工业、科学、医疗)领域。通过跳频通信实现抗干扰特性,GFSK调制,采用1Mbps码元率PHY层设计,可以实现1Mbps波特率通信,BLE5.0优化的物理层设计可以实现2Mbps的PHY层。

GAP

GAP工作在以上5个状态机

  • Standby
  • Advertising
  • Scanning
  • Initiating
  • Connected

Standby状态,双方设备都处于未连接状态,Advertiser尝试广播数据,Scanner接收到广播数据后尝试进行扫描请求,并且得到扫描回复。此时Scanner产生连接意图,转变成Initiator发送连接请求,成功连接后发送广播的Advertiser作为Master,进行连接请求的Initiator成为Slave.

以上状态机转变,角色扮演以及中间完成的设备发现、链路建立、链路终止均由GAP完成。

HCI

以上我们讲解过蓝牙系统由Host和Controller两个逻辑实体组成,他们之间的通信、交互通过HCI标准接口完成,基于该标准接口,Host和Controller可以独立在两个MCU实现,通过Uart/SPI等外设完成通信。

L2CAP

逻辑链路控制适配协议层由上层服务提供逻辑链路层访问和进行端对端的数据通信。

SM

安全管理层完成配对和密钥分布,提供同连接设备各层之间的通信安全。

GATT/ATT

GATT负责主从设备之间的应用数据交换。GATT作为使用的ATT的子流程的一个服务型框架。为主从设备交互数据提供Profile、Service、Characteristic等概念的抽象、管理。

加入我们

文章所有代码、工具、文档开源。加入我们QQ群 591679055获取更多支持,共同研究CC2640R2F&BLE5.0。

CC2640R2F&BLE5.0-乐控畅联 © Copyright 2017, 成都乐控畅联科技有限公司.

cc2640r2f/stack_overivew.1504168239.txt.gz · 最后更改: 2021/06/22 23:14 (外部编辑)