windows - 在 Windows 上的软件中关闭 USB 设备

标签 windows winapi embedded usb microcontroller

我想通过 Windows 上的软件重启 USB 设备。

我正在开发小型 USB 电源微 Controller 。该芯片将在电源循环上恢复为 native 行为并允许代码下载。因为当出现问题时我的代码会使设备崩溃——使其忽略所有 USB 命令——我必须从系统中物理地拔掉设备。

我想远程进行开发,而不必亲自到场。

到目前为止,我已尝试使用“devcon”来禁用部分 USB 堆栈。虽然这会将集线器带入 D3(应该关闭电源!),但仍有电源供应给设备。

是否有任何可能有用的现有解决方案或 SetupAPI 技巧?

最佳答案

某些 USB 集线器能够关闭其下游设备的电源。

“是否可以从 Ubuntu 启动 USB 集线器上的端口?” https://askubuntu.com/questions/149242/is-it-possible-to-power-up-ports-on-a-usb-hub-from-ubuntu 它指向 hub-ctrl.c 的一些 c 源代码

参见:http://www.gniibe.org/development/ac-power-control-by-USB-hub/index

我在 Ubuntu 上用一个 Dream-Cheeky USB LED 单元测试了这个,它似乎确实关闭了电源 - 虽然当再次打开时,该设备已经记住(!)它的 LED 开/关状态??? - 当我拔下并重新插入 LED 的 USB 导线时,这并没有发生......

看起来有人在为 Windows 编译这个,但我找不到结果,抱歉。

关于windows - 在 Windows 上的软件中关闭 USB 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/404097/

相关文章:

c# - 在 rtf 字符串的位置追加文本

ruby-on-rails - 未检测到 Procfile,使用默认 Web 服务器 (webrick)

windows - 如何以编程方式检测操作系统何时完成加载其所有应用程序\服务?

windows - COM `IStream` 接口(interface)指针和来自不同线程的访问

c++ - 在 C 中将 Ascii 数字转换为十六进制数字

windows - 如何使用 PowerShell 导入 CSV 文件并从文本文件中读取一行?

winapi - 带有 FLAG_DELETE_ON_CLOSE 的 Win32 API CreateDirectory。可能的?

C++ win32 : adding values to ComboBox

c - 如果在待发送期间有传入数据包,packetbuf 如何在 ContikiOS 中工作?

c - 为 32 位微 Controller 编写掩码的替代方法