chrome.serial

Beschreibung

Die chrome.serial API zum Lesen und Schreiben von Daten auf einem Gerät verwenden, das an einen seriellen Port angeschlossen ist

Berechtigungen

serial

Typen

ConnectionInfo

Attribute

  • Bitrate

    Zahl optional

    ConnectionOptions.bitrate ansehen. Dieses Feld kann weggelassen werden oder ungenau sein, wenn eine nicht standardmäßige Bitrate verwendet wird oder bei der Abfrage des zugrunde liegenden Geräts ein Fehler aufgetreten ist.

  • bufferSize

    Zahl

    ConnectionOptions.bufferSize ansehen

  • connectionId

    Zahl

    Die ID der Verbindung mit dem seriellen Port.

  • ctsFlowControl

    Boolescher Wert optional

    ConnectionOptions.ctsFlowControl ansehen. Dieses Feld kann weggelassen werden, wenn beim Abfragen des zugrunde liegenden Geräts ein Fehler aufgetreten ist.

  • dataBits

    DataBits optional

    ConnectionOptions.dataBits ansehen. Dieses Feld kann weggelassen werden, wenn beim Abfragen des zugrunde liegenden Geräts ein Fehler aufgetreten ist.

  • Name

    String

    ConnectionOptions.name ansehen

  • parityBit

    ParityBit optional

    ConnectionOptions.parityBit ansehen. Dieses Feld kann weggelassen werden, wenn beim Abfragen des zugrunde liegenden Geräts ein Fehler aufgetreten ist.

  • pausiert

    boolean

    Flag, das angibt, ob die Verbindung daran gehindert wird, onReceive-Ereignisse auszulösen.

  • nichtflüchtige

    boolean

    ConnectionOptions.persistent ansehen

  • receiveTimeout

    Zahl

    ConnectionOptions.receiveTimeout ansehen

  • sendTimeout

    Zahl

    ConnectionOptions.sendTimeout ansehen

  • stopBits

    StopBits optional

    ConnectionOptions.stopBits ansehen. Dieses Feld kann weggelassen werden, wenn beim Abfragen des zugrunde liegenden Geräts ein Fehler aufgetreten ist.

ConnectionOptions

Attribute

  • Bitrate

    Zahl optional

    Die angeforderte Bitrate der zu öffnenden Verbindung. Für eine möglichst breite Palette an Hardware sollte diese Zahl einer der allgemein verfügbaren Bitraten entsprechen, z. B. 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Es gibt natürlich keine Garantie dafür, dass das mit dem seriellen Port verbundene Gerät die angeforderte Bitrate unterstützt, auch wenn der Port selbst diese Bitrate unterstützt. 9600 wird standardmäßig übergeben.

  • bufferSize

    Zahl optional

    Die Größe des Zwischenspeichers, der für den Empfang von Daten verwendet wird. Der Standardwert ist 4.096.

  • ctsFlowControl

    Boolescher Wert optional

    Angabe, ob die Ablaufsteuerung für RTS/CTS-Hardware aktiviert werden soll. Die Standardeinstellung ist "false".

  • dataBits

    DataBits optional

    "eight" wird standardmäßig übergeben.

  • Name

    String optional

    Ein anwendungsdefinierter String, der mit der Verbindung verknüpft werden soll.

  • parityBit

    ParityBit optional

    "no" wird standardmäßig übergeben.

  • nichtflüchtige

    Boolescher Wert optional

    Angabe, ob die Verbindung geöffnet bleiben soll, wenn die Anwendung gesperrt wird (siehe App-Lebenszyklus verwalten). Der Standardwert ist „false“. Wenn die Anwendung geladen wird, können alle zuvor mit persistent=true geöffneten seriellen Verbindungen mit getConnections abgerufen werden.

  • receiveTimeout

    Zahl optional

    Die maximale Zeit (in Millisekunden), die auf neue Daten gewartet werden soll, bevor ein onReceiveError-Ereignis mit einer Zeitüberschreitung ausgelöst wird Fehler. Bei null werden Fehler beim Empfangen von Zeitüberschreitungen für die Verbindung nicht ausgelöst. Die Standardeinstellung ist 0.

  • sendTimeout

    Zahl optional

    Die maximale Zeit (in Millisekunden), die auf den Abschluss eines send-Vorgangs gewartet werden soll, bevor der Callback mit einem „timeout“ aufgerufen wird Fehler. Bei null werden keine Zeitüberschreitungsfehler beim Senden ausgelöst. Die Standardeinstellung ist 0.

  • stopBits

    StopBits optional

    "one" wird standardmäßig übergeben.

