USB 电源是否始终启用?如果没有,如何编写驱动程序

2024-01-04

我的设备配有交流电源适配器,其连接器是迷你 USB 插头。然而,除非安装了特定的驱动程序,否则该设备似乎无法通过计算机的 USB 端口(使用标准 USB-迷你 USB 电缆)自行供电。该驱动程序仅适用于 Windows。我想通过不同平台上的 USB 插头为设备充电。

我的问题是:为什么没有驱动程序就无法给设备供电? USB 端口是否始终需要驱动程序才能开始供电?或者这个设备是专门设计成不充电的,除非某些软件例程触发它这样做?

我想我的问题可以概括为:USB 电缆上是否没有电源,或者是否有电源但设备忽略它。如果答案是前者,我将尝试找出如何编写使电压始终存在的软件。

Thanks


为什么没有驱动程序就无法给设备供电?

当计算机开启且 USB 控制软件未检测到电流透支时,USB 端口始终处于通电状态。

USB 端口是否始终需要驱动程序才能开始供电?

不可以,USB 端口始终需要开始为设备供电,否则设备将永远无法发起连接。

或者这个设备是专门设计成不充电的,除非某些软件例程触发它这样做?

这可能很复杂。为了满足 USB 规范,设备在向计算机注册之前不能拉动超过几毫安的电流。

然而,几乎每台计算机都允许 USB 端口在关闭电源之前拉满 500mA(甚至更多)的电流。

您正在充电的设备在获得计算机许可之前不会消耗任何大量电量,因此效果很好。

编写软件没有帮助,设备必须向USB总线注册,这最好通过驱动程序来完成。

然而,插入式充电器却不能做到这一点。它可能已将 USB 插头的两条数据线短接在一起,这向 USB 设备发出信号,表明它尚未连接到计算机,并且可以无需等待即可拉出完整的 500mA 电流。

取一条 USB 延长线,剪掉护套,然后将连接 USB 设备的数据线(有时是绿色和黄色)短接在一起,将它们剪断,不要接触连接 PC 的一端的任何东西,然后留下读取和黑色电源线连接通过。

它可能会起作用。如果没有,请将壁式充电器拆开,找出四根 USB 线的用途,看看是否可以复制。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

