打印

问个USB的问题

[复制链接]
1830|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yhn1973|  楼主 | 2014-11-24 11:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
电脑用USB口给单片机发一包数据,单片机收到数据后由程序进行处理(处理时间很短,10几us),处理完后向电脑发一组数据,电脑向单片机发数据和收单片机发的数据是在一个时间片内完成,还是必须至少需要2个时间片完成?

相关帖子

沙发
airwill| | 2014-11-24 12:14 | 只看该作者
是不是一个时间片, 这是 Windws 系统管的事情.
按照通常的编程规则, 发数据和接收数据是在两个不同线程里的. 这样收发就不会出现在同一个被Windows系统安排 "时间片" 调度里.
但是由于发送时间很短, 就收到了数据(当然条件还要你的波特率足够快). 那么很可能发和收在同一个 "1mS 时间分割块" 里(读系统时间, 毫秒数相同).
不知道有没有说清楚, 能否看明白, 要不明白, 那得仔细了解一下 WINDOWS 编程了

使用特权

评论回复
板凳
ningling_21| | 2014-11-24 12:39 | 只看该作者
是搞PC编程,还是单片机编程?

使用特权

评论回复
地板
PIGYONG801| | 2014-11-24 14:19 | 只看该作者
你是想提高速率对吧!最好的方法是加包的数据长

使用特权

评论回复
5
yhn1973|  楼主 | 2014-11-24 14:50 | 只看该作者
airwill 发表于 2014-11-24 12:14
是不是一个时间片, 这是 Windws 系统管的事情.
按照通常的编程规则, 发数据和接收数据是在两个不同线程里的 ...

谢谢,可能我没表达清楚。单片机也是USB口,不考虑Windows系统,只从USB的传输来说会是怎样,因为我看USB传输是1ms一个时间片,但对USB内层传输不熟,就是说电脑给单片机发数据和单片机给电脑回数据,从USB传输上能不能做到在一个时间片内完成,还是必须要在不同的时间片完成。

使用特权

评论回复
6
yhn1973|  楼主 | 2014-11-24 14:54 | 只看该作者
PIGYONG801 发表于 2014-11-24 14:19
你是想提高速率对吧!最好的方法是加包的数据长

是想提高速率

使用特权

评论回复
7
lxyppc| | 2014-11-24 15:09 | 只看该作者
没有仔细研究过传输带宽分配的细节
一般一个frame之内
会固定分配时间给中断传输和同步传输
剩下的时间会给批量传输
猜测USB主控制器在实现的时候,在一个frame中会优先尝试中断和同步传输,最后留给批量传输。
楼主可以设计一个既有中断端点又有批量端点的设备,通过中断端点发命令,批量端点回数据。你的数据处理要10几us,这个地方你要充分考虑中断端点接收到数据的时延,以及准备bulk端点的时延,然后加上你的数据处理时延。
为了满足几个时延要求,可以在中断和批量传输之间再插入一次无用的中断传输。

p.s. 如果楼主对实时性要求已经达到了对USB的frame布局有要求了,估计主机端的驱动程序和调度你也得好好思考一下了。

使用特权

评论回复
8
icecut| | 2014-11-24 15:20 | 只看该作者
LS,FS,处理这个都不好.要提速还是异步操作.+大包

使用特权

评论回复
9
yhn1973|  楼主 | 2014-11-24 22:38 | 只看该作者
谢谢楼上几位,感觉USB很复杂,自己也就会用库把程序调通,想提高性能看来还得深入研究研究USB

使用特权

评论回复
10
McuPlayer| | 2014-11-26 00:44 | 只看该作者
bulk传输的优先级低,但是可以拥有最大的带宽
如果你同一个根hub上,只有你一个usb设备,那么几乎可以获得USB的极限速度(LS、FS、HS各不相,可参见spec)

使用特权

评论回复
11
金融小数| | 2014-11-26 09:39 | 只看该作者
如果在同一个时间片内,PC通过Out包发送数据给单片机,单片机进行数据处理,这个处理时间是多久?PC要必须在这个时间结束以后发送IN包来读取单片机处理完毕的数据。而PC发起IN的包是window系统决定的,有可能PC通过OUT包发送完数据,就马上发送IN包来索取数据了。而单片机还没有处理完数据,必须通知PC当前USB为Stall状态,此时PC会不停的IN,知道单片机发送最终的数据。

看起来好像可以,但是如果Stall时间长,PC会Reset这个USB设备,重新建立连接,那就麻烦了。

使用特权

评论回复
12
computer00| | 2014-11-28 23:32 | 只看该作者
可以在同一个帧内完成。

使用特权

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

本版积分规则

4

主题

733

帖子

2

粉丝