chrome.serial

Descrizione

Usa l'API chrome.serial per leggere e scrivere su un dispositivo connesso a una porta seriale.

Autorizzazioni

serial

Tipi

ConnectionInfo

Proprietà

  • bitrate

    numero facoltativo

    Leggi i ConnectionOptions.bitrate. Questo campo potrebbe essere omesso o non preciso se viene utilizzata una velocità in bit non standard o se si è verificato un errore durante l'esecuzione di query sul dispositivo sottostante.

  • bufferSize

    numero

    Visualizza ConnectionOptions.bufferSize

  • connectionId

    numero

    L'ID della connessione alla porta seriale.

  • ctsFlowControl

    booleano facoltativo

    Leggi i ConnectionOptions.ctsFlowControl. Questo campo potrebbe essere omesso se si è verificato un errore durante l'esecuzione di una query sul dispositivo sottostante.

  • dataBits

    DataBits facoltativo

    Leggi i ConnectionOptions.dataBits. Questo campo potrebbe essere omesso se si è verificato un errore durante l'esecuzione di una query sul dispositivo sottostante.

  • nome

    stringa

    Visualizza ConnectionOptions.name

  • parityBit

    ParityBit facoltativo

    Leggi i ConnectionOptions.parityBit. Questo campo potrebbe essere omesso se si è verificato un errore durante l'esecuzione di una query sul dispositivo sottostante.

  • in pausa

    boolean

    Flag che indica se la connessione è bloccata dall'attivazione di eventi onRicevi.

  • permanente

    boolean

    Visualizza ConnectionOptions.persistent

  • receiveTimeout

    numero

    Visualizza ConnectionOptions.receiveTimeout

  • sendTimeout

    numero

    Visualizza ConnectionOptions.sendTimeout

  • stopBits

    StopBits facoltativo

    Leggi i ConnectionOptions.stopBits. Questo campo potrebbe essere omesso se si è verificato un errore durante l'esecuzione di una query sul dispositivo sottostante.

ConnectionOptions

Proprietà

  • bitrate

    numero facoltativo

    La velocità in bit richiesta della connessione da aprire. Per garantire la compatibilità con la più ampia gamma di hardware, questo numero dovrebbe corrispondere a una delle velocità in bit comunemente disponibili, ad esempio 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Non c'è alcuna garanzia, ovviamente, che il dispositivo collegato alla porta seriale supporterà la velocità in bit richiesta, anche se la porta stessa supporta questa velocità. 9600 verrà passato per impostazione predefinita.

  • bufferSize

    numero facoltativo

    La dimensione del buffer utilizzato per ricevere i dati. Il valore predefinito è 4096.

  • ctsFlowControl

    booleano facoltativo

    Flag che indica se abilitare o meno il controllo del flusso hardware RTS/CTS. Il valore predefinito è false.

  • dataBits

    DataBits facoltativo

    "eight" verrà passato per impostazione predefinita.

  • nome

    stringa facoltativo

    Una stringa definita dall'applicazione da associare alla connessione.

  • parityBit

    ParityBit facoltativo

    "no" verrà passato per impostazione predefinita.

  • permanente

    booleano facoltativo

    Flag che indica se la connessione deve essere lasciata aperta o meno quando l'applicazione viene sospesa (vedi Gestione del ciclo di vita delle app). Il valore predefinito è "false". Una volta caricata l'applicazione, tutte le connessioni seriali aperte in precedenza con permanente=true possono essere recuperate con getConnections.

  • receiveTimeout

    numero facoltativo

    Il tempo massimo (in millisecondi) di attesa per i nuovi dati prima di generare un evento onReceiveError con un errore di "timeout". Se il valore è pari a zero, gli errori di timeout di ricezione non verranno segnalati per la connessione. Il valore predefinito è 0.

  • sendTimeout

    numero facoltativo

    Il tempo massimo (in millisecondi) di attesa per il completamento di un'operazione send prima della chiamata del callback con un errore di "timeout". Se il valore è pari a zero, gli errori di timeout dell'invio non verranno attivati. Il valore predefinito è 0.

  • stopBits

    StopBits facoltativo

    "one" verrà passato per impostazione predefinita.

DataBits

Enum

DeviceControlSignals

Proprietà

  • cts

    boolean

    CTS (Cancella per inviare).

  • DDC

    boolean

    DCD (Data Carrier Detect) o RLSD (Ricevi Line Signal/ Detect).

  • DSR

    boolean

    DSR (Set di dati pronto).

  • ri

    boolean

    RI (Indicatore della suoneria).

DeviceInfo

Proprietà

  • displayName

    stringa facoltativo

    Un nome visualizzato leggibile per il dispositivo sottostante, nel caso in cui sia possibile eseguire una query dal driver host.

  • percorso

    stringa

    Il percorso di sistema del dispositivo. Questo deve essere passato come argomento path a chrome.serial.connect per la connessione a questo dispositivo.

  • productId

    numero facoltativo

    Un ID prodotto USB, se è possibile determinarne uno per il dispositivo sottostante.

  • vendorId

    numero facoltativo

    Un ID fornitore PCI o USB, se è possibile determinarne uno per il dispositivo sottostante.

HostControlSignals

Proprietà

  • DR

    booleano facoltativo

    DTR (Data Terminal Ready).

  • rt

    booleano facoltativo

    RTS (Richiesta di invio).

ParityBit

