阅读:3017回复:6
对于支持高速和全速的设备,两个CONFIGURATION里的bConfigurationValue值是不是应该有区别?
对于支持高速和全速的设备,两个CONFIGURATION里的bConfigurationValue值是不是应该有区别?
|
|
沙发#
发布于:2003-12-14 20:42
全速usb的device descriptor里的bcdUSB项为0110,而高速的为0200,主机以次来判断你送来的是全速还是高速描述符。
以上为个人见解。 |
|
板凳#
发布于:2003-12-14 09:37
jinghuiren
呵呵,不好意思再问一下啊,你说的枚举我懂,我就想知道对于高速和全速两个配置,主机是怎么区分它,怎么知道我送上去的哪个是高速配置哪个是全速配置,就象你说的多个接口一样,同类的东西总该有个标志做区分吧。 |
|
地板#
发布于:2003-12-13 14:09
在枚举时,如果主机能支持高速设备,那么就应该按照高速模式枚举,完成之后设备就会工作与高速模式,如果不支持,那就是全速模式,也就是设备在同一时间只会工作与一种模式,要么高速要么全速。
而你说的那个值是用来判别不同的接口的,不同接口的差别一般在于端点配置,也就是说当设备工作与某种模式时可以有多个接口,例如接口1有四个端点,接口2有6个端点等等,那个值就是来区别这个的。不是用来区别不同的模式的。 高速和全速莫是的不同就在于设备描述符合端点描述符,具体你可以查阅协议第9章第6节。 |
|
地下室#
发布于:2003-12-12 19:50
jinghuiren
设备描述不是只有一个吗?怎么不一样法? SET CONFIGURATION命令里不是有个CONFIGURATION索引值吗,如果两个CONFIGURATION的索引值都一样,那它怎么知道是用哪个来设置呢? |
|
5楼#
发布于:2003-12-12 18:33
对的,config可以一样,但是device descr和endpoint descr要有区别的。
|
|
6楼#
发布于:2003-12-12 16:34
这个是不用变的吧,在USB的高速和全速上的枚举不同主要是在 USB_DEVICE_DESCRIPTOR里的
|
|
|