我正在Raspberry Pi上制作一个基于js的时钟。它以铬和镍为主。显示时间和时间天气(使用simpleWeather
)。我连接了ds18b20
,我也希望显示温度。设备工作正常,我可以从命令行读取温度,但我想读取它并在我的js脚本中显示它。
我正在使用w1temp
。我得到了需要部分错误而没有正确加载w1temp,但我不明白我哪里出错了。有人可以指出我正确的方向吗?
我正在使用这样的要求:
require(['../../node_modules/w1temp'], function (W1Temp) {
});
然后
setInterval( function () {
W1Temp.getSensor('28-0414609d26ff').then(function (sensor) {
// get inside temperature
var temp = sensor.getTemperature();
$("#inside_temp").html(temp);
});
},1000);
在执行此操作时,我在加载页面时出现js错误&我的温度没有显示出来。错误是:
不允许加载本地资源:
home/pi/node_modules/w1temp.js
我想这是因为它们不是home/pi/node_modules/w1temp.js
,但我需要从w1temp中获取温度?
我知道我基于一个简单的误解而犯了一个简单的错误,&我已经阅读了w1temp文档,但我无法看到我出错的地方。我希望有人能指出我正确的方向。
答案 0 :(得分:0)
npm软件包 ds18x20 运作良好。您可以使用同步或异步加载:
var sensor = require('ds18x20');
sensor.getAll(function (err, tempObj) {
console.log(tempObj); // will display temperature using the asynchronous method
});
var tempObj = sensor.getAll();
console.log(tempObj); // will display temperature using the synchronous method
我尝试了其他几个npm软件包,但这是最容易使用的软件包,它提供了极大的帮助。