主题中讨论的其他器件:CC2564、 TM4C123GH6PM
您好、TI 支持团队、
在具有 Bluetopia 栈的双模蓝牙中使用 CC2564时、我们遇到了一些问题。 我们的应用需要定期发送 BLE 数据包、而不会丢失任何数据或时间。 这些数据包在1ms 线程中发送、我们在该线程中调用函数 GATT_Handle_Value_Notification()。 到目前为止、一切都运行良好、我们在 Android 应用程序中正确获取所有数据。 当我们不发送 BLE 数据包时、流式音频也能正常工作。
当我们尝试通过 A2DP 配置文件传输音频并同时发送 BLE 数据包时、会出现此问题。 稍后、我们可以听到一些短音频截止和 GATT_Handle_value_Notification ()返回错误消息 BTPS_ERROR_INFLOWITY_Buffer_space。 之后、我们无法再发送任何 BLE 数据包(即使调用了状态 callbacck etGATT_Connection_Device_Buffer_empty)
使用函数 BTPS_QueryMemoryUsage。 我观察到以下结果:
未运行时的内存使用情况(无 BLE 和无 A2DP):已使用=5032/Free = 10332/maxfree = 10332
仅 BLE 时的内存使用情况: Used = 5032 / Free = 9152/ maxfree = 9060
A2DP 时的内存使用: USD=13004/ Free =2360/ maxfree =2236
A2DP + BLE 时的存储器使用: 使用= 13152/ Free = 2212/maxfree = 2200
我们无法分配更多内存、因为我们的 SRAM 分配已满...
我的问题是:
- 运行任何内容时使用的内存是5032的“正常”吗? 我们是否可以优化某种方法来降低该值?
- 如果没有,是否可以通过修改某些参数(来自 SBC 编解码器或降低音频质量)来减少 A2DP 内存使用?
MCU 参考:TM4C123GH6PM
如果您能向我提供有关此问题的一些信息、那将会非常好。
提前感谢!