2017-09-04 7 views
0

私はUSBケーブルでコンピュータに接続したデバイスを持っています。 SerialPortモジュール経由でnodejsのデータにアクセスできます。シリアルポートのリスナーをnodejsで5つの結果ごとに出力

私はデータをオンラインで入手したいと思いますが、それぞれ5つのインスタンスごとにデータを取得したいと考えています。彼は第五のインスタンスを印刷し、変数countをリセットするが、5日に再び進行していない最初の実行で https://github.com/eshk12/SerialPort-HTTP-Server/blob/master/routes/index.js

:ここ

コンソールされています

serialport>npm run start 

> [email protected] start D:/serialport 
> node ./bin/www 

init start 
1else 
2else 
3else 
4else 
5main 
GET /hey 200 652.150 ms - 12 
1else 
2else 
3else 
4else 
は、ここでは、コードとGITであります

parser.on('data', render); - このリスナーは私がを取り出してきた問題、 を固定しているデータ毎回

答えて

0

を送り続けますルータから依存して、それをpermantly実行させて、lastresultにデータをプッシュすると、ルータlocalhost:3000/heyにアクセスして結果を印刷します。

var express = require('express'); 
var router = express.Router(); 
var cors = require('cors'); 
var SerialPort = require('serialport'); 
router.use(cors()); 

console.log('init start'); 
const Readline = SerialPort.parsers.Readline; 
const port = new SerialPort('COM7'); 
const parser = new Readline(); 
port.pipe(parser); 
var count = 0; 
var lastresult = ''; 
function counter(data){ 
    if(++count == 5){ 
    lastresult = data; 
    count = 0; 
    } 
} 
parser.on('data', counter); 
router.get('/hey', function (req, res) { 
    res.send(lastresult); 
}); 
module.exports = router; 
関連する問題