繁体   English   中英

使用Java ME Embedded 8在beaglebone black上访问GPIO

[英]Access GPIO on beaglebone black using Java ME Embedded 8

我想知道是否可以使用嵌入式Java ME访问beaglebone黑色上的gpio,i2C,uart等。 我知道Java本机访问是有可能的,但是现在Java ME Embedded 8中包含一个API Device I / O 1.0。 我正在用beaglebone黑色运行debian。

JavaME Embedded 8.1仅在目前在Linux上运行的RaspberryPi(以及某些其他非linux嵌入式板上)上受支持。

http://www.oracle.com/technetwork/java/embedded/javame/embed-me/downloads/java-embedded-java-me-download-2162242.html

我还没有在另一个Linux板(例如Beagleboard)上使用RPi运行时进行过测试,但是我认为它将绝对无法使用。 根据运行时的实现方式,对底层IO(如GPIO或I2C)的访问可能取决于平台。

请注意,Device / IO API已集成到Java平台的OpenJDK实现中(因此,该API并非特定于JavaME)。 但是在这里,这也仅限于RaspberryPi。

https://wiki.openjdk.java.net/display/dio/Main

尝试libbulldog: http ://libbulldog.org/bulldog/

或Kura :(您需要BeagleBone Black RevC。)

https://www.eclipse.org/kura/index.php

http://eclipse.github.io/kura/doc/beaglebone-quick-start.html

您可以在此处找到示例: http : //www.oracle.com/webfolder/technetwork/tutorials/obe/java/RaspberryPi_GPS/RaspberryPi_GPS.html#overview

它应该可以工作...但是我正在尝试执行此操作,但没有得到任何好的结果。

祝你好运^^

我在访问BeagleBoneBlack的GPIO时遇到了类似的问题。

我设法使用Linux内核导出到用户空间的GPIO设备树覆盖来解决此问题。 最好的部分是:一个只需要Java SE 8的Jar。

我的代码在GitHub上: https : //github.com/eitch/ch.eitchnet.beaglebone

要使其在Raspberry Pi上运行,需要完成两件事:

我认为这些事情应该不是什么大问题。

完成此操作后,访问GPIO就很简单:

// Get Bridge:
GpioBridge gpioBridge = GpioBridge.getInstance();
Gpio pin8_07 = gpioBridge.getGpio(Pin.P8_07, Direction.IN);

// Read an input GPIOs value:
Signal currentSignal = gpioBridge.readValue(pin8_07);
System.out.println(pin8_07 + " currently has signal " + currentSignal);
Writing Output Pins

// Write an output GPIOs value:
Gpio pin8_08 = gpioBridge.getGpio(Pin.P8_08, Direction.OUT);
gpioBridge.writeValue(pin8_08, Signal.HIGH);
System.out.println("Set signal of " + pin8_08 + " to " + Signal.HIGH);
Observing Input Pins

// To be notified of changes to an input GPIO, register a GpioSignalListener:
gpioBridge.register(pin8_07, gpio -> System.out.println("Signal of "+pin8_07 + " has changed to " + gpio.getSignal()));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM