Не удалось открыть последовательный порт в Windows 10 с использованием библиотеки serialport узла - PullRequest
0 голосов
/ 21 февраля 2020

Я использую электронное приложение с angular и библиотеку serialport для узла для взаимодействия с моим устройством usbmodem. Порт создается, но не открывается в windows 10. Он прекрасно работает в ОС Ma c.

main.ts

import { app, BrowserWindow, ipcMain } from 'electron';
import * as path from 'path';
import * as url from 'url';
import * as SerialPort from 'serialport';
import * as ReadLine from '@serialport/parser-readline';
import * as fs from 'fs';

let win: BrowserWindow;
let port: SerialPort;
let parser;
let readLine;
const upgradeFileUrl = path.join(__dirname, `/../../dist/electron-app/assets/firmware_v4.bfu`);

app.on('ready', createWindow);

app.on('activate', () => {
  if (win === null) {
    createWindow();
  }
});

function createWindow() {
  win = new BrowserWindow({
    width: 1281,
    height: 800,
    minWidth: 1281,
    minHeight: 800,
    icon: path.join(__dirname, '/../../src/assets/icons/png/64x64.png'),
    webPreferences: { nodeIntegration: true }
  });

  win.loadURL(
    url.format({
      pathname: path.join(__dirname, `/../../dist/electron-app/index.html`),
      protocol: 'file:',
      slashes: true
    })
  );

  win.webContents.openDevTools();
  port = new SerialPort('/dev/tty.usbmodem*****', {
    baudRate: 115200
  }).on('error' , (err) => {
    console.log('Error opening port', err);
  });
  port.on('open', openCallback);
  readLine = new ReadLine({delimiter: '\r\n'});
  parser = port.pipe(readLine);
  parser.on('data', readCallback);


  win.on('closed', () => {
    win = null;
  });
}

function openCallback() {
  console.log('port open');
}
function readCallback(message) {
  console.log('Data coming', message);
  win.webContents.send('dataComing', message);
}

Ошибка: Ошибка открытия порта [Ошибка: открытие /dev/tty.usbmodem***** : Неизвестный код ошибки 3]

Может кто-нибудь помочь мне исправить это? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...