usb Device Framework

本文介绍了USB设备的三层架构,包括businterface、中间层及功能层,并详细解析了VisibleDeviceState,如Attached和Powered状态,以及设备如何报告其电源配置能力。

      一个device可以分为三层:

         最下层作为bus interface传输和接收数据包。

        中间层去处理bus interface 和endpoint 之间往来的数据。endpoint 是最终的数据提供者或消费者。在

endpoint 描述符用来标识endpoint的特征,比如endpoint 的传输类型,最大负载(MaxPacketSize), 数据

包的个数(Burst Size)。

        最上层是串行总线提供的功能层,比如, 鼠标,摄像头interface.


这一章主要描述中间层的attribute 以及操作。 


USB Device States

一个设备可以有很多可能的状态,其中一些是host 可以看到的,一些是device 内部的。这一节主要讲前一种情况。


Visible Device State

这一节描述了externally visible 的几种状态。下面这张图给出了一个小结。去spec 9.1.1.1 找。

Attached

attached 或者 detached 就是插上 和 拔下的意思,device 拔下后是什么状态,这个spec 不作定义。

这个spec 主要讲解一个设备插上时必要的操作以及属性。


Powered


Device 可以由外部电源给他供电,也可以从它所接在的hub上供电。靠外部供电的被称为self powered.

尽管self powered 也许在插上之前,就已经有电了,在还没插上之前,我们不能认为它在powered 状态。


self powered ,bus powered 这两各配置状态,有的device 支持这两种配置状态,有的只支持其中一种。

device 通过他的配置描述表去report 它的power source capability. device 也有可能在任意时候去这两种状态下

切换。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值