在ble4.2协议规范中用户数据最大可以传多少?

1、LL层数据包的格式:

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

规定了Protocol Data Unit(PDU)长度:2~257Bytes。

PDU分两种数据包:广播通道和数据通道。

①、广播通道的PDU数据包:

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

广播通道的PDU数据包:2Bytes头信息,6Bytes广播地址,31广播数据,2+6+31=39;

②、数据通道PDU数据包:

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

 

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

数据通道的PDU数据包:2Bytes头信息,6Bytes广播地址,2Bytes长度,2Bytes通道ID,4Bytes的MIC。257 -(2+6+2+2+4)=241(ATT_MTU)

2、ATT层数据包通过配置改变用户最大数据传输量(写请求和写回应):

 

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

①数据写读的格式:

BLE4.2 ATT_MTU Configurable(BLE4.2每帧传最大的数据量)

ATT层数据传输的格式:1Bytes 的Opcode,2Bytes的 Handle,(ATT_MTU-3)Bytes的数据;

Opcode用来指示write、notify或者indication等等ATT层传输的操作码。即主机通过write将数据传给从机,从机通过notify或者indication的方式将数据传给主机。

handle为具体哪个特征值的句柄。

value为真正有效的数据。

结论:在ble4.2协议规范中用户数据最大可以传输字节:ATT_MTU-(1+2) = 238;

相关文章:

  • 2022-01-16
  • 2021-11-20
  • 2021-11-12
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-03
  • 2021-09-01
猜你喜欢
  • 2021-08-20
  • 2021-09-13
  • 2021-05-01
  • 2021-05-01
  • 2022-12-23
  • 2021-04-18
  • 2022-01-22
相关资源
相似解决方案