Node.js 串口技术
串口是一种通过串行方式逐位传输数据的通信技术,用于计算机与外部设备(如 Arduino、传感器、PLC 等)的数据交换。
核心概念
| 参数 | 说明 |
|---|---|
| 波特率(baudRate) | 数据传输速率,如 9600、115200 |
| 数据位(dataBits) | 每帧数据位数,通常 8 |
| 停止位(stopBits) | 帧结束标志,通常 1 |
| 校验位(parity) | 错误检测,none/even/odd |
安装
bash
npm install serialport基础用法
js
import { SerialPort } from 'serialport'
// 打开串口
const port = new SerialPort({
path: 'COM3', // Windows: COM3, Linux: /dev/ttyUSB0
baudRate: 9600,
})
// 接收数据
port.on('data', (data) => {
console.log('收到:', data.toString())
})
// 发送数据
port.write('Hello Device')
// 错误处理
port.on('error', (err) => console.error(err))列出可用串口
js
import { SerialPort } from 'serialport'
const ports = await SerialPort.list()
console.log(ports) // [{ path: 'COM3', manufacturer: '...', ... }]典型场景
- 与 Arduino/ESP32 等单片机通信
- 工业设备数据采集(PLC/传感器)
- 串口调试工具开发