我的目标是使用c ++ / c#轮询usb端口以查看电源是否从out流入。
我有一个红外探测器,连接到usb输出,然后返回输入。我基本上想知道如何做这样的事情:
USBDevice usb = LoadUSBDevice(port1);
boolean detected = usb:isPowerFlowingOutToIn();
if(detected){
double amount = usb:getVoltage();
if(amount > somenumber){
//do stuff
}
}
答案 0 :(得分:0)
此设置无法正常工作。 USB设备必须根据USB规格进行响应,否则它们将无法分配地址。由于您的设备运行不正常(例如,无法建立供应商ID,产品ID,设备类......),因此无法获取地址。因此,假设LoadUSBDevice(port1);
将不起作用。
Raymond Chen很好地总结了这一点,“叉子也是一种非标准的USB设备”。 Windows USB驱动程序相当宽容,但插入USB端口时,您不能指望任何工作。