USB接口控制传输包含哪几个阶段?

接口/总线/驱动

1139人已加入

描述

注意本文中的单词大小写,含义是不一样的。

控制传输一般在USB枚举的时候见得多,控制传输包含三个阶段:Setup阶段、Data阶段、Status阶段,其中Data阶段是可选的。

Setup阶段 :由一个SETUP事务组成,SETUP事务的组成如下,Setup阶段必须使用DATA0

USB分析仪

Data阶段 :由若干个IN事务或者OUT事务组成,此阶段是可选的,有时候并不需要Data阶段,比如SetAddress。Data阶段的IN/OUT事务DATA0和DATA1交替变化。

IN事务举例

USB分析仪

OUT事务举例

USB分析仪

Satus阶段 :此阶段只有一个IN事务或者OUT事务。如果是控制传输写入,那么以IN事务结束且必须使用DATA1。如果控制传输读取,则以OUT事务结束,也必须使用DATA1。

控制传输过程,如下图所示:

USB分析仪

以下是我司某产品使用USB分析仪截取的数据包,三个阶段已在图中标记。

控制传输——写入 :此例子Data阶段只用一个OUT事务完成了数据传输。

USB分析仪

控制传输——读取 :此例子Data阶段只用一个IN事务完成了数据传输。

USB分析仪

控制传输——无Data阶段 :此例子是SetAddress,地址信息在SETUP事务中的DATA0包里,因此不需要Data阶段。

USB分析仪

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分