只是想知道是否有任何Java API可以让您控制台式机/笔记本电脑外壳上的LED?
或者,如果不是,那完全有可能吗?
最佳答案
如果您正在谈论前面的指示灯,这些指示灯指示电源状态和HDD繁忙状态,那么恐怕无法使用它们。 AFAIK它们直接由主板上的控制器控制,并且不会暴露于BIOS之上的任何软件。
如果要将定制的LED插入计算机并用Java控制它们,则可以将它们连接到串行或并行端口,并使用Java native
方法(本质上与C或C ++代码对话)来控制它们。 。 AFAIK,这是因为JVM没有直接API与底层硬件对话。由于Windows Vista及更高版本需要内核模式驱动程序才能与端口通信,并且所有用户模式软件均被阻止,因此这可能变得非常棘手。因此,您的C ++代码应与内核模式驱动程序对话。
另一种方法是断开LED与PC的连接,并通过自定义协议通过WiFi或蓝牙进行通信。如@Makoto所述,您可以使用arduino或类似的板并通过无线或有线技术进行通信。