我为多个客户提供解决方案时使用非自供电 USB 调制解调器设备,经常遇到设备因多种原因停止工作的问题,其中一个原因我怀疑是 USB 电源不足,但无法确认。我可以购买有源 USB 集线器(我有时会这样做),但这个问题让我很烦恼,因为我无法确认电源是问题所在,不得不自费前往客户办公室。
我已阅读该问题如何检查 USB 端口可以提供多少电量?,并按照答案中的说明进行操作。
我使用的设备是 Sierra Wireless GL6110 USB 调制解调器。供应商规格(见下面的规格链接)表明调制解调器的最大电流可达 400mA。在设备管理器 -> 通用 USB 集线器 -> 电源选项卡下,它显示调制解调器的电流为 20mA,我认为这低于实际最大值。它还显示每个端口的最大电流可达 500mA。
我认为“电源”选项卡下提供的信息不足以让我判断系统是否可以为我的调制解调器设备提供足够的电力,因为:
首先,即使集线器每个端口可提供高达 500mA 的电流,但这会在多个端口之间共享,可能没有足够的电力为每个端口提供 500mA。
其次,设备管理器->通用 USB 集线器->电源选项卡中显示的设备所需电量可能并不准确,而且它只是一个所需电量数字,而不是实际消耗的电量。
因此,为了解决我的问题,我试图找出是否有办法检测可以提供给 USB 集线器的实际最大功率?我打算做的是激活连接到系统的所有 USB 设备,例如,如果它是 USB 扬声器,我会将扬声器调到最大音量,然后使用某些仪器或软件测量端口可以提供的最大功率。
答案1
准确测量这一点的唯一方法是使用纯硬件,例如使用万用表测量电流。基本概念是施加一个电阻负载到Vcc 和 GND USB 电源引脚并测量电流。增加负载,直到底层 USB 电源电路因电流过大而关闭。此时万用表上的值将是您可以有效获得的最大功率。如果端口可以提供 500mA,这意味着最低电阻值约为 10 欧姆,因为欧姆定律。因此,可以使用 100 至 0 欧姆范围内的可变电阻器。