首页 > 其他分享 >车载测试系列:蓝牙协议栈

车载测试系列:蓝牙协议栈

时间:2022-12-02 13:46:58浏览次数:71  
标签:GATT 报文 低功耗 蓝牙 车载 测试 服务端 设备

蓝牙协议栈由主机 + HCI(可选) + 控制器三大块组成,其中对于单芯片方案是没用HCI的。

  • 主机(Host) :主机部分由核心协议层(L2CAP、SDP、SMP、ATT)和核心规范(GAP、GATT)构成;
  • 控制器(Controller):此部分拆分为低功耗蓝牙(Vol 6: Low Energy Controller)和经典蓝牙(Vol 2: BR/EDR Controller)两个章节说明
  • HCI:此部分定义了主机和控制器之间通信的接口标准(Vol 4: Host Controller Interface),可以是UART、USB等通信方式。

 

上图中红色部分是BR/EDR经典蓝牙的必选项,绿色部分是LE低功耗蓝牙必选项,蓝色部分是公共部分;当然经典蓝牙也可以具备绿色部分特性。HCI接口根据芯片架构有关,是可选项。两者在物理层的差异性图中没有体现,不涉及芯片设计。

1、GAP规范(通用接入规范):定义了所有蓝牙设备的基础功能,设备间发现、连接、配对绑定的流程;蓝牙设备中四种角色;广播和扫描响应报文的格式;还有一些通用蓝牙参数定义,比如设备地址、名称、配对秘钥和设备的外观特征值,用于区分是什么设备,手机还是电脑;明确了作为一个低功耗蓝牙设备的基本需求,包含哪些层级以及如何协同工作的。

1)定义了蓝牙设备中的四种角色,广播者、观察者、外设角色、中心角色。

2)规范了一些通用的蓝牙参数:蓝牙设备地址、设备名称、配对秘钥、外观特征值(用于区分设备是手机还是电脑)。

2、ATT(属性协议):定义了访问对端设备上数据的一组规则,是GATT规范的基础,也是低功耗蓝牙的基石。定义了Host端属性报文格式和报文类型。

1)Requests:请求报文,客户端发给服务端,且需要服务端的一个应答Responses;(C->S,带ACK的请求报文)

2)Responses :响应报文,和Requests成对出现,服务端对客户端Requests的Responses;

3)Commands :命令报文,客户端发给服务端,不需要应答;

4)Notifications :通知报文,服务端主动发给客户端的通知;

5)Indications :通知报文,相比Notifications,客户端要应答确认Confirmations ,是否收到通知了;

6)Confirmations :和Indications 成对出现;

3、GATT(通用属性规范):位于ATT之上,定义了属性的类型及其使用方法。 GATT用来规范attribute中的数据内容,并运用group(分组)的概念对attribute进行分类管理。没有GATT,BLE协议栈也能跑,但互联互通就会出问题。

4、L2CAP层(链路控制和适配协议):屏蔽了控制器传输协议中的许多特性,方便高层协议的开发;报文分片和重组(SAR);流控、重传、报文完整性校验等。

 

5、SMP(安全管理协议):定义了蓝牙设备配对、认证、解密等行为的安全操作。

6、LLCP/LL (链路层控制):低功耗蓝牙参考 《Core_v4.2.pdf》中Part B: Link Layer Specification章节部分。

7、PHY(物理层):低功耗蓝牙采用40个信道,分为数据信道和广播信道;广播信道占用3个,用于发现设备、建立连接、广播数据;数据信道占用37个,用于已建立连接设备间的数据通信。建立连接的两个设备,必须同一时间处于同一信道上才能通信。

标签:GATT,报文,低功耗,蓝牙,车载,测试,服务端,设备
From: https://www.cnblogs.com/laoluoits/p/16944208.html

相关文章

  • 车载测试系列:蓝牙协议概述
    蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料,以形成个人局域网(PAN)。其使用短波特高频(UHF)无线电波,经由2.4至2.485GHz的ISM频段来进行通......
  • 车载测试系列:车载蓝牙测试(一)
    车载蓝牙的概念蓝牙,是一种支持设备短距离通讯的无线电技术,一般通讯距离在10米内,工作频段为全球统一开放的2.4GHz工业、科学和医学频段。由于蓝牙具备体积小、功率低、成本......
  • 车载测试系列:CAN总线渗透测试
    随着汽车智能化、网联化的高速发展,对于汽车通讯网络的安全威胁越来越多,而CAN总线是目前汽车使用最广泛的总线之一,因此对汽车CAN总线网络安全威胁进行渗透测试、挖掘潜在漏......
  • 车载测试系列:车载蓝牙测试(三)
     HFP测试内容与测试方法2.3接听来电:测试手机来电时,能否从车载蓝牙设备和手机侧正常接听】拒接、通话是否正常。1、预置条件:待测手机与车载车载设备处于连接状态2、......
  • 车载测试系列:车载蓝牙测试(二)
    车载蓝牙测试内容 HFP测试内容与测试方法2.1连接与释放:针对HFP的连接管理功能1、预置条件:待测手机开启蓝牙功能,车载蓝牙设备与待测手机相距10m以内2、测试步骤:1)测......
  • 车载测试系列:车载常见面试题
    自我介绍项目介绍项目具体是怎么测试的?CANoe是怎么使用的?台架是怎么搭建的?台架怎么测试的?诊断服务是怎么测试的?功能寻址和物理寻找的区别10服务有什么会话?11服务......
  • 车载测试系列:CAN总线错误及故障处理
    CAN五种错误检测机制一、基于信息流级别的错误检测1、CRC校验错误15位的CRC通过发送端根据发送信息的内容计算产生接收端根据接收内容重新计算CRC并于发送端发送过来......
  • 车载测试系列:SOA架构设计
    汽车传统架构很难满足新增信号、新增节点、变更功能等问题: 新增信号流怎么办?修改通信矩阵?突然增加一个节点,怎么办?修改路由表?变更功能如何从其他节点获取所需信息?......
  • 车载测试系列:MIL、SIL、PIL、HIL测试到底做什么?
    测试工程师需要搞懂的测试类型:MIL用于测算法SIL和PIL用于测代码(和模型的一致性)HIL用于测控制器系统MIL:模型在环测试 如图一所示,在Simulink模型中,将控制算法模型......
  • 车载测试系列:基于CANoe CAPL代码的诊断测试
    Canoe有独立的编译开发软件CAPL,CAPL是一个编译器,在CAPL里面编写代码,编译后可以在Canoe中运行。测试工程师可以在CAPL编写自动化测试脚本,在Canoe中自动发送Can报文,以及判断......