打印
[STM32F1]

stm32f103 usb设备往PC发送数据的速度问题

[复制链接]
2091|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yan2005|  楼主 | 2013-12-14 21:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看香版主以前的帖子里面介绍,设备为了加快往PC发送数据的速度,设备可以一次性地给驱动程序提供大批的数据,然后由底层自动拆分成多个64字节的包发往PC。这样的好处是对于主机的一个IN令牌包,设备能发出多个64字节的数据,提高数据发送的效率。

但是问题是,stm32f103的缓冲区也就512个字节,扣除EP0,对其余端点来说就算全部用于发送,也就只是比64字节多了7倍左右而已。这种情况感觉和EPOUT下面PC程序可以一下子发送几十K字节相比,差距较大。

请教下大家,从设备往PC发送数据,提高速度的思路还有哪些?
沙发
yang4469| | 2013-12-30 16:16 | 只看该作者
双缓冲发送,一个端点
缓冲区512字节,实际用双缓冲发送只需要2个64字节足够,摄像头的图片数据发送就是这么发的

使用特权

评论回复
板凳
airwill| | 2014-1-1 08:30 | 只看该作者
512 字节, 空间小, 就分多次来传输较大的数据. STM32 处理器和底层也适合这样干.
软件上看, 其实也是一样的.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:Activist > thinker  与大家一起进步

47

主题

302

帖子

1

粉丝