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()
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
connect()
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
-
connectionInfo
-
Renvoie
-
Promise<ConnectionInfo>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
disconnect()
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
flush()
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getConnections()
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
-
connectionInfos
-
Renvoie
-
Promise<ConnectionInfo[]>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
)
Récupère l'état des signaux de contrôle sur une connexion donnée.
Paramètres
-
connectionId
Nombre
ID de la connexion.
-
rappel
fonction facultatif
Le paramètre
callback
se présente comme suit :(signals: DeviceControlSignals) => void
-
signaux
-
Renvoie
-
Promise<DeviceControlSignals>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getDevices()
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
-
ports
-
Renvoie
-
Promise<DeviceInfo[]>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getInfo()
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
-
connectionInfo
-
Renvoie
-
Promise<ConnectionInfo>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
send()
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
-
sendInfo
-
Renvoie
-
Promise<SendInfo>
Chrome 117 ou version ultérieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setBreak()
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setControlSignals()
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.
-
signaux
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setPaused()
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érieureLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
update()
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
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érieureLes 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
-
infos
-
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
-
rappel
fonction
Le paramètre
callback
se présente comme suit :(info: ReceiveErrorInfo) => void
-
infos
-