我正在尝试通过我制作的Chrome应用程序将十六进制文件闪存到Arduino。我使用了下面的基本NodeJS代码,并使用browserify对其进行了转换,以便可以在浏览器中使用。它不起作用,并且在控制台中出现错误,提示“ TypeError:fs.readFileSync不是函数”
var Avrgirl = require('avrgirl-arduino');
var avrgirl = new Avrgirl({
board: 'uno'
});
avrgirl.flash('Blink.cpp.hex', function (error) {
if (error) {
console.error(error);
} else {
console.info('done.');
}
});
最佳答案
您无法在浏览器中运行这种类型的代码(即使使用browserify也是如此)。您应该在node.js中运行它。
我猜你的错误来自内部:
avrgirl.flash('Blink.cpp.hex', ...)
因为您要传递文件名,并且该函数可能试图读取该文件。
browserify
不能神奇地赋予浏览器强大的功能,如从硬盘驱动器读取文件或与arduino硬件进行通信等。该代码可能应该在node.js环境中运行。avrgirl-arduino
模块的instructions清楚地表明您应该在node.js中运行。