英特尔Edison:MRAA javascript i2c.read()将结果存储为对象或字符串?

时间:2014-12-26 06:20:24

标签: javascript i2c intel-edison

当我执行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);

1 个答案:

答案 0 :(得分:0)

mraa(0.5.4+)的最新版本将i2c.read()的结果存储为node_buffer对象。您可能会使用过去返回字符串的旧版本,请查看getVersion()调用。