7

我有一个正在处理的项目,我想使用这些: http ://www.woot.com/blog/post/usb-powered-woot-off-lights-2

然而,看起来他们只有开/关开关。它们不是您可以通过编程方式与之交互的东西。

所以我在想,如果我能找到一种方法来切断 USB 端口的电源,那我就可以用我的应用程序打开和关闭灯。但是我找不到任何方法来切断 USB 端口的电源。这可能吗?

4

3 回答 3

3

我遇到了类似的问题并使用 DevManView.exe(免费软件)解决了它:

  1. 下载 DevManView.exe 并将 .exe 文件放在某处: http ://www.nirsoft.net/utils/device_manager_view.html

  2. 转到您的设备管理器并确定您必须启用/禁用哪个 USB 控制器,以便您的设备不再通电/不通电。对我来说,禁用“USB 串行转换器”确实会切断所有 USB 插槽的电源。

设备管理器中的 USB 串行转换器

  1. 在 C# 中,创建并启动一个用于禁用设备的新进程(使用 USB 控制器的名称)。

    Process devManViewProc = new Process();
    devManViewProc.StartInfo.FileName = @"<path to DevManView.exe>\DevManView.exe";
    devManViewProc.StartInfo.Arguments = "/disable \"USB Serial Converter\"";
    devManViewProc.Start();
    devManViewProc.WaitForExit();
    
  2. 并再次启用它。

    devManViewProc.StartInfo.Arguments = "/enable \"USB Serial Converter\"";
    devManViewProc.Start();
    devManViewProc.WaitForExit();
    
于 2017-08-08T10:16:40.720 回答
2

编辑:不幸的是,这家公司的产品似乎不再销售了


power-woot-off-lights-2 是通过一个普通的 USB 插头供电的,这意味着它们是 5 伏的,并且每个都有一个灯和一个电机。

我找不到需要多少安培,但我知道如果 200 mA 用于一个供电的 woot-off-lights 就足够了,那么这个扩展将是完美的。

USB 控制器扩展

C# 或 VB.NET 代码看起来像这样。

// On
nusbio.GPIOS[NusbioGpio.Gpio0].DigitalWrite(true);
nusbio.GPIOS[NusbioGpio.Gpio1].DigitalWrite(true);
// Off
nusbio.GPIOS[NusbioGpio.Gpio0].DigitalWrite(false);
nusbio.GPIOS[NusbioGpio.Gpio1].DigitalWrite(false);

查看Nusbio 的网站,我认为扩展程序在他们的商店中。我自己使用了类似的 nusbio 扩展。

打开/关闭我的 USB 风扇和电池供电的小灯

于 2016-12-11T15:26:06.513 回答
0

如果您具有管理员权限,请运行以下命令:

Microsoft.Win32.Registry.SetValue(@"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR", "Start", 4, Microsoft.Win32.RegistryValueKind.DWord); 
于 2013-02-04T15:46:02.597 回答