蓝牙传输的数据大小
DA14531
1个月前
蓝牙传输的数据大小
发布的Jin-Hoon金60点 4回复你好,
我试图通过蓝牙发送大型数据阵列。
目前我一次只能发送20个字节的数据。
所以我的问题是,我如何增加数据包的大小到251字节?
2)是否有使用蓝牙5.1,而不是蓝牙低能量传输更大的数据包的示例代码?
谢谢你!
1个月前
嗨Jin-Hoon金,
为造成的混乱道歉——可能是我误读了输入的设备。然而类似的概念是为DA14531。
请检查以下示例:
有用的信息:你也可以使用GIT repo来克隆我们的SW示例和SW交付物:
https://github.com/dialog-semiconductor/BLE_SDK6_examples
这个例子演示了如何请求DLE(数据长度扩展),并利用更大的数据包来提高吞吐量。
设备在连接间隔期间发送的数据量取决于中央允许外设发送的数据包。每个选择标准MTU的数据包的有效负载是20字节。所以你发送的每个数据最多可以携带20个字节。如果你想发送超过20个字节,你将不得不增加MTU大小。具体来说,一个设备可以通过空气发送的字节数受MTU (Maximum Transfer Unit)的限制,MTU默认限制在23字节,包括ATT层开销,所以有效载荷是20字节。通过增加MTU的大小,您可以通过空气发送更多的字节。因此,您可以尝试更改user_config.h头文件中的user_gapm_conf结构中的.max_mtu。
谢谢,PM_Dialog
1个月前
嗨Jin-Hoon金,
为了发送超过20个,您应该使用ble_gap_mtu_size_set() API并设置适当的mtu_size。请注意,在创建设备的属性数据库之前应该调用这个API函数。这是因为设备配置将被修改,这将导致清除当前属性数据库(如果它存在的话)。另外,在ble_config.h头文件中定义数据长度:
#定义dg_configBLE_DATA_LENGTH_RX_MAX (251)
#定义dg_configBLE_DATA_LENGTH_TX_MAX (251)
请您看一下DA1469x功耗教程查找关于MTU大小的更多信息。
谢谢,PM_Dialog