DataBits

Enum

"sieben"

"acht"

DeviceControlSignals

Attribute

  • CTR

    boolean

    CTS (Löschen zum Senden).

  • dcd

    boolean

    DCD (Data Carrier Detect) oder RLSD (Receive Line Signal/ Detect).

  • dsr

    boolean

    DSR (Datensatz bereit).

  • Ri

    boolean

    RI (Ring Indicator)

DeviceInfo

Attribute

  • displayName

    String optional

    Ein für Menschen lesbarer Anzeigename für das zugrunde liegende Gerät, falls einer vom Hosttreiber abgefragt werden kann.

  • Pfad

    String

    Der Systempfad des Geräts. Sollte als path-Argument an chrome.serial.connect übergeben werden, um eine Verbindung zu diesem Gerät herzustellen.

  • productId

    Zahl optional

    Eine USB-Produkt-ID, sofern für das zugrunde liegende Gerät eine ermittelt werden kann

  • vendorId

    Zahl optional

    Eine PCI- oder USB-Anbieter-ID, sofern für das zugrunde liegende Gerät eine ermittelt werden kann.

HostControlSignals

Attribute

  • dtr

    Boolescher Wert optional

    DTR (Data Terminal Ready).

  • Aufrufe

    Boolescher Wert optional

    RTS (Sendeanfrage)

ParityBit

Enum

"Nein"

"ungerade"

"gerade"

ReceiveError

Enum

"disconnected"
Die Verbindung wurde getrennt.

"timeout"
Es wurden receiveTimeout Millisekunden lang keine Daten empfangen.

"device_lost"
Das Gerät wurde höchstwahrscheinlich vom Host getrennt.

"break"
Das Gerät hat einen Fehlerzustand erkannt.

"frame_error"
Das Gerät hat einen Framing-Fehler erkannt.

"overrun"
Es ist ein Zeichenpufferüberlauf aufgetreten. Das nächste Zeichen geht verloren.

"buffer_overflow"
Es ist ein Überlauf für den Eingabepuffer aufgetreten. Entweder ist im Eingabezwischenspeicher kein Platz vorhanden oder nach dem EOF-Zeichen (End of File) wurde ein Zeichen empfangen.

"parity_error"
Das Gerät hat einen Paritätsfehler erkannt.

"system_error"
Es ist ein Systemfehler aufgetreten und die Verbindung ist möglicherweise nicht wiederherstellbar.

ReceiveErrorInfo

Attribute

  • connectionId

    Zahl

    Die Verbindungs-ID.

  • Fehler

    Ein Fehlercode, der angibt, was schiefgelaufen ist.

ReceiveInfo

Attribute

  • connectionId

    Zahl

    Die Verbindungs-ID.

  • Daten

    ArrayBuffer

    Die empfangenen Daten.

SendError

Enum

"disconnected"
Die Verbindung wurde getrennt.

"pending"
Es steht bereits eine Übermittlung aus.

"timeout"
Zeitüberschreitung beim Senden

"system_error"
Es ist ein Systemfehler aufgetreten und die Verbindung ist möglicherweise nicht wiederherstellbar.

SendInfo

Attribute

  • bytesSent

    Zahl

    Die Anzahl der gesendeten Byte.

  • Fehler

    SendError: optional

    Ein Fehlercode, wenn ein Fehler aufgetreten ist.

StopBits

Enum

"one"

"two"

Methoden

clearBreak()

<ph type="x-smartling-placeholder"></ph> Versprechen Chrome (ab Version 45)
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

Stellen Sie die Zeichenübertragung für eine bestimmte Verbindung wieder her und versetzen Sie die Übertragungsleitung in einen störungsfreien Zustand.

Parameter

  • connectionId

    Zahl

    Die ID der Verbindung.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

connect()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

Stellt eine Verbindung zu einem bestimmten seriellen Port her.