USB 电源是否始终启用?如果没有,如何编写驱动程序 的相关文章

  • 是否有适用于 Microsoft Access 的 64 位驱动程序?

    java sql SQLException Microsoft ODBC Driver Manager 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配 当我尝试使用 jdbc 从 eclipse 项目连接到 Microsoft
  • WriteFile 返回错误代码 87

    我正在开发一个写入 HID 设备的程序 但收到错误 87 WriteFile 函数参数无效 我从 Jan Axelson 的 USB Complete 获得了这些功能 所以我不确定为什么会收到错误 我用它来查找我的设备 private vo
  • 如何枚举所有HID设备? C#

    我需要枚举连接到我的 PC 的所有 HID 设备 我尝试使用这个答案 https stackoverflow com a 3331509 902424 但它枚举了 USBHub 设备 但我在那里找不到我的 HID 设备 EDIT 我很高兴知
  • 使用 STM32 USB 设备库将闪存作为大容量存储设备

    我的板上有这个闪存IC 它连接到我的STM32F04 ARM处理器 处理器的USB端口可供用户使用 我希望我的闪存在通过 USB 连接到 PC 时被检测为存储设备 作为第一步 我在程序中将 USB 类定义为 MSC 效果很好 因为当我将主板
  • Android 版 usbmon

    我想分析我的设备的 USB 通信 SGS4 我到处都看到需要配置 usbmon 并将其编译到内核中 Afaik 这个模块没有内置在android linux系统中 我在编译内核方面没有太多经验 但如果有必要 我会这样做 您能说出这样做的步骤
  • Java 两个独立键盘的独立输入

    我有两个 USB 键盘插入同一台机器 我正在开发一个 Java 应用程序 是否有办法允许 Java 应用程序分离出它来自哪个 USB 键盘 即是否有类似的东西http docs oracle com javase 6 docs api ja
  • 同时从多个应用程序访问网络摄像头

    问题背景 有两个不同的 Windows 应用程序正在尝试同时访问计算机上的网络摄像头 目前 只有一个应用程序能够访问它 我希望能够允许两个应用程序同时访问网络摄像头 我的问题的一个常见示例是 Skype 和 yahoo Messenger
  • 时间:2019-03-17 标签:c#usbdecision

    我们当前的应用程序中有几个进程 一个进程处理 USB 加载程序的检测和删除 处理检测和删除的代码如下 protected override void WndProc ref Message m switch m Msg case Win32
  • Android 两次请求 USB 许可

    我有一个运行 Android 4 0 4 的开发板 并将其用作 USB 配件 当我关闭板上的应用程序然后通过 USB 插入 Android 手机时 板会提示 连接此 USB 设备时打开 AppName 当我触摸 确定 时 应用程序启动并再次
  • Delphi - 如何获取 USB 可移动硬盘和记忆棒的列表?

    在我的应用程序 Delphi 中 我需要列出所有 USB 存储设备 这些可以是闪存棒or外部存储驱动器 有一个Jvcl成分JvDriveCombo 并且它有DriveType属性 问题是我是否选择DriveType Fixed那么除了外部驱
  • 使用 Windows 原始访问 API 直接访问 USB 驱动器

    在USB物理驱动器的末尾 我想使用Windows原始访问API直接写入数据 我不想使用内核驱动程序来做到这一点 据我所知 出于安全原因 Windows XP SP2 或 SP3 阻止了 HDD 直接访问 我不确定 USB 驱动器是否如此 请
  • 使用 iTextSharp 5.3.3 和 USB 令牌签署 PDF

    我是 iTextSharp 和 StackOverFlow 的新手 我正在尝试使用外部 USB 令牌在 C 中签署 PDF 我尝试使用从互联网上挖掘的以下代码 Org BouncyCastle X509 X509CertificatePar
  • 使用 C# 使用 INF 文件安装 libusb 驱动程序

    我想在 Windows 安装程序安装过程中安装第三方 libusb 驱动程序 我使用 Visual Studio 2010 创建了此安装 我尝试使用 SetupAPI 和 DifXAPI 通过命令行安装此驱动程序 但没有任何反应 我预计会弹
  • ASP.NET/Silverlight 控制 USB 设备

    我想使用某种 USB 设备 例如闪光灯 提醒用户有新消息 是否可以从 ASP NET 或 Silverlight 控制 USB 设备 您可以在网页中使用自定义 ActiveX 组件和一些 javascript 来完成此操作 或者 您可以使用
  • 我可以将 SQL Server 安装在 USB 驱动器上吗?

    我是一名开发人员 如果可以的话 我经常远程工作 而不是通勤上班 我希望能够随身携带开发数据库环境 我知道我可以远程访问数据库 但速度很慢 我有时在没有无线连接的地方工作 有任何想法吗 是的 这是可能的 看this http social m
  • Android 10 中没有设备筛选器的 USB_DEVICE_ATTACHED

    我正在开发一个 Android 应用程序 它在清单中为 BroadcastReceiver 注册了四个意图过滤器 这些都是 android hardware usb action USB DEVICE ATTACHED android ha
  • 如何在Android上读取/写入外部USB存储设备?

    我目前正在制作一个应用程序 需要能够读取和写入通过 USB OTG 适配器连接的 USB 闪存驱动器 有没有一种简单的方法可以通过标准访问此存储Java io File蜜蜂 该应用程序只能在运行 Android 4 2 2 的已 root
  • 通过 USB 将原始文本发送到打印机

    我正在尝试将 ZPL 命令发送到 Zebra ZT230 打印机 打印机和驱动程序已安装 打印机端口为 USB003 PC 通过 Zebra 打印机设置实用程序或 ZebraDesign 与打印机完美通信 我尝试了以下代码 Private
  • 如何获取过滤器驱动程序中当前进程映像文件的全名?

    在过滤器驱动程序中我可以调用IoGetCurrentProcess得到一个PEPROCESS结构 然后调用PsGetProcessImageFileName获取文件名 我的问题是我怎样才能得到full过程映像文件的名称 您可以使用ZwQue
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设

随机推荐