TLSR8258 MTU、DLE(PDU)

本文详细介绍了基于TLSR8258的BLE设备如何设置DLE(LE Data Packet Length Extension)、MTU(MAXIMUM TRANSMISSION UNIT)和PDU。DLE允许在LL Data PDU中传输更长的数据,最大251 Octets。MTU是设备在L2CAP层的传输单元,通过ATT_EXCHANGE_MTU_REQ和ATT_EXCHANGE_MTU_RSP进行协商,最小23 Octets,最大517 Octets。PDU则是协议数据单元,LL Data PDU length决定数据包的最大长度,范围0~251 Octets。文中还给出了TLSR8258在不同角色下的配置示例。
摘要由CSDN通过智能技术生成

本文基于泰凌微TLSR8258 M1S1 demo。

1.DLE:LE Data Packet Length Extension

中文全称:低功耗蓝牙数据包长度扩展。

这是一个在2014年12月2日正式发布的bluetooth for BLE添加的新特性,以支持在LL Data PDU更长的数据,最大支持了251 Octets。

在bluetooth 4.2之前的版本,在LL Data PDU,如果只算payload,那么payload长度最大仅支持27 Octets;如果MIC计算在内,那么则支持31 Octets。

2.MTU:MAXIMUM TRANSMISSION UNIT

MTU在L2CAP LE-U链路中最小值为23 Octets。这时候的MTU也是ATT_MTU。

设备支持的ATT MTU不是协商的值,是设备本身在L2CAP层能够接收的最传输单元固有特性,也就是一个ATT包的最大长度。但是双方通信时所支持的ATT MTU通过ATT_EXCHANGE_MTU_REQ 和 ATT_EXCHANGE_MTU_RSP PDU控制指令,来交换告知对方设备各自所能支持的ATT MTU,然后在后面的通信中,使用交换值中的最小值ATT MTU作为数据包的上限,默认是23 Octets,最大支持517 Octets。

综上,设备支持的ATT MTU不是协商的值,但是实际的ATT MTU可以认为是一个协商的值,因为上限取决于交换双方最小的ATT MTU。

2.1.如何设置MTU?

在TLSR8258工程的demo中找到app_buffer.h

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值