Node.js如何编写串口通讯长尾词的简单程序?

2026-04-06 12:262阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计330个文字,预计阅读时间需要2分钟。

Node.js如何编写串口通讯长尾词的简单程序?

使用`serialport.js`在Node.js中实现串口通信,扫描内容后控制继电器开关:

javascriptconst SerialPort=require('serialport');// 初始化扫描到的串口const port_read=new SerialPort('/dev/ttyACM0');// 初始化继电器串口const relay_port=new SerialPort('/dev/ttyACM1');

Node.js如何编写串口通讯长尾词的简单程序?

serialport.js

//node实现串口通信 扫描到内容后控制继电器开闭 const SerialPort = require('serialport');//引入模块 //初始化扫描枪串口 const port_read = new SerialPort('/dev/ttyACM0'); //初始化继电器串口 const port_write = new SerialPort('/dev/ttyUSB0'); //标签 继电器是否连接 port_write.connected=false; port_read.on('open', function(err) { debug('Port Read Opened!'); }); port_read.on('error',function(err){ debug(err); }); port_write.on('open', function(err) { debug('Port Ctrl Opened!'); port_write.connected=true; }); port_write.on('error',function(err){ debug(err); }); //遍历出所有串口 SerialPort.list(function (err,ports){ ports.forEach(function (p){ //console.log(p.comName,p.pnpId); }); }); var buffer = new Buffer(4); //继电器是否打开 默认关闭 port_write.open=false; //扫描枪扫描到数据 port_read.on('data', function(data) { debug("Data:"+data.toString()); if(port_write.connected){ //根据继电器状态写入不同指令 if(port_write.open){ buffer = new Buffer([0xA0,0x01,0x0,0xA1]); }else{ buffer = new Buffer([0xA0,0x01,0x01,0xA2]); } //写入继电器命令 port_write.write(buffer, function(err) { if (err) { debug('Error:', err.message); }else{ debug('Data Send!'); port_write.open=!port_write.open; } }); } }); function debug(msg) { console.log("Console\t" + getTime() + "\t" + msg); } function getTime() { var now = new Date(); var hours = now.getHours(); var minutes = now.getMinutes(); var seconds = now.getSeconds(); if (hours < 10) { hours = "0" + hours; } if (minutes < 10) { minutes = "0" + minutes; } if (seconds < 10) { seconds = "0" + seconds; } return hours + ":" + minutes + ":" + seconds; }

本文共计330个文字,预计阅读时间需要2分钟。

Node.js如何编写串口通讯长尾词的简单程序?

使用`serialport.js`在Node.js中实现串口通信,扫描内容后控制继电器开关:

javascriptconst SerialPort=require('serialport');// 初始化扫描到的串口const port_read=new SerialPort('/dev/ttyACM0');// 初始化继电器串口const relay_port=new SerialPort('/dev/ttyACM1');

Node.js如何编写串口通讯长尾词的简单程序?

serialport.js

//node实现串口通信 扫描到内容后控制继电器开闭 const SerialPort = require('serialport');//引入模块 //初始化扫描枪串口 const port_read = new SerialPort('/dev/ttyACM0'); //初始化继电器串口 const port_write = new SerialPort('/dev/ttyUSB0'); //标签 继电器是否连接 port_write.connected=false; port_read.on('open', function(err) { debug('Port Read Opened!'); }); port_read.on('error',function(err){ debug(err); }); port_write.on('open', function(err) { debug('Port Ctrl Opened!'); port_write.connected=true; }); port_write.on('error',function(err){ debug(err); }); //遍历出所有串口 SerialPort.list(function (err,ports){ ports.forEach(function (p){ //console.log(p.comName,p.pnpId); }); }); var buffer = new Buffer(4); //继电器是否打开 默认关闭 port_write.open=false; //扫描枪扫描到数据 port_read.on('data', function(data) { debug("Data:"+data.toString()); if(port_write.connected){ //根据继电器状态写入不同指令 if(port_write.open){ buffer = new Buffer([0xA0,0x01,0x0,0xA1]); }else{ buffer = new Buffer([0xA0,0x01,0x01,0xA2]); } //写入继电器命令 port_write.write(buffer, function(err) { if (err) { debug('Error:', err.message); }else{ debug('Data Send!'); port_write.open=!port_write.open; } }); } }); function debug(msg) { console.log("Console\t" + getTime() + "\t" + msg); } function getTime() { var now = new Date(); var hours = now.getHours(); var minutes = now.getMinutes(); var seconds = now.getSeconds(); if (hours < 10) { hours = "0" + hours; } if (minutes < 10) { minutes = "0" + minutes; } if (seconds < 10) { seconds = "0" + seconds; } return hours + ":" + minutes + ":" + seconds; }