对于一个学校项目我最近买了一台Orange Pi +2,希望用它来控制一些带有GPIO引脚的电子设备。我有多年的Java经验,所以我自然希望用这种语言编写代码。当尝试安装pi4j这是一个用于覆盆子pi的java库时,我收到此错误:
mackenzie@OrangePI:~$ sudo java -jar LCD.jar
sudo: unable to resolve host OrangePI
Unable to determine hardware version. I see: Hardware : sun8i,
- expecting BCM2708 or BCM2709. Please report this to projects@drogon.net
我想知道是否有人为Orange Pi提供任何端口,如果没有,我将不得不用C编写我的程序。我正在运行Debian 8 jacer 2作为操作系统。
答案 0 :(得分:1)
OrangePi
的实验支持现已包含在最新的Pi4J v1.2-SNAPSHOT
版本中。请注意,这在很大程度上是未经测试的。随意尝试并向项目报告问题。
我担心WiringPi
的{{1}}端口可能稍微过时,可能不支持更新/最新的OrangePi (WiringOP)
硬件模型,但需要进行更多测试以确认哪些型号正在努力。
答案 1 :(得分:0)
我看到这篇文章可能会对您有所帮助:https://groups.google.com/forum/#!topic/pi4j/T30EUL2Z10I
由于我不拥有此设备,因此我无法自行验证。
答案 2 :(得分:0)
对于Raspberry Pi,有一个众所周知的用C语言编写的wiringPi库,用于GPIO访问和控制。此库已移植到Orange Pi。该端口称为wiringPO。我用一个原生方法编写了一个简单的Java类。本机方法使我可以访问wiringPO库,并使用JNI允许我的java应用程序与本机方法进行交互。像魅力一样。
答案 3 :(得分:0)
添加以下行:
GpioFactory.setDefaultProvider(new OrangePiGpioProvider());
在获取实例之前:gpio = GpioFactory.getInstance();