笔记本电脑是 ThinkPad T520,台式机是 ThinkCentre M 系列。两者都使用 C200 系列芯片组系列 USB 增强型主机控制器。
故障设备采用了 Silicon Labs C8051F342 芯片。
我正在通过向已知良好的 SPI 从设备运行许多 SPI 事务来测试 USB 转 SPI 转换器(设备 #1)。我在两台计算机上尝试过此操作。
在台式机上,只有设备 #1 连接到前面的 USB 端口,鼠标和键盘连接到后面,我每进行 50,000 次交易就会出现一次误报。在笔记本电脑上,我进行了数十万次交易,从未出现过任何故障。
当我将另一个 USB 设备(设备 #2)插入台式机的另一个端口时(但不尝试执行任何会导致设备 #2 使用 USB 的操作),故障率增加到约 1/500。笔记本电脑上不会发生这种情况。
在台式机上,当我运行强制在设备 #2 上进行 USB 通信的事务时,设备 #1 立即发生故障。这在笔记本电脑上不会发生。
- 当我将两个设备都插入 USB 集线器并在设备 #2 上运行交易时,设备 #1 在笔记本电脑和台式机上都会立即出现故障。
我尝试更新台式机的 BIOS,但无济于事。设备 #1 和设备 #2 上的电流消耗应该相当低。据我所知,电压没有下降。
问题出在计算机、设备 #1 还是两者身上?我该如何解决这个问题?
更新:当我从台式机背面的 USB 端口移除鼠标和键盘,并从正面的 USB 端口移除设备 #2 时,我能够运行设备 #1 而不会出现任何故障(500 万次交易)。我以为背面的 USB 端口与正面的 USB 端口有不同的主机控制器,所以我不明白这为什么会有所不同。但是,这是一个可以接受的解决方法,所以我将采用它。
答案1
您使用的 USB 集线器是被动式 USB 集线器,这意味着 USB 集线器只能使用来自父设备(计算机)的电源。USB 只能传输有限的能量,对于您想要连接的设备来说,这可能不够。大多数不完全使用 USB 端口电源的设备都可以正常工作。但是当某个设备使用更多电量时,例如硬盘(没有外部电源),可能会消耗过多的电量,以至于另一个设备无法在该 USB 集线器上工作。
使用有源(供电)USB 可能会解决此问题,因为外部电源可确保 USB 集线器上的每个端口都具有与单个 USB 端口相同的电压。
专家提示:USB 3.0 标准比以前的版本改进了电源管理能力,并且可以使用运行旧标准的集线器无法使用的更高功率的设备。