npm 包 @cutii/serialport 使用教程

介绍

@cutii/serialport 是一个用于访问串口设备的node.js包。该包基于node-serialport进行了封装,提供了更为简单易用的API接口,可方便地获取设备信息、配置串口参数以及读取、写入数据等操作。

安装

如果要使用 @cutii/serialport 包,需要先安装node.js环境。安装完成后,使用以下命令来安装该包:

--- ------- -----------------

API接口

SerialPort

使用 SerialPort 需要先导入该类:

----- ------------ - ----------------------------

new SerialPort(path,options,callback)

该方法用于创建一个串口对象,参数含义如下:

  • path: 串口设备路径,例如/dev/ttyS0
  • options: 可选参数对象,包括以下属性:
    • baudRate: 波特率,默认为9600
    • dataBits: 数据位数,默认为8
    • stopBits: 停止位数,默认为1
    • parity: 校验位,默认为none
    • rtscts: 是否使用RTS/CTS来流控,默认为false
    • xon: 是否使用XON/XOFF来流控,默认为false
    • bufferSize: 缓冲区大小,默认为65536
  • callback: 回调函数,函数签名为(err:Error|null,serialPort:SerialPort|undefined)=>void。如果创建成功,Err为null,serialPort是返回的串口对象。

使用示例:

----- ------------ - ----------------------------
----- ---- - --- ------------------------ ---------- -------- --- -- -
    --------
        ------------------- -- ------------
    ------
        ------------------- ---- ------ ---------------
    -
--

serialPort.write(data,callback)

该方法用于向串口写入数据,参数含义如下:

  • data: 要写入的数据,可以是字符串或Buffer对象
  • callback: 回调函数,函数签名为(err:Error|null)=>void。如果写入成功,err为null,否则是一个带有错误信息的Error对象。

使用示例:

----- ------------ - -----------------------------
----- ---- - --- ------------------------ ---------- -------- --- -- -
    -- ----- -
        ------------------- -- -------------
    - ---- -
        ------------------- ---- ------ ----------------
        ----------------- ------- --- -- -
            -- ----- -
                ------------------ ------- -- ----- -- -------------
            - ---- -
                ----------------- ------- ----------------
            -
        ---
    -
---

serialPort.on(event,callback)

该方法用于绑定事件,例如数据读取事件、错误事件等。目前支持如下事件:

  • data: 数据读取事件,函数签名为(data:Buffer)=>void
  • error: 错误事件,函数签名为(err:Error)=>void
  • disconnect: 串口断开事件,函数签名为()=>void

使用示例:

----- ------------ - -----------------------------
----- ---- - --- ------------------------ ---------- --------

--------------- ---- -- -
  ------------------- ---------------------
---

---------------- --- -- -
  ------------------ -----------------
---

示例代码

以下示例代码演示如何在node.js中使用@cutii/serialport包读取串口数据:

----- ------------ - -----------------------------
----- ---- - --- ------------------------ ---------- ------

--------------- ---- -- -
    ------------------- ---------------------
---

---------------- --- -- -
    ------------------ -----------------
---

本示例中,我们创建了一个SerialPort对象,使用回调函数绑定了'data'和'error'事件。当数据被读取时,'data'事件会被触发,并将数据作为参数传递给回调函数。当发生错误时,'error'事件会被触发,并将错误信息作为参数传递给回调函数。

总结

@cutii/serialport包提供了简单、易用的API接口,方便node.js开发者访问串口设备。本文介绍了SerialPort类的使用方法、API接口及示例代码,希望对大家有所帮助。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60056afc81e8991b448e532a


