簡體   English   中英

node.js 到串行端口的路徑

[英]node.js path to serialport

對於我的 node.js 服務器的這部分代碼

var SerialPort = require("serialport");
var port = new SerialPort("/dev/tty-usbserial1", {});

它使用https://github.com/EmergingTechnologyAdvisors/node-serialport庫。

我怎么知道我的串行端口的這條路徑?

我在這個問題中嘗試了以前的答案,但它們在最新版本的串行端口(2020 年 9 月)中不起作用。 我們需要在 promise 方法中使用serialport.list()函數,如下所示:

導入串口包

const SerialPort = require('serialport')

承諾方式

SerialPort.list().then(ports => {
    ports.forEach(function(port) {
        console.log(port.path)
    })
})

我希望這會幫助你解決這個問題

要查找系統上可用 COM 端口的路徑,可以使用列表方法。

我建議省略任何具有未定義制造商屬性的東西,因為這些通常似乎是內置藍牙等。

示例:

const SerialPort = require('serialport') 
SerialPort.list((err, ports) => {
    console.log(ports)                
})

文檔: https : //node-serialport.github.io/node-serialport/SerialPort.html#.list

由於在過去 3 年的 JS 中有些事情發生了變化,我想更新完全 NotLizards 的答案。 正如文檔所說,為了運行此代碼,您需要使用Promises

const SerialPort = require('serialport')
SerialPort.list().then(
  ports => ports.forEach(console.log),
  err => console.error(err)
)

我從中獲取此代碼的頁面: https : //serialport.io/docs/api-stream#serialportlist

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM