官网:https://serialport.io/en/

安装:npm install serialport

Parsers说明:
parser-byte-length:
大概意思是定义了一个长度为length字节的buffer,串口收到数据后先放到buffer中,放满了才发送给程序,超出的部分等buffer发送清空后继续放入
parser-cctalk:
一种在货币交易等行业广泛使用的串行协议
parser-delimiter:
意思是遇到某个字符时才把buffer中的数据发给程序,比如设为’a’,那么用字符发送时遇到’a’即发送,用hex发送时遇到61(‘a’的ASCII码)时发送;注:官方例子中’\n’字符用串口工具字符发送没生效,但用hex发送其ASCII码(0A)和在node.js项目中可以生效
parser-readline:
可以自定义换行符,遇到换行符时发送,默认为’\r\n’,对应ASCII为0D 0A;但目前打hex日志时为乱码
parser-ready:
程序先收到自定义字符串,例’READY’后才开始接收数据
parser-regex:
正则表达式
parser-slip-encoder:
没弄清楚是什么意思,require模块也报错

例子:

var SerialPort = require('serialport');
var port = new SerialPort('COM5'); //发hex
var senddata = [0x01,0x02];
//发字符串
//senddata = 'test data'; function writeport()
{
port.write(senddata, function (err) {
if (err) {
return console.log('Error on write: ', err.message);
}
console.log('send: ' + senddata);
});
} port.on('open', function () {
writeport();
}); // open errors will be emitted as an error event
port.on('error', function (err) {
console.log('Error: ', err.message);
}) setInterval(function () {
writeport();
}, ); port.on('data', function (data) {
//收hex
console.log('recv: ' + data.toString('hex'));
//收字符串
//console.log('recv: ' + data.toString('ascii'));
});

注:版本不同可能使用方式不同,当前使用的版本是7.1.4

简单例子地址:https://github.com/TLScottChen/node-serialport-example
官方文档4.0.1地址:https://github.com/node-serialport/node-serialport/blob/4.0.1/README.md

Node.js 串口通讯 node-serialport 使用说明的更多相关文章

  1. Node.js入门:Node.js&NPM的安装与配置

    Node.js安装与配置      Node.js已经诞生两年有余,由于一直处于快速开发中,过去的一些安装配置介绍多数针对0.4.x版本而言的,并非适合最新的0.6.x的版本情况了,对此,我们将在0. ...

  2. node.js安装以及git 的使用说明

     第一步:安装node.js: Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境.   Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高 ...

  3. Node.js学习笔记——Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  4. Node.js系列之node.js初探

    官方介绍:Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable n ...

  5. 拿什么守护你的Node.JS进程: Node出错崩溃了怎么办? foreverjs, 文摘随笔

    守护进程 方案一 npm install forever https://github.com/foreverjs/forever 方案二 npm install -g supervisor http ...

  6. 【Node.js】利用node.js搭建服务器并访问静态网页

    node.js是一门服务端的语言,下面讲讲如何利用node.js提供给我们的api来搭建服务器,并且访问静态网页 项目结构如下 ------------------------------------ ...

  7. 拿什么守护你的Node.JS进程: Node出错崩溃了怎么办?

    被吐嘈的NodeJS的异常处理 许多人都有这样一种映像,NodeJS比较快: 但是因为其是单线程,所以它不稳定,有点不安全,不适合处理复杂业务: 它比较适合对并发要求比较高,而且简单的业务场景. 在E ...

  8. ES6 学习笔记 (2)-- Liunx环境安装Node.js 与 搭建 Node.js 开发环境

    笔记参考来源:廖雪峰老师的javascript全栈教程 一.安装Node.js 目前Node.js的最新版本是6.2.x.首先,从Node.js官网下载对应平台的安装程序. 1.下载 选择对应的Liu ...

  9. node.js&pm2搭建node生产环境

    node.js下载地址https://nodejs.org/en/download/stable/ 下载截图 建议采用稳定编译过的版本,source code稍麻烦,编译过的直接可用,安装超级简单,红 ...

随机推荐

  1. day1——分割数组

    // 小白一名,0算法基础,艰难尝试算法题中,若您发现本文中错误, 或有其他见解,往不吝赐教,感激不尽,拜谢. 领扣 第915题 今日算法题干//给定一个数组 A,将其划分为两个不相交(没有公共元素) ...

  2. Windows 后台执行jar

    我们都知道Linux下可用命令nohup /opt/jdk1.8.0_131/bin/java -jar xxx.jar &来后台执行jar 如果是Windows环境,要如何在后台执行呢 新建 ...

  3. Demo整合

    1.图片上传:  https://github.com/842549829/WebUploader 2.百度编辑器: https://github.com/842549829/Ueditor 3.安卓 ...

  4. OpenGL.Tutorial15_Lightmaps

    ZC:撤销 & 重做 — Blender Manual.html(https://docs.blender.org/manual/zh-hans/dev/interface/undo_redo ...

  5. h5视频播放

    h5视频播放 一直在写js原生的东西,感觉总是停滞不前,现在我们应该学一些h5新的特性,因为我们毕竟是从事前端的,下面我们一起来写一个视频播放吧 1,html <div class=" ...

  6. javascript的几个知识点scoping, hoisting, IIFE

    Scoping--作用域 ES6之前只有函数作用域.ES6加入块级作用域.用let声名的变量是块作用域内有效,用var声名的变量在函数作用域与块作用域里有效. Hoisting--提升 Hoistin ...

  7. spring boot2 kafka

    一.软件版本 1.linux:centos6 2.zookeeper:zookeeper-3.4.1 3.kafka:kafka_2.12-2.2.0 4.jdk:1.8 5.instelliJ Id ...

  8. 浅谈UML中常用的几种图——类图

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  9. C语言课设——电影院选票系统

    C语言课设--电影院选票系统 1.课题介绍 大家都爱看电影,现请参考一个熟悉电影票预订系统,实现C语言版的订票系统.了解订票如何实现的.系统主要有2类用户:管理员用户和顾客用户. 管理员用户 1.电影 ...

  10. java protected修饰符说明

    1. 简介 对protected修饰符进行阐述,结合Object类的clone方法进行说明.其中clone方法如下:protected Object Object.clone(): 关于protect ...