Parameter

  • Pfad

    String

    Der Systempfad des zu öffnenden seriellen Ports.

  • Optionen

    Optionen für die Portkonfiguration.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (connectionInfo: ConnectionInfo) => void

Gibt Folgendes zurück:

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

disconnect()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

Trennt die Verbindung zum seriellen Port.

Parameter

  • connectionId

    Zahl

    Die ID der geöffneten Verbindung.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

flush()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

Leert alle Byte in den Eingabe- und Ausgabepuffern der angegebenen Verbindung.

Parameter

  • connectionId

    Zahl

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getConnections()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.getConnections(
  callback?: function,
)

Ruft die Liste der aktuell geöffneten Verbindungen des seriellen Ports ab, die der Anwendung gehören.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (connectionInfos: ConnectionInfo[]) => void

Gibt Folgendes zurück:

  • Promise&lt;ConnectionInfo[]&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getControlSignals()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

Ruft den Status der Steuersignale für eine bestimmte Verbindung ab.

Parameter

  • connectionId

    Zahl

    Die ID der Verbindung.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (signals: DeviceControlSignals) => void

Gibt Folgendes zurück:

  • Promise&lt;DeviceControlSignals&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getDevices()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.getDevices(
  callback?: function,
)

Gibt Informationen zu verfügbaren seriellen Geräten im System zurück. Die Liste wird bei jedem Aufruf dieser Methode neu generiert.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (ports: DeviceInfo[]) => void

Gibt Folgendes zurück:

  • Promise&lt;DeviceInfo[]&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

getInfo()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

Ruft den Status einer bestimmten Verbindung ab.

Parameter

  • connectionId

    Zahl

    Die ID der geöffneten Verbindung.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (connectionInfo: ConnectionInfo) => void

Gibt Folgendes zurück:

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

send()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

Schreibt Daten in die angegebene Verbindung.

Parameter

  • connectionId

    Zahl

    Die ID der Verbindung.

  • Daten

    ArrayBuffer

    Die zu sendenden Daten.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (sendInfo: SendInfo) => void

Gibt Folgendes zurück:

  • Promise&lt;SendInfo&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

setBreak()

<ph type="x-smartling-placeholder"></ph> Versprechen Chrome (ab Version 45)
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

Unterbricht die Zeichenübertragung bei einer bestimmten Verbindung und versetzt die Übertragungsleitung in einen Unterbrechungszustand, bis ClearBreak aufgerufen wird.

Parameter

  • connectionId

    Zahl

    Die ID der Verbindung.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

setControlSignals()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

Legt den Status der Steuersignale für eine bestimmte Verbindung fest.

Parameter

  • connectionId

    Zahl

    Die ID der Verbindung.

  • Die Signale, die an das Gerät gesendet werden, ändern sich.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

setPaused()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

Unterbricht eine offene Verbindung oder hebt die Pausierung auf.

Parameter

  • connectionId

    Zahl

    Die ID der geöffneten Verbindung.

  • pausiert

    boolean

    Markierung zur Angabe, ob die Pausierung pausiert oder die Pausierung aufgehoben werden soll.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    () => void

Gibt Folgendes zurück:

  • Versprechen<void>

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

update()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

Aktualisieren Sie die Optionseinstellungen bei einer offenen Verbindung mit dem seriellen Port.

Parameter

  • connectionId

    Zahl

    Die ID der geöffneten Verbindung.

  • Optionen für die Portkonfiguration.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (result: boolean) => void

    • Ergebnis

      boolean

Gibt Folgendes zurück:

  • Promise&lt;boolean&gt;

    Chrome 117 oder höher

    Promise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.

Ereignisse

onReceive

chrome.serial.onReceive.addListener(
  callback: function,
)

Das Ereignis wird ausgelöst, wenn Daten aus der Verbindung gelesen wurden.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus: <ph type="x-smartling-placeholder"></ph>

    (info: ReceiveInfo) => void

onReceiveError

chrome.serial.onReceiveError.addListener(
  callback: function,
)

Das Ereignis wird ausgelöst, wenn ein Fehler aufgetreten ist, während die Laufzeit auf Daten am seriellen Port wartet. Sobald dieses Ereignis ausgelöst wird, kann die Verbindung auf paused gesetzt werden. Der Fehler "timeout" unterbricht die Verbindung nicht.

Parameter