ble低功耗蓝牙(2)

ble低功耗蓝牙

本文介绍下数据信道数据报文结构,及数据报文的传输机制
首先看看数据报文结构
数据信道中会传输两种结构的数据,控制帧和数据帧,报文结构也存在略微差异
先看公共部分
在这里插入图片描述
LLID:此包是LL Date PDU(数据帧),LL Control PDU(控制帧),占用2个字节
00b: Reserved
01b: LL Date PDU: Continuation fragment of L2CAP message, or an Empty PDU.
10b: LL Date PDU: Start of an L2CAP message or a complete L2CAP message with
no fragmentation.
11b: LL Control PDU

NESN:该设备期望的数据包序列
SN:该设备的数据包序列
二者可以控制发送的包是否是新包,还是重发包

MD:该设备数据有没有发送完成,还有剩余数据,值为1,否则为0

MIC:与数据加密有关,可省略

1.控制帧结构
在这里插入图片描述
关于控制帧类型做简单说明
在这里插入图片描述
蓝牙设备建立连接,首先通过LL_CONNECTION_UPDATE_REQ参数更新
LL_ENC_REQ 和LL_ENC_RSP 数据加密
LL_FEATURE_REQ PDU和LL_FEATURE_RSP 蓝牙设备连接后用于数据
LL_VERSION_IND 交换蓝牙协议版本
LL_TERMINATE_IND 终止通信

2.数据帧格式
在这里插入图片描述

3.数据报文的传输
现在,主从这边需要传输数据,并且一个数据包无法完成全部数据的传输,主从设备如何进行数据分包,数据传输,以及数据传输失败后的冲传呢?如下图
在这里插入图片描述

注意:数据传输比特流,传输顺序由地位到高位进行传输,数据传输还使用了白话器。

白化器:将有序的数据按一定的规则打乱(让数据更加随机化),接收按照打乱的规则从新排序。

发布了73 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_38240926/article/details/100534485