在英特尔爱迪生上运行的 Java 应用无法从传感器读取数据(Python 可以)



我在Python中创建了一个快速而肮脏的原型,它从连接到Intel Edison的HTU21D传感器传感器读取温度/湿度。我正在尝试用Java重写Python原型。遗憾的是,Java 中返回的温度/湿度值为零。

代码发布在Github上:https://github.com/alexwoolford/htu21d_logger。在幕后,Python和Java版本都在使用upm/mraa。

下面是要从传感器读取的 Java 代码:

upm_htu21d.HTU21D sensor = new upm_htu21d.HTU21D(1);
logger.info("Temperature: " + sensor.getTemperature() + "; humidity: " + sensor.getHumidity());

在传感器的 Java 示例代码中,传递给upm_htu21d.HTU21D(0)的总线参数为零。

你能看出我做错了什么吗?关于如何解决此问题的任何建议?

HTU21D Java 示例代码缺少以下调用:

sensor.sampleData()

感谢乔恩·特鲁尔森(Jon Trulson(确定根本原因。

最新更新