nodejs使用serialport进行串口通讯
内容目录

网上的代码跑起来有问题,所以摸了下坑,简单写一下吧。

安装

直接使用npm install serialport,就可以安装成功。

使用

获取当前串口列表

const { autoDetect } = require("@serialport/bindings-cpp");
const Binding = autoDetect();
Binding.list().then((ports) => {
  console.log(ports);
});

结果如下

[
  {
    path: 'COM3',
    manufacturer: 'Silicon Labs',
    serialNumber: '0001',
    pnpId: 'USB\\VID_10C4&PID_EA60\\0001',
    locationId: 'Port_#0003.Hub_#0001',
    friendlyName: 'Silicon Labs CP210x USB to UART Bridge (COM3)',
    vendorId: '10C4',
    productId: 'EA60'
  }
]

这个也是网上搜到的都是错的问题,已经不能直接用SerialPort.list()

打开串口

const { SerialPort } = require("serialport");

const port = new SerialPort({
  path: "COM3", // 串口路径
  baudRate: 115200 //波特率
});

port.on("open", () => {
  console.log("Serial port opened");
  // 这里就可以写你的发送内容了
});

port.on("data", (data) => {
  // 这里的data是串口响应的内容 类型是ArrayBuffer
  console.log(data.toString('hex')); // 将数据转换为十六进制字符串以便查看
})

发送数据

比如你要发送的数据是 00 22 00 22 00

 port.write([0x00, 0x22, 0x00, 0x22], (err) => {
    if (err) {
      console.error("Error writing to serial port:", err);
    } else {
      console.log("Message sent");
    }
  });

发送数据后,你可以通过.on("data")事件监听器来接收串口的响应数据。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