Description
Utilisez l'API chrome.serial pour lire et écrire des données sur un appareil connecté à un port série.
Autorisations
serialDisponibilité
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
nombre
Voir les
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 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 et ne peut pas déclencher d'événements onReceive.
-
persistant
booléen
Voir les
ConnectionOptions.persistent -
receiveTimeout
nombre
Voir les
ConnectionOptions.receiveTimeout -
sendTimeout
nombre
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.
9600sera 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 facultatif
Chaîne définie par l'application à associer à la connexion.
-
parityBit
ParityBit (facultatif)
"no"sera transmis par défaut. -
persistant
booléen facultatif
Indicateur indiquant si la connexion doit rester ouverte 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
Délai maximal (en millisecondes) d'attente de nouvelles données avant de déclencher un événement
onReceiveErroravec 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
sendse 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"
"huit"
DeviceControlSignals
Propriétés
-
cts
booléen
CTS (Clear To Send, prêt à envoyer).
-
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 facultatif
Nom à afficher lisible par l'humain 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.connectpour se connecter à cet appareil. -
productId
number facultatif
ID produit USB, si un ID peut être déterminé pour l'appareil sous-jacent.
-
vendorId
number facultatif
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
nombre
Identifiant de la connexion.
-
erreur
Code d'erreur indiquant ce qui s'est mal passé.
ReceiveInfo
Propriétés
-
connectionId
nombre
Identifiant de la connexion.
-
données
ArrayBuffer
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
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,
): 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
nombre
Identifiant de la connexion.
-
callback
fonction facultative
Le paramètre
callbackse 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
fonction facultative
Le paramètre
callbackse 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>
Déconnecte d'un port série.
Paramètres
-
connectionId
nombre
ID de la connexion ouverte.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
-
callback
fonction facultative
Le paramètre
callbackse 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
fonction facultative
Le paramètre
callbackse 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
nombre
Identifiant de la connexion.
-
callback
fonction facultative
Le paramètre
callbackse 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
fonction facultative
Le paramètre
callbackse 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
nombre
ID de la connexion ouverte.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
Identifiant de la connexion.
-
données
ArrayBuffer
Données à envoyer.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
Identifiant de la connexion.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
Identifiant de la connexion.
-
signaux
Ensemble de modifications du signal à envoyer à l'appareil.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
ID de la connexion ouverte.
-
mis en veille
booléen
Indicateur permettant d'indiquer s'il faut suspendre ou réactiver.
-
callback
fonction facultative
Le paramètre
callbackse 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
nombre
ID de la connexion ouverte.
-
options
Options de configuration du port.
-
callback
fonction facultative
Le paramètre
callbackse 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
callbackse présente comme suit :(info: ReceiveInfo) => void
-
info
-
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
callbackse présente comme suit :(info: ReceiveErrorInfo) => void
-
info
-