Description
Utilisez l'API chrome.serial
pour lire et écrire des données 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 binaire non standard est utilisé ou si une erreur s'est produite lors de l'interrogation de l'appareil sous-jacent. -
bufferSize
Total
Voir les
ConnectionOptions.bufferSize
-
connectionId
Total
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 les
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 les
ConnectionOptions.persistent
-
receiveTimeout
Total
Voir les
ConnectionOptions.receiveTimeout
-
sendTimeout
Total
Voir les
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
Débit binaire 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 binaires couramment disponibles, tels que 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Bien sûr, rien ne garantit que l'appareil connecté au port série prendra en charge le débit binaire demandé, même si le port lui-même le prend en charge.
9600
sera transmis par défaut. -
bufferSize
number facultatif
Taille du tampon utilisé pour recevoir les données. La valeur par défaut est 4 096.
-
ctsFlowControl
booléen facultatif
Indique s'il faut activer ou non le contrôle du flux matériel RTS/CTS. Valeur par défaut : "false".
-
dataBits
DataBits facultatif
"eight"
sera transmis par défaut. -
nom
chaîne facultative
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 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
number facultatif
Délai maximal (en millisecondes) d'attente de nouvelles données avant de générer un événement
onReceiveError
avec une erreur "timeout" (délai dépassé). Si la valeur est zéro, aucune erreur de délai avant expiration de réception ne sera générée pour la connexion. La valeur par défaut est 0. -
sendTimeout
number facultatif
Délai maximal (en millisecondes) d'attente pour qu'une opération
send
se termine avant d'appeler le rappel avec une erreur de "timeout". Si la valeur est zéro, les erreurs de délai avant expiration de l'envoi ne seront pas déclenchées. 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, prêt à émettre).
-
dcd
booléen
DCD (Data Carrier Detect) ou RLSD (Receive Line Signal/ Detect).
-
dsr
booléen
DSR (ensemble de données prêt).
-
ri
booléen
RI (indicateur de sonnerie).
DeviceInfo
Propriétés
-
displayName
chaîne facultative
Nom à afficher lisible pour l'appareil sous-jacent, si un nom peut être demandé au 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
ID de produit USB, si un ID peut être déterminé pour l'appareil sous-jacent.
-
vendorId
number facultatif
Un ID de fournisseur PCI ou USB, si l'un d'eux peut être déterminé pour l'appareil sous-jacent.
HostControlSignals
Propriétés
-
dtr
booléen facultatif
DTR (Data Terminal Ready, terminal de données prêt)
-
rts
booléen facultatif
RTS (Request To Send, Demande d'envoi)
ParityBit
Énumération
"non"
"odd"
"even"
ReceiveError
Énumération
"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 condition d'arrêt.
"frame_error"
L'appareil a détecté une erreur de cadrage.
Dépassement de mémoire tampon
Un dépassement de mémoire tampon de caractères s'est produit. Le caractère suivant est perdu.
"buffer_overflow"
Un dépassement 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 peut être irrécupérable.
ReceiveErrorInfo
Propriétés
-
connectionId
Total
Identifiant de la connexion.
-
erreur
Code d'erreur indiquant ce qui s'est mal passé.
ReceiveInfo
Propriétés
-
connectionId
Total
Identifiant de la connexion.
-
données
ArrayBuffer
Les données reçues.
SendError
Énumération
"disconnected"
La connexion a été déconnectée.
En attente
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 peut être irrécupérable.
SendInfo
Propriétés
-
bytesSent
Total
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,
): Promise<boolean>
Restaure la transmission de caractères sur une connexion donnée et place la ligne de transmission dans un état sans interruption.
Paramètres
-
connectionId
Total
Identifiant de la connexion.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
): Promise<ConnectionInfo>
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.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
Renvoie
-
Promise<ConnectionInfo>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
): Promise<boolean>
Se déconnecte d'un port série.
Paramètres
-
connectionId
Total
ID de la connexion ouverte.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
): Promise<boolean>
Vide tous les octets des tampons d'entrée et de sortie de la connexion donnée.
Paramètres
-
connectionId
Total
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getConnections()
chrome.serial.getConnections(
callback?: function,
): Promise<ConnectionInfo[]>
Récupère la liste des connexions de port série actuellement ouvertes appartenant à l'application.
Paramètres
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(connectionInfos: ConnectionInfo[]) => void
-
connectionInfos
-
Renvoie
-
Promise<ConnectionInfo[]>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
): Promise<DeviceControlSignals>
Récupère l'état des signaux de contrôle sur une connexion donnée.
Paramètres
-
connectionId
Total
Identifiant de la connexion.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(signals: DeviceControlSignals) => void
-
signaux
-
Renvoie
-
Promise<DeviceControlSignals>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getDevices()
chrome.serial.getDevices(
callback?: function,
): Promise<DeviceInfo[]>
Renvoie des informations sur les périphériques série disponibles sur le système. La liste est régénérée chaque fois que cette méthode est appelée.
Paramètres
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(ports: DeviceInfo[]) => void
-
ports
-
Renvoie
-
Promise<DeviceInfo[]>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
): Promise<ConnectionInfo>
Récupère l'état d'une connexion donnée.
Paramètres
-
connectionId
Total
ID de la connexion ouverte.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
Renvoie
-
Promise<ConnectionInfo>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
): Promise<SendInfo>
Écrit des données dans la connexion spécifiée.
Paramètres
-
connectionId
Total
Identifiant de la connexion.
-
données
ArrayBuffer
Données à envoyer.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(sendInfo: SendInfo) => void
-
sendInfo
-
Renvoie
-
Promise<SendInfo>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
Suspend la transmission de caractères sur une connexion donnée et place la ligne de transmission dans un état d'arrêt jusqu'à ce que clearBreak soit appelé.
Paramètres
-
connectionId
Total
Identifiant de la connexion.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
): Promise<boolean>
Définit l'état des signaux de contrôle sur une connexion donnée.
Paramètres
-
connectionId
Total
Identifiant de la connexion.
-
signaux
Ensemble de modifications du signal à envoyer à l'appareil.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
): Promise<void>
Met en pause ou réactive une connexion ouverte.
Paramètres
-
connectionId
Total
ID de la connexion ouverte.
-
mis en veille
booléen
Indicateur permettant d'indiquer s'il faut suspendre ou réactiver.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :() => void
Renvoie
-
Promise<void>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
): Promise<boolean>
Mettez à jour les paramètres d'option sur une connexion de port série ouverte.
Paramètres
-
connectionId
Total
ID de la connexion ouverte.
-
options
Options de configuration du port.
-
callback
function facultatif
Le paramètre
callback
se présente comme suit :(result: boolean) => void
-
résultat
booléen
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et les 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 des données ont été lues à partir de la connexion.
Paramètres
-
callback
fonction
Le paramètre
callback
se présente comme suit :(info: ReceiveInfo) => void
-
infos
-
onReceiveError
chrome.serial.onReceiveError.addListener(
callback: function,
)
Événement déclenché lorsqu'une erreur s'est produite pendant que le runtime 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 met pas en pause la connexion.
Paramètres
-
callback
fonction
Le paramètre
callback
se présente comme suit :(info: ReceiveErrorInfo) => void
-
infos
-