微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用JAVA控制通过USB / SerialPort等连接PC的LED灯?我应该使用什么设备?

我想在JAVA中编写一个程序,它可以控制LED灯连接到连接到计算机的“东西”.

JAVA程序将包含JFrame中的8个切换按钮.按钮编号从1到8,当按下编号为X的按钮时,编号为X的LED将打开;再次单击(切换)该按钮时,该LED将关闭.

与我们必须在其中加载代码的微控制器不同,我提到的“某些东西”只是接收来自JAVA的信号(可能通过USB / SerialPort / …)来控制灯光.
例如,JAVA通过SerialPort将0000_0101(打开LED 1号和3号灯)发送到“某物”,然后“东西”将“保留”该值,直到发送新信号.该值的每个数字代表“某物”上引脚的高/低,我将引脚连接到LED.

“Something”可能类似于可以将“串行端口信号”转换为“二进制”并将“二进制”保存在具有输出引脚的寄存器中的设备,我可以将它们连接到LED.

那可能吗?有没有像“东西”这样的设备?它是什么?有没有人有任何建议?还是一些更好的方法来控制PC的灯光?

解决方法

我使用运行 Android端口的BeagleBone Black做了类似的事情.我设计了一个Android应用程序,它使用我创建的自定义蓝牙低功耗API与运行BLE堆栈的TI CC2541进行通信.

您需要做的是在C/C++中编写函数以进行切换I / O所需的平台硬件调用.像ToggleLed(led)这样的东西就足够了.然后使用Java Native Interface (JNI)将本机调用连接到Java.JNI创建一个可以静态加载的库.

创建库后,可以使用Java调用它.

例如,在我的情况下,我创建了一个与本机C通信的BLE API,它将对我的嵌入式CC2541 BLE芯片执行串行读/写操作,以命令它进入不同的状态.这些命令是连接/断开,写入数据和读取数据. BLE API是用Java编写的,通过JNI和驱动程序调用与硬件连接.然后我编写了使用BLE API的应用程序.

原文地址:https://www.jb51.cc/java/120805.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