Node JS Serial Bootloader

时间:2013-07-29 15:48:05

标签: node.js bootloader

我正在创建一个引导加载程序,它从文本文件中读取数据,将每一行发送到设备,并在继续下一行之前等待确认该行已写入设备的固件。

所以我现在正在使用异步模块,它允许我在通过调用cb()回调向前移动之前等待命令执行,但是我需要仅在收到数据并由SerialPort验证后继续前进.onData()回调。

问题是,我无法弄清楚如何将回调返回的数据包含到异步循环中,因为回调只应为每个端口启动一次,因此我不能简单地将它包含在async eachSeries循环中。 / p>

有关如何提供从onData回调接收的数据的任何建议,以便可以在继续下一行之前对发送的数据进行验证吗?

function cl(dat){return console.log(dat);}

port.open(function(err){            
    fs.readFile('CS-BT_J.hex', function(err, f){
        var hex = f.toString().split('\n');     
        var async  = require("async");   
        async.eachSeries(hex, function(item,cb){ 
            outStr = String.fromCharCode(1) + item + String.fromCharCode(13);
            port.write(outStr, function(err,res) {});               
            cb();
        },function(err){});
        });

    port.on("data", function (data) { 
        cl(data);
        //if(data == addr) cb();
    });         

});

0 个答案:

没有答案