利用压缩技术提高可编解码吞吐量

7个员额/0个新员额
最后一篇文章
巴拉斯
离线
最后一次见到:1年10个月前
加入:2016-04-14 07:03
利用压缩技术提高可编解码吞吐量

在我们的设计中,我们有一个每秒产生36Kbps数据的传感器。
但BLE的吞吐量不支持来自传感器的如此多的数据传输和中断处理。所以我想用压缩逻辑来传输数据。该方法应快速无损。
使用简单的压缩技术来提高BLE吞吐量的可能方法有哪些?

非常感谢。

设备:
MT_对话框
离线
最后一次见到:7个月6天前
工作人员
加入:2015-06-08 11:34
嗨,巴拉斯,

嗨,巴拉斯,

DSPS应用程序可以达到您想要的速度,而无需使用任何类型的压缩,请查看DSPS应用程序说明中的性能结果。

谢谢你的对话

巴拉斯
离线
最后一次见到:1年10个月前
加入:2016-04-14 07:03
现在我们正在使用数据

现在我们正在使用数据流配置文件。
DSP是否能提供更好的结果?
为了从SPI设备读取数据并使用DSP发送数据,我应该做哪些修改?

非常感谢。

MT_对话框
离线
最后一次见到:7个月6天前
工作人员
加入:2015-06-08 11:34
嗨,巴拉斯,

嗨,巴拉斯,

正如我在上一篇文章中提到的,您可以在第32页的UM-B-038串行端口服务中查看性能结果,在那里您可以找到针对不同类型的操作系统(android、iOS)和作为中央处理器运行的580执行的所有测量。

关于SPI修改,我假设您可以从SPI设备读取数据,并将接收到的数据放在DSPS应用程序的环形缓冲区中,以防您只想在连接另一侧的uart上打印数据。如果您对使用UART接口不感兴趣,您可以检查DSP如何通过蓝牙实现这些数据速率。通常,您可以通过使用较低的连接间隔来提高吞吐量,通过增加MTU大小,您可以消除L2CAP进入数据包的开销。此外,通过使用适当的特性,还可以提高数据速率,例如使用通知从从属设备发送数据(比指示更有效),使用无响应写入命令和支持此属性的特性从中央设备发送数据。

谢谢你的对话

巴拉斯
离线
最后一次见到:1年10个月前
加入:2016-04-14 07:03
我试着改变MTU的大小

在吞吐量评估示例中,我尝试将MTU大小从23更改为23,但没有成功。当MTU大小更改时,每次仅发送8到10个字节。
您能告诉我,在DSP示例中,从哪里可以将SPI中的数据添加到环形缓冲区?
同样,当我运行我的DSPS示例时,在keil中,程序停止并且无法调试我的代码。这可能是什么原因?

非常感谢。

巴拉斯
离线
最后一次见到:1年10个月前
加入:2016-04-14 07:03
这个问题可以通过以下方式解决吗

这个问题可以通过线程解决吗?
如何在DA14580中添加线程?

MT_对话框
离线
最后一次见到:7个月6天前
工作人员
加入:2015-06-08 11:34
嗨,巴拉斯,

嗨,巴拉斯,

关于DSP和来自SPI的数据,您可以查看应用说明,用于将数据放入环形缓冲区的函数是user_periph_push(),从uart到periph_to_ble_缓冲区。该函数还检查缓冲区的状态,并发送流。如果不希望对应用程序使用此类控件,可以使用用户\u send\u ble\u data()直接在另一端发送数据。

关于在睡眠模式下无法调试时的停止问题,您必须禁用睡眠模式,或者如果启用了睡眠模式,则退出调试模式。

关于线程,580没有一个实际的操作系统来支持线程,处理任务的基本操作系统只是接收消息并处理它们,没有什么实际的操作系统。

谢谢你的对话