Enum

"no"

ReceiveError

Enum

"disconnesso"
La connessione è stata disconnessa.

"timeout"
Nessun dato ricevuto per receiveTimeout millisecondi.

"device_lost"
È molto probabile che il dispositivo si sia disconnesso dall'host.

"break"
Il dispositivo ha rilevato una condizione di interruzione.

"frame_error"
Il dispositivo ha rilevato un errore di inquadratura.

"overrun"
Si è verificato un superamento del buffer dei caratteri. Il carattere successivo è andato perso.

"buffer_overflow"
Si è verificato un overflow del buffer di input. Non c'è spazio nel buffer di input oppure è stato ricevuto un carattere dopo il carattere di fine file (EOF).

"parity_error"
Il dispositivo ha rilevato un errore di parità.

"system_error"
Si è verificato un errore di sistema e la connessione potrebbe non essere recuperabile.

ReceiveErrorInfo

Proprietà

  • connectionId

    numero

    L'identificatore della connessione.

  • errore

    Un codice di errore che indica il problema.

ReceiveInfo

Proprietà

  • connectionId

    numero

    L'identificatore della connessione.

  • dati

    ArrayBuffer

    I dati ricevuti.

SendError

Enum

"disconnesso"
La connessione è stata disconnessa.

"pending"
Un invio era già in attesa.

"timeout"
Timeout dell'invio.

"system_error"
Si è verificato un errore di sistema e la connessione potrebbe non essere recuperabile.

SendInfo

Proprietà

  • bytesSent

    numero

    Il numero di byte inviati.

  • errore

    SendError facoltativo

    Un codice di errore se si è verificato un errore.

StopBits

Enum

Metodi

clearBreak()

Promessa Chrome 45 e versioni successive
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

Ripristina la trasmissione dei caratteri su una determinata connessione e imposta la linea di trasmissione in uno stato di interruzione.

Parametri

  • connectionId

    numero

    L'ID della connessione.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

connect()

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

Si connette a una determinata porta seriale.

Parametri

  • percorso

    stringa

    Il percorso di sistema della porta seriale da aprire.

  • opzioni

    ConnectionOptions facoltativo

    Opzioni di configurazione della porta.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (connectionInfo: ConnectionInfo)=>void

Ritorni

  • Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

disconnect()

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

Si disconnette da una porta seriale.

Parametri

  • connectionId

    numero

    L'ID della connessione aperta.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

flush()

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

Elimina tutti i byte nei buffer di input e di output della connessione specificata.

Parametri

  • connectionId

    numero

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getConnections()

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

Recupera l'elenco delle connessioni di porte seriali attualmente aperte di proprietà dell'applicazione.

Parametri

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (connectionInfos: ConnectionInfo[])=>void

Ritorni

  • Promise<ConnectionInfo[]>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getControlSignals()

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

Recupera lo stato degli indicatori di controllo su una determinata connessione.

Parametri

Ritorni

  • Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getDevices()

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

Restituisce informazioni sui dispositivi seriali disponibili nel sistema. L'elenco viene rigenerato ogni volta che viene richiamato questo metodo.

Parametri

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (ports: DeviceInfo[])=>void

Ritorni

  • Promise<DeviceInfo[]>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

getInfo()

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

Recupera lo stato di una determinata connessione.

Parametri

  • connectionId

    numero

    L'ID della connessione aperta.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (connectionInfo: ConnectionInfo)=>void

Ritorni

  • Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

send()

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

Scrive i dati nella connessione specificata.

Parametri

  • connectionId

    numero

    L'ID della connessione.

  • dati

    ArrayBuffer

    I dati da inviare.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (sendInfo: SendInfo)=>void

Ritorni

  • Promise<SendInfo>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

setBreak()

Promessa Chrome 45 e versioni successive
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

Sospende la trasmissione dei caratteri su una determinata connessione e mette la linea di trasmissione in uno stato di interruzione fino a quando non viene richiamata clearBreak.

Parametri

  • connectionId

    numero

    L'ID della connessione.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

setControlSignals()

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

Imposta lo stato degli indicatori di controllo su una determinata connessione.

Parametri

  • connectionId

    numero

    L'ID della connessione.

  • indicatore

    L'insieme di segnali cambia da inviare al dispositivo.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

setPaused()

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

Mette in pausa o riattiva una connessione aperta.

Parametri

  • connectionId

    numero

    L'ID della connessione aperta.

  • in pausa

    boolean

    Flag per indicare se mettere in pausa o riattivare.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    ()=>void

Ritorni

  • Promise<void>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

update()

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

Aggiorna le impostazioni delle opzioni su una connessione con porta seriale aperta.

Parametri

  • connectionId

    numero

    L'ID della connessione aperta.

  • Opzioni di configurazione della porta.

  • callback

    funzione facoltativa

    Il parametro callback ha il seguente aspetto:

    (result: boolean)=>void

    • risultato

      boolean

Ritorni

  • Promise<boolean>

    Chrome 117 e versioni successive

    Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.

Eventi

onReceive

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

Evento generato quando i dati sono stati letti dalla connessione.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (info: ReceiveInfo)=>void

onReceiveError

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

Evento generato quando si è verificato un errore mentre il runtime era in attesa di dati sulla porta seriale. Dopo aver attivato questo evento, la connessione potrebbe essere impostata su paused. Un errore "timeout" non interrompe la connessione.

Parametri