nodejs 获取串口数据

由于项目要求,项目为(B/S)架构 ,需要在页面上读取串口数据,于是就需要nodejs了

使用 nodejs 的一个插件 :serialport

现在先做个测试demo

1、先建立测试文件夹 

2、在文件夹中安装serialport ,在文件夹下的 cmd 中输入

    npm install serialport

3、可能会出现 一个警告可用忽略

4、安装后 编写读取串口 js 文件 testport.js

var portName = 'COM2'; //定义串口名

var serialPort;

if(serialPort){

serialPort.close();

}

serialPort = new SerialPort( //设置串口属性

"COM2", {

  baudRate: 9600,  //波特率

  dataBits: 8,    //数据位

  parity: 'none',  //奇偶校验

  stopBits: 1,  //停止位

  flowControl: false ,

  autoOpen:false //不自动打开

}, false);

serialPort.open(function(error){

  if(error){

    console.log("打开端口"+portName+"错误:"+error);

  }else{ 

  console.log("打开端口成功,正在监听数据中");

    serialPort.on('data',function(data){

    console.log(data);

    })

  }

});

//var SerialPort = require('serialport');

SerialPort.list(function (err, ports) {

  ports.forEach(function(port) {

    console.log(port.comName);

    console.log(port.pnpId);

    console.log(port.manufacturer);

  });

});

5、运行 js 在文件夹下 cmd 中输入

node testport.js

执行成功:

可能的问题:

问题一: Flie not found

这个是电脑上没有安装串口驱动,或者虚拟串口 

可用 虚拟串口程序

vspd

建立测试串口

问题二:Port is opening

需要加入 串口属性 autoOpen:false

你可能感兴趣的:(nodejs 获取串口数据)