如何检查USB的输入?


8

我的电线如下图所示,一端有USB公头,另一端有四根电线。我知道,连接笔记本电脑时,红色是电压源,黑色是地线。如果我将2位数据输入给GREEN和YELLOW,那么是否有用于Python(C,C或任何其他语言)的软件或API来了解这两根线的状态?我的意思是检查绿色或黄色是否带有电压。

在此处输入图片说明

如果我问错了问题,请指导我。

Answers:


12

不,您不能直接检测USB线的状态。USB是一个比它复杂得多的接口,它与可以通过简单的驱动程序直接用于I / O的旧式串行和并行端口没有任何可比性。甚至在发送“真实”数据/有效载荷的第一个字节之前,都会与PC交换复杂的握手。

也许您的PC具有可以使用的并行端口?或者,您应该使用USB转GPIO转换器,该转换器可广泛使用,价格各异(极高和极低)。


1
示例:sparkfun.com/products/718我对这个模块没有任何经验,但是看起来很合适。如果您四处看看,还有许多类似的选择。
jippie 2013年

1
只是一小部分:您不能滥用这样的USB端口,因为握手发生的级别比使用普通编程语言所能访问的级别低得多。握手的一部分发生在硬件中。
亚历山大

1

您的最终目标是什么?如果要遵守USB协议,则可以使用相对便宜相对昂贵的逻辑分析仪。

如果您的目标是捕获计算机上的字节,则可以获取适用于操作系统的USB调试器(例如,OS X具有免费的USB调试工具包)。

如果您的目标是要有一种简便的方法来确定是否在输入上施加电压,那么最好使用USB-> GPIO,如jippie所建议的那样,否则您可以选择(更昂贵的)arduino路线如果您想在计算机上进行分析之前对输入进行更多处理,则还有很大的增长空间。

如果您真的想以一种超简单的方式将电压值输入计算机中而无需购买新硬件,吉比建议您使用并行端口是一个很好的建议,您还可以研究将麦克风输入用作杰里构建的解决方案。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.