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

    numéro facultatif

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

  • bufferSize

    number

    Voir ConnectionOptions.bufferSize

  • connectionId

    number

    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.

  • name

    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

    boolean

    Indique si le déclenchement d'événements onReceive par la connexion est bloqué.

  • SSD

    boolean

    Voir ConnectionOptions.persistent

  • receiveTimeout

    number

    Voir ConnectionOptions.receiveTimeout

  • sendTimeout

    number

    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

    numéro facultatif

    Débit demandé pour la connexion à ouvrir. Pour assurer la 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, 115 200. Bien entendu, il n'y a aucune garantie que l'appareil connecté au port série prendra en charge le débit demandé, même si le port lui-même le prend en charge. 9600 est transmis par défaut.

  • bufferSize

    numéro facultatif

    Taille du tampon utilisé pour recevoir des données. La valeur par défaut est 4096.

  • ctsFlowControl

    Booléen facultatif

    Indique s'il faut ou non activer le contrôle de flux matériel RTS/CTS. Valeur par défaut : "false".

  • dataBits

    DataBits facultatif

    "eight" est transmis par défaut.

  • name

    string facultatif

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

  • parityBit

    ParityBit facultatif

    "no" est transmis par défaut.

  • SSD

    Booléen facultatif

    Indique si la connexion doit rester ouverte lorsque l'application est suspendue (voir Gérer le cycle de vie des applications). 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

    numéro facultatif

    Délai maximal (en millisecondes) d'attente de nouvelles données avant de déclencher un événement onReceiveError avec une erreur "timeout". Si la valeur est égale à zéro, les erreurs d'expiration du délai de réception ne sont pas générées pour la connexion. La valeur par défaut est 0.

  • sendTimeout

    numéro facultatif

    Délai maximal d'attente (en millisecondes) pour qu'une opération send soit terminée avant d'appeler le rappel avec une erreur "timeout". Si la valeur est zéro, les erreurs d'expiration du délai d'envoi ne seront pas déclenchées. La valeur par défaut est 0.

  • stopBits

    StopBits facultatif

    "one" est transmis par défaut.

DataBits

Enum

"seven"

DeviceControlSignals

Propriétés

  • cts

    boolean

    CTS (Effacer pour envoyer).

  • dcd

    boolean

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

  • DSR

    boolean

    DSR (Data Set Ready)

  • Riy

    boolean

    RI (indicateur de sonnerie).

DeviceInfo

Propriétés

  • displayName

    string facultatif

    Nom à afficher lisible pour l'appareil sous-jacent s'il 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 permettre la connexion à cet appareil.

  • productId

    numéro facultatif

    ID produit USB, le cas échéant, pour l'appareil sous-jacent.

  • vendorId

    numéro facultatif

    ID de fournisseur PCI ou USB, le cas échéant.

HostControlSignals

Propriétés

  • dtr

    Booléen facultatif

    DTR (Data Terminal Ready).

  • RTS

    Booléen facultatif

    RTS (Request To Send) (Demande d'envoi)

ParityBit

Enum

"no"

"odd"

"even"

ReceiveError

Enum

"disconnected"
La connexion a été déconnectée.

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

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

"break"
L'appareil a détecté une panne.

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

"overrun"
Un dépassement du tampon de caractères s'est produit. Le personnage suivant est perdu.

"buffer_overflow"
Un dépassement de tampon d'entrée s'est produit. Soit il n'y a pas de place dans le tampon d'entrée, soit 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 pourrait être irrécupérable.

ReceiveErrorInfo

Propriétés

  • connectionId

    number

    Identifiant de connexion.

  • error

    Un code d'erreur indiquant le problème

ReceiveInfo

Propriétés

  • connectionId

    number

    Identifiant de connexion.

  • data

    ArrayBuffer

    Données reçues.

SendError

Enum

"disconnected"
La connexion a été déconnectée.

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

"timeout"
Le délai d'envoi a expiré.

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

SendInfo

Propriétés

  • bytesSent

    number

    Nombre d'octets envoyés.

  • error

    SendError facultatif

    Un code d'erreur si une erreur s'est produite.

StopBits

Enum

"one"

"two"

Méthodes

clearBreak()

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

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

Paramètres

  • connectionId

    number

    ID de la connexion.

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 des ports

  • rappel

    fonction facultative

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

    (connectionInfo: ConnectionInfo)=>void

Renvoie

  • Chrome 117 et versions ultérieures

    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,
)

Se déconnecte d'un port série.

Paramètres

  • connectionId

    number

    ID de la connexion ouverte.

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 dans les tampons d'entrée et de sortie de la connexion donnée.

Paramètres

  • connectionId

    number

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 du port série actuellement ouvertes appartenant à l'application.

Paramètres

  • rappel

    fonction facultative

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

    (connectionInfos: ConnectionInfo[])=>void

Renvoie

  • Promise<ConnectionInfo[]>

    Chrome 117 et versions ultérieures

    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 et versions ultérieures

    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 appareils série disponibles sur le système. La liste est à nouveau générée à chaque appel de cette méthode.

Paramètres

  • rappel

    fonction facultative

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

    (ports: DeviceInfo[])=>void

Renvoie

  • Promise<DeviceInfo[]>

    Chrome 117 et versions ultérieures

    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

    number

    ID de la connexion ouverte.

  • rappel

    fonction facultative

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

    (connectionInfo: ConnectionInfo)=>void

Renvoie

  • Chrome 117 et versions ultérieures

    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 sur la connexion donnée.

Paramètres

  • connectionId

    number

    ID de la connexion.

  • data

    ArrayBuffer

    Données à envoyer.

  • rappel

    fonction facultative

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

    (sendInfo: SendInfo)=>void

Renvoie

  • Promise<SendInfo>

    Chrome 117 et versions ultérieures

    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 coupure jusqu'à l'appel de la fonction clearBreak.

Paramètres

  • connectionId

    number

    ID de la connexion.

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 commande sur une connexion donnée.

Paramètres

  • connectionId

    number

    ID de la connexion.

  • L'ensemble des signaux à envoyer à l'appareil change.

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 réactive une connexion ouverte.

Paramètres

  • connectionId

    number

    ID de la connexion ouverte.

  • mis en veille

    boolean

    Indicateur permettant d'indiquer si l'élément doit être mis en veille ou réactivé.

  • rappel

    fonction facultative

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

    ()=>void

Renvoie

  • Promise<void>

    Chrome 117 et versions ultérieures

    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 des options sur une connexion au port série ouverte.

Paramètres

  • connectionId

    number

    ID de la connexion ouverte.

  • Options de configuration des ports

  • rappel

    fonction facultative

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

    (result: boolean)=>void

    • résultat

      boolean

Renvoie

  • Promise<boolean>

    Chrome 117 et versions ultérieures

    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 déclenché lorsque les données ont été lues à partir de la connexion.

Paramètres

  • rappel

    function

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

    (info: ReceiveInfo)=>void

onReceiveError

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

Événement déclenché 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 déclenché, la connexion peut être définie sur paused. Une erreur "timeout" ne suspend pas la connexion.

Paramètres