chrome.serial

Description

Utilisez l'API chrome.serial pour lire et écrire sur un appareil connecté à un port série.

Autorisations

serial

Types

ConnectionInfo

Propriétés

  • bitrate

    number facultatif

    Consultez les ConnectionOptions.bitrate. Ce champ peut être omis ou inexact si un débit non standard est utilisé ou si une erreur s'est produite lors de la requête de l'appareil sous-jacent.

  • bufferSize

    Nombre

    Voir ConnectionOptions.bufferSize

  • connectionId

    Nombre

    ID de la connexion au port série.

  • ctsFlowControl

    booléen facultatif

    Consultez les ConnectionOptions.ctsFlowControl. Ce champ peut être omis si une erreur s'est produite lors de l'interrogation de l'appareil sous-jacent.

  • dataBits

    DataBits facultatif

    Consultez les ConnectionOptions.dataBits. Ce champ peut être omis si une erreur s'est produite lors de l'interrogation de l'appareil sous-jacent.

  • nom

    chaîne

    Voir ConnectionOptions.name

  • parityBit

    ParityBit facultatif

    Consultez les ConnectionOptions.parityBit. Ce champ peut être omis si une erreur s'est produite lors de l'interrogation de l'appareil sous-jacent.

  • mis en veille

    booléen

    Indicateur indiquant si la connexion est bloquée pour déclencher des événements onReceive.

  • SSD

    booléen

    Voir ConnectionOptions.persistent

  • receiveTimeout

    Nombre

    Voir ConnectionOptions.receiveTimeout

  • sendTimeout

    Nombre

    Voir ConnectionOptions.sendTimeout

  • stopBits

    StopBits facultatif

    Consultez les ConnectionOptions.stopBits. Ce champ peut être omis si une erreur s'est produite lors de l'interrogation de l'appareil sous-jacent.

ConnectionOptions

Propriétés

  • bitrate

    number facultatif

    Le débit demandé pour la connexion à ouvrir. Pour une compatibilité avec la plus large gamme de matériel, ce nombre doit correspondre à l'un des débits couramment disponibles, tels que 110, 300, 1 200, 2 400, 4 800, 9 600, 14 400, 19 200, 38 400, 57 600 ou 11 5200. Bien entendu, rien ne garantit que l'appareil connecté au port série sera compatible avec le débit demandé, même si le port lui-même l'est. 9600 sera transmis par défaut.

  • bufferSize

    number facultatif

    Taille de la mémoire tampon utilisée pour recevoir des données. La valeur par défaut est 4 096.

  • ctsFlowControl

    booléen facultatif

    Indicateur indiquant si la gestion de flux matérielle RTS/CTS doit être activée ou non. Valeur par défaut : "false".

  • dataBits

    DataBits facultatif

    "eight" sera transmis par défaut.

  • nom

    chaîne facultatif

    Chaîne définie par l'application à associer à la connexion.

  • parityBit

    ParityBit facultatif

    "no" sera transmis par défaut.

  • SSD

    booléen facultatif

    Indicateur indiquant si la connexion doit être laissée ouverte ou non lorsque l'application est suspendue (voir Gérer le cycle de vie de l'application). La valeur par défaut est "false". Lorsque l'application est chargée, toutes les connexions série précédemment ouvertes avec "persistent=true" peuvent être récupérées avec getConnections.

  • receiveTimeout

    number facultatif

    Durée maximale (en millisecondes) d'attente de nouvelles données avant de générer un événement onReceiveError avec une erreur "timeout". Si la valeur est nulle, aucune erreur de délai avant expiration de la réception n'est générée pour la connexion. La valeur par défaut est 0.

  • sendTimeout

    number facultatif

    Durée maximale (en millisecondes) d'attente pour l'achèvement d'une opération send avant d'appeler le rappel avec une erreur "timeout". Si la valeur est nulle, aucune erreur de délai avant expiration de l'envoi ne sera déclenchée. La valeur par défaut est 0.

  • stopBits

    StopBits facultatif

    "one" sera transmis par défaut.

DataBits

Énumération

"seven"

"eight"

DeviceControlSignals

Propriétés

  • cts

    booléen

    CTS (Clear To Send)

  • dcd

    booléen

    DCD (Data Carrier Detect) ou RLSD (Receive Line Signal/ Detect)

  • dsr

    booléen

    DSR (Data Set Ready)

  • ri

    booléen

    RI (indicateur de sonnerie)

DeviceInfo

Propriétés

  • displayName

    chaîne facultatif

    Nom à afficher lisible par l'humain pour l'appareil sous-jacent, si un tel nom peut être interrogé à partir du pilote hôte.

  • chemin d'accès

    chaîne

    Chemin d'accès système de l'appareil. Il doit être transmis en tant qu'argument path à chrome.serial.connect pour se connecter à cet appareil.

  • productId

    number facultatif

    Un ID produit USB, si un tel ID peut être déterminé pour l'appareil sous-jacent.

  • vendorId

    number facultatif

    Un ID de fournisseur PCI ou USB, le cas échéant, pour l'appareil sous-jacent.

HostControlSignals

Propriétés

  • dtr

    booléen facultatif

    DTR (Data Terminal Ready)

  • rts

    booléen facultatif

    RTS (Request To Send)

ParityBit

Énumération

"no"

"odd"

"even"

ReceiveError

Énumération

"disconnected"
La connexion a été interrompue.

