STM32WBA52CG评测4 BLE数据传输
[复制链接]
本帖最后由 wenyangzeng 于 2023-8-12 13:49 编辑
STM32WBA52CG评测4 BLE数据传输
编译下载STM32Cube_FW_WBA_V1.1.0\Projects\NUCLEO-WBA52CG\Applications\BLE\BLE_DataThroughput_Server演示代码。
手机安装FeasyBlue APP。STM32WBA52CG通过串口终端监视运行状况,运行。
手机端搜索到蓝牙设备,设备名DT_ED,地址是00:80:E1:2A:13:ED,点击DT_ED连接。
显示已经连接连接:
传输配置:
按下B2键,串口终端显示STM32WBA52CG端状态:
Button 2 pressed
Success: BLE_SVC_L2CAP_Conn_Update()
>>== HCI_LE_CONNECTION_UPDATE_COMPLETE_SUBEVT_CODE
按下B3键,串口终端显示STM32WBA52CG端状态:
Button 3 pressed
READ PHY : PHY Param TX= 2, RX= 2
TX= 1, RX= 1
>>== UPDATE PHY COMPLETE SUCCESS
>>== TX PHY = 1 RX_PHY = 1
串口终端显示:
RX_PHY = 1
按下B1键,开始发送数据,串口终端显示STM32WBA52CG端状态。
Button 1 pressed
Success: aci_gatt_update_char_value TX_CHAR command
Success: aci_gatt_update_char_value TX_CHAR command
Success: aci_gatt_update_char_value TX_CHAR command
Success: aci_gatt_update_char_value TX_CHAR command
Success: aci_gatt_update_char_value TX_CHAR command
再按一下B1键,停止数据传送。
手机上显示
从手机端发送数据33字节,点击上图的发送:
串口终端显示:
** Missing packets [ 1 - 82 ] 82
** data error ** N= 1
DataThroughput = 33 bytes/s lost = 82
Success: aci_gatt_update_char_value THROUGH_CHAR command
DataThroughput = 33 bytes/s lost = 0
Success: aci_gatt_update_char_value THROUGH_CHAR command
DataThroughput = 33 bytes/s lost = 0
Success: aci_gatt_update_char_value THROUGH_CHAR command
可以看到第一次传输的误码率为82,接下来的误码率为0.
从手机发送10KB文件,
截取一段串口终端显示信息:
** data error ** N= 78
** Missing packets [ 49 - 69 ] 21
** data error ** N= 79
** Missing packets [ 71 - 90 ] 20
** data error ** N= 80
** data error ** N= 81
** data error ** N= 82
** data error ** N= 83
** Missing packets [ 49 - 92 ] 44
** data error ** N= 84
** data error ** N= 85
** Missing packets [ 49 - 54 ] 6
** data error ** N= 86
** Missing packets [ 56 - 90 ] 35
** data error ** N= 87
** data error ** N= 88
** Missing packets [ 49 - 66 ] 18
** data error ** N= 89
** data error ** N= 90
** data error ** N= 91
** data error ** N= 92
** Missing packets [ 49 - 92 ] 44
** data error ** N= 93
** data error ** N= 94
** Missing packets [ 49 - 68 ] 20
** data error ** N= 95
DataThroughput = 4960 bytes/s lost = 347
Success: aci_gatt_update_char_value THROUGH_CHAR command
可见,误码率还是比较高的。
|