猜你喜欢

  • npm包azworkshops-cli使用教程

    在前端开发过程中,有时候我们需要以某种方式快速构建demo或者样例,以便于我们更好的了解并学习一些新的技术或者库。但是手动创建这些demo或者样例需要一定的时间,所以使用已经存在的工具或者库来实现这些...

    3 年前
  • NPM 包 crockery 使用教程

    Crockery 是一个 npm 包,它为开发者提供了一个易于使用的界面,帮助他们以可靠的方式创建 JavaScript 对象的重复集合。此 npm 包的主要目的是避免手动编写不准确或呈现不良的代码以...

    3 年前
  • npm 包 react-mdc-web 使用教程

    在前端开发中,使用现成的库和框架可以大大缩短开发时间,提高代码质量和工作效率。在这篇文章中,我们将介绍 npm 包 react-mdc-web,它是一个基于 Google Material Desig...

    3 年前
  • npm 包 swagger2-restify 使用教程

    在开发前端应用程序的过程中,我们需要经常与后端 API 进行交互。而 swagger2-restify 是一个 npm 包,可以帮助我们方便地集成 swagger API 并生成 REST API。

    3 年前
  • npm 包 @ecliptic/bs-express 使用教程

    前言 在 Web 开发场景下,Express 是一款非常受欢迎的 Node.js Web 框架。它提供了一系列工具和方法,方便开发者快速搭建出高效、稳定的 Web 应用。

    3 年前
  • npm 包 ansi-colors-lazy 使用教程

    在前端开发中,经常需要在终端输出彩色文本来进行一些提示或者调试信息。此时我们需要使用到一些处理终端显示颜色的工具库。其中 ansi-colors-lazy 就是一款很不错的 npm 包,下面就来介绍一...

    3 年前
  • npm 包 nosqldb 使用教程

    什么是 nosqldb nosqldb 是一个基于 Node.js 的 NoSQL 数据库,支持多种存储引擎,如 memcached、redis 等。它是基于 Promise 模式封装的,易于使用和扩...

    3 年前
  • npm 包 @totvsleste/totvs-header 使用教程

    在前端开发中,我们经常需要用到各种第三方包来帮助我们实现一些功能,提高开发效率。其中,npm 是一个十分常用的软件包管理器,可以不仅能够帮助我们管理第三方包的下载和安装,还可以方便地管理包的版本和依赖...

    3 年前
  • npm 包 webdis-wrapper 使用教程

    webdis-wrapper 是一个 npm 包,主要是用于与 Redis 的 HTTP 接口 Webdis 进行交互。通过使用 webdis-wrapper,开发者可以在浏览器和服务器中使用 Red...

    3 年前
  • npm 包 gitbook-plugin-feathers-versions 使用教程

    前言 针对每个 Web 应用中,版本控制是一个必备的功能。在前端开发中,我们可能需要多个版本来管理和调试应用程序。GitBook 是一款流行的开源文档工具,提供了用于创建漂亮文档的各种插件。

    3 年前
  • npm 包 apple-music-jwt 使用教程

    在现今的互联网时代,流媒体服务已经成为人们日常生活中不可或缺的部分。Apple Music 作为其中的佼佼者,提供了海量的音乐资源给全球用户。为了更好的保护用户信息和控制接口访问权限,Apple Mu...

    3 年前
  • npm 包 ai-decode 使用教程

    前言 在前端开发中,我们经常需要使用验证码来增加网站或应用程序的安全性。目前,大多数网站和应用程序都采用图片验证码。但是,由于机器学习等技术的崛起,验证码的安全性受到了挑战。

    3 年前
  • npm 包 merry-ember 使用教程

    前言 在前端开发中,我们常常需要引入一些外部库来辅助我们完成任务。npm 是一个用于管理 JavaScript 库的包管理器,它可以让我们轻松地安装和升级我们所需要的库。

    3 年前
  • npm 包 @ngcommerce/core 使用教程

    前言 在当今互联网高速发展的时代,前端技术也呈现出快速发展的趋势。作为前端开发人员,我们需要不断学习和掌握新的技术,并将其应用到实际项目中去。这篇文章将介绍一个前端技术 npm 包 @ngcommer...

    3 年前
  • npm 包 aek-cli 使用教程

    简介 aek-cli 是基于 webpack 封装的一款前端工程化工具,可快速搭建项目脚手架,支持多种模板和配置,并内置了一些常用的工具库和组件库,可以帮助你快速高效地开发前端项目。

    3 年前
  • npm 包 dpndon 使用教程

    npm 是前端开发必备的工具之一,dpndon 是一款可以帮助我们更好地管理依赖的 npm 包。在本篇文章中,我们将会详细讲解 dpndon 的使用教程,包括安装、常用命令、实践应用等内容。

    3 年前
  • npm 包 ngx-cc-template-bootstrap 使用教程

    在前端开发中,我们经常需要使用各种库、框架和工具包来提高开发效率和功能实现。其中,npm 是一个常用的 JavaScript 包管理工具,可以方便地下载、安装和管理各种开源库和工具包。

    3 年前
  • npm 包 passport-gitlab-token 使用教程

    简介 passport-gitlab-token 是一个基于 Passport.js 的 GitLab token 验证策略。它允许用户通过 GitLab OAuth2.0 协议来验证身份,并从 Gi...

    3 年前
  • npm 包 ionic2-auto-complete-ng5 使用教程

    前言 在现代的Web开发中,前端技术已经成为了一个必不可少的部分。同时,为了更好地提高开发效率,一些优秀的开源 npm 包也逐渐开始流行起来。本文将为大家介绍一个非常好用的 npm 包——ionic2...

    3 年前
  • npm 包 nsp-reporter-checkstyle 使用教程

    简介 nsp-reporter-checkstyle 是一个 npm 包,用于解析 Node Security Project 的扫描结果并转换为 Checkstyle 格式的报告。

    3 年前

相关推荐

    暂无文章