阅读:1500回复:14
如果开机时有两个一样的USB在线上,会出错吗?
如果开机时有两个完全一样的USB设备在线上,那么它们是不是都是0地址?
那这样不就出错了吗? "书上说:枚举时,新来的设备地址是0." |
|
|
沙发#
发布于:2004-04-09 14:30
当然是有顺序的了,一次只会有一个在枚举过程中,等分配了地址之后会第二个才能占用0地址。
|
|
板凳#
发布于:2004-04-11 13:45
谢谢.
我是想不通这个道理. 可能是钻牛角尖了. 还在想 |
|
|
地板#
发布于:2004-04-11 18:19
做事情总要有个顺序,如果电脑还没开你就想让usb设备能用,那怎么可能呢,两个设备一定会有个先后顺序的,即使同时有两个设备也是第一个识别完成后再识别第二个,虽然他们的识别过程你看不见。
|
|
地下室#
发布于:2004-04-12 10:08
哈哈 :D :D :D
|
|
|
5楼#
发布于:2004-04-12 20:01
谢谢两位支持.
我现在在研究这个东西. 虽然这个东西在实际中不是重要的,也不需要我们去管,但是我太投入了. 我把自己当主机了. 你想,我身上同时有两个USB,我跟其中的一个要描述符时,他俩要是同时给我回答怎么办? 你说是吧? |
|
|
6楼#
发布于:2004-04-12 20:03
按道理,我也想让他们一个一个的来.
可是这个先后顺序是怎么规定的呢? 不是0地址吗?谁来决定先把这个0地址给哪个USB呢? |
|
|
7楼#
发布于:2004-04-12 20:05
现在有一种强烈的愿望:
希望自己变成一个USB,混在电脑上,看它是怎么和我联系的. 都是跟我要什么了. 要知道书上也写了,但是还是自己体验到了才真实. 还有,要是我和别的USB发生了冲突,不知道电脑是怎么评理的. 呵呵,让两位见笑了 :) |
|
|
8楼#
发布于:2004-04-13 10:18
注意PC上的所有的USB口不是连在一起的,而是彼此独立的,一个USB口只能同时连接一个USB设备,所以绝对不可能存在冲突!
|
|
|
9楼#
发布于:2004-04-13 10:40
xinli兄弟混淆了最基本的概念。
USB总线是一种点对点的总线结构,而不是一种并行的总线结构。所以主板上的每个USB口都是独立的一个点,你不能试图在一个口上连接两个USB设备。 |
|
10楼#
发布于:2004-04-13 20:31
哦,我突然想到一个问题!
难道PC机分配地址是给每个USB口,而不是设备? 如果这个USB口上没有设备,它会不会占地址呢? 如果这个USB口接个HUB,这个HUB是四个口的,那么每次开机时, 这个HUB会不会得到4个地址呢? |
|
|
11楼#
发布于:2004-04-13 20:36
麻烦各位大哥了.
我这个问题可能低级得让人家无法回答.呵呵 |
|
|
12楼#
发布于:2004-04-15 16:40
根据我的理解,不一定对。
如果两个相同的device插入同一台电脑,一般需要你的驱动handle,如果你需要区别这两台设备的话。如果你不需要区别,这也不会冲突,正如dragon_hn 所说,每个设备只插在一个USB口上,所以有一个唯一的物理地址。至于你说的HUB,其实,系统会给每个端口分配一个逻辑地址,这样就区别开来啦。希望这点能帮助你理解 |
|
13楼#
发布于:2004-04-16 17:44
:)
谢谢。我再考虑。 :D |
|
|
14楼#
发布于:2004-04-17 10:57
要看你的驱动程序,我就做过这样的事,如果你的驱动不支持多个相同设备,就会发生一个连不上的情况。
|
|