"timeout"
Aucune donnée n'a été reçue pendant receiveTimeout millisecondes.

"device_lost"
L'appareil a probablement été déconnecté de l'hôte.

"break"
L'appareil a détecté une condition de rupture.

"frame_error"
L'appareil a détecté une erreur de cadrage.

"overrun"
Un débordement de la mémoire tampon de caractères s'est produit. Le caractère suivant est perdu.

"buffer_overflow"
Un débordement de tampon d'entrée s'est produit. Il n'y a pas de place dans le tampon d'entrée ou un caractère a été reçu après le caractère de fin de fichier (EOF).

"parity_error"
L'appareil a détecté une erreur de parité.

"system_error"
Une erreur système s'est produite et la connexion est peut-être irrécupérable.

ReceiveErrorInfo

Propriétés

  • connectionId

    Nombre

    Identifiant de la connexion.

  • erreur

    Code d'erreur indiquant le problème.

ReceiveInfo

Propriétés

  • connectionId

    Nombre

    Identifiant de la connexion.

  • données

    ArrayBuffer

    Les données reçues.

SendError

Énumération

"disconnected"
La connexion a été interrompue.

"pending"
Un envoi était déjà en attente.

"timeout"
L'envoi a expiré.

"system_error"
Une erreur système s'est produite et la connexion est peut-être irrécupérable.

SendInfo

Propriétés

  • bytesSent

    Nombre

    Nombre d'octets envoyés.

  • erreur

    SendError facultatif

    Code d'erreur en cas d'erreur.

StopBits

Énumération

"one"

"two"

Méthodes

clearBreak()

Promesse Chrome 45 et versions ultérieures
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

Restaurez la transmission de caractères sur une connexion donnée et placez la ligne de transmission dans un état non-break.

Paramètres

  • connectionId

    Nombre

    ID de la connexion.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

connect()

Promesse
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

Se connecte à un port série donné.

Paramètres

  • chemin d'accès

    chaîne

    Chemin d'accès système du port série à ouvrir.

  • options

    ConnectionOptions facultatif

    Options de configuration du port.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (connectionInfo: ConnectionInfo) => void

Renvoie

  • Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

disconnect()

Promesse
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

Déconnecte d'un port série.

Paramètres

  • connectionId

    Nombre

    Identifiant de la connexion ouverte.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

flush()

Promesse
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

Vide tous les octets des tampons d'entrée et de sortie de la connexion donnée.

Paramètres

  • connectionId

    Nombre

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getConnections()

Promesse
chrome.serial.getConnections(
  callback?: function,
)

Récupère la liste des connexions de port série actuellement ouvertes appartenant à l'application.

Paramètres

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (connectionInfos: ConnectionInfo[]) => void

Renvoie

  • Promise<ConnectionInfo[]>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getControlSignals()

Promesse
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

Récupère l'état des signaux de contrôle sur une connexion donnée.

Paramètres

Renvoie

  • Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getDevices()

Promesse
chrome.serial.getDevices(
  callback?: function,
)

Affiche des informations sur les périphériques série disponibles sur le système. La liste est regénérée à chaque appel de cette méthode.

Paramètres

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (ports: DeviceInfo[]) => void

Renvoie

  • Promise<DeviceInfo[]>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getInfo()

Promesse
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

Récupère l'état d'une connexion donnée.

Paramètres

  • connectionId

    Nombre

    Identifiant de la connexion ouverte.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (connectionInfo: ConnectionInfo) => void

Renvoie

  • Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

send()

Promesse
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

Écrit des données dans la connexion donnée.

Paramètres

  • connectionId

    Nombre

    ID de la connexion.

  • données

    ArrayBuffer

    Données à envoyer.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (sendInfo: SendInfo) => void

Renvoie

  • Promise<SendInfo>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setBreak()

Promesse Chrome 45 et versions ultérieures
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

Suspend la transmission de caractères sur une connexion donnée et place la ligne de transmission en état de rupture jusqu'à l'appel de clearBreak.

Paramètres

  • connectionId

    Nombre

    ID de la connexion.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setControlSignals()

Promesse
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

Définit l'état des signaux de contrôle sur une connexion donnée.

Paramètres

  • connectionId

    Nombre

    ID de la connexion.

  • Ensemble des modifications de signal à envoyer à l'appareil.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setPaused()

Promesse
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

Met en pause ou reprend une connexion ouverte.

Paramètres

  • connectionId

    Nombre

    Identifiant de la connexion ouverte.

  • mis en veille

    booléen

    Indicateur indiquant si la lecture doit être mise en pause ou non.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promise<void>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

update()

Promesse
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

Mettez à jour les paramètres d'option d'une connexion de port série ouverte.

Paramètres

  • connectionId

    Nombre

    Identifiant de la connexion ouverte.

  • Options de configuration du port.

  • rappel

    fonction facultatif

    Le paramètre callback se présente comme suit :

    (result: boolean) => void

    • résultat

      booléen

Renvoie

  • Promise<boolean>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onReceive

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

Événement généré lorsque des données ont été lues à partir de la connexion.

Paramètres

  • rappel

    fonction

    Le paramètre callback se présente comme suit :

    (info: ReceiveInfo) => void

onReceiveError

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

Événement généré lorsqu'une erreur s'est produite alors que l'environnement d'exécution attendait des données sur le port série. Une fois cet événement généré, la connexion peut être définie sur paused. Une erreur "timeout" ne met pas la connexion en pause.

Paramètres