当我执行i2c.read(7)时,结果将存储为字符串。如果我没有弄错,我认为var d = i2c.read(7)
应该存储为对象?我还不清楚mraa Javasript i2c API是什么。 i2c.read()是否应该将结果存储为对象或字符串?如果是对象,那么我做得不好?
console.log输出:
JSON.stringify:" \ u00012.974 \ u0000"
typeof:string
结果:2.974
代码:
var m = require('mraa');
var i2c = new m.I2c(1);
i2c.address(0x63);
i2c.write("R");
console.log("Reading I2C..");
function readPH() {
var d = i2c.read(7);
console.log("JSON.stringify: " + JSON.stringify(d));
console.log("typeof: " + typeof d);
console.log("Result: " + d);
}
setTimeout(function (e) { readPH(); }, 1000);
答案 0 :(得分:0)
mraa(0.5.4+)的最新版本将i2c.read()的结果存储为node_buffer对象。您可能会使用过去返回字符串的旧版本,请查看getVersion()调用。