文档:https://serialport.io/docs/10.x.x/api-serialport
$ npm install serialport
// 10 以上版本需要 {} 引入
const { SerialPort } = require('serialport')
// 获取所有串口
SerialPort.list().then(res => {
console.log(res)
}).catch(err => {
console.log(err)
})
const data = {
path: '串口名称', // COM5(例)
baudRate: 9600, // 比特率
dataBits: 7, //数据位
parity: 'even', //奇偶校验(10.5.0生效,10.0.0以下版本不生效好像)
stopBits: 1, //停止位
flowControl: false,
autoOpen: false //自动打开
}
const port = new SerialPort(data)
// 打开串口
port.open((err) => {
if (err) {
console.log(err)
} else {
console.log(success)
}
})
// 数据监听
port.on('data', (data) => {
console.log(data)
})
// 错误监听
port.on('error', (error) => {
console.log(error)
})
// 向串口写入数据
port.write('写入内容', (err,res) => {
if (err) {
console.log(err)
} else {
console.log(res)
}
})
// 关闭串口
port.close((err,res) => {
if (err) {
console.log(err)
} else {
console.log(res)
}
})