只用USB端口编程LED

时间:2010-09-03 12:54:59

标签: c# hardware usb hardware-programming

我想只用USB端口用C#控制LED。我不想用USB连接任何其他设备。我只想将LED直接连接到USB端口引脚并对其进行编程(闪烁等)。我怎样才能做到这一点?我是硬件编程的新手,它将是我的第一个程序。

编辑:我可以使用printer port通过将一个LED引脚连接到data pin而将其他引脚连接到ground来实现(闪烁LED)。我怎么能用USB端口做同样的事情?我的主板没有打印机端口。 USB是唯一的选择。

6 个答案:

答案 0 :(得分:5)

这是不可能的。

4 usb pins

| | | |  
| | | |  
1 2 3 4

1: +5V
2: D-
3: D+
4: Ground

To trun on LED connect with 1 and 4

数据引脚上的电流过低,因此如果与5V和任何数据引脚连接,LED将永远不会亮起。因此,无法使用USB端口上的数据引脚直接控制LED

答案 1 :(得分:4)

许多主板将永久性地为USB端口提供电流。

理论上你可以将USB控制器置于某种挂起模式并再次返回,但这很糟糕。

你需要某种控制器来通过USB接受命令,然后是一些分立元件来打开/关闭来自永久USB电源的电流,让它到达你的LED。

答案 2 :(得分:4)

你真的不能这样做。您可以使用并行端口执行此操作,因为您可以单独控制数据引脚。使用USB,您只能控制USB协议之上的数据。无论如何,协议都可以通过主板上的芯片在固件中运行,因此很可能无法做你想做的事情,短接LED连接电源引脚和切换USB总线电源,你不应该这样做有各种各样的原因。

得到一个Arduino或其他东西。从长远来看,它将更容易,更灵活。

答案 3 :(得分:3)

  

我可以使用打印机端口来实现(闪烁LED)......

好的,为什么不买cheap USB based printer port并使用它?由于您已经使用了LPT端口代码,因此这为您提供了透明的解决方案。

答案 4 :(得分:2)

您可以使用PIC单片机。 18f系列可以直接连接usb上的led。也可以使用c#进行编码,仅使用USB端口来控制LED。我猜你实际上想要控制LED而不是让它发光。

答案 5 :(得分:0)

如果您可以清除使用USB控制LED的动机,那么回答问题非常有帮助: