chrome.serial

Deskripsi

Gunakan chrome.serial API untuk membaca dan menulis ke perangkat yang terhubung ke port serial.

Izin

serial

Jenis

ConnectionInfo

Properti

  • bitrate

    angka opsional

    Lihat ConnectionOptions.bitrate. Kolom ini dapat dihilangkan atau tidak akurat jika kecepatan bit non-standar sedang digunakan, atau jika terjadi error saat melakukan kueri ke perangkat pokok.

  • bufferSize

    angka

    Lihat ConnectionOptions.bufferSize

  • connectionId

    angka

    ID koneksi port serial.

  • ctsFlowControl

    boolean opsional

    Lihat ConnectionOptions.ctsFlowControl. Kolom ini dapat dihilangkan jika terjadi error saat membuat kueri perangkat pokok.

  • dataBits

    DataBits opsional

    Lihat ConnectionOptions.dataBits. Kolom ini dapat dihilangkan jika terjadi error saat membuat kueri perangkat pokok.

  • nama

    string

    Lihat ConnectionOptions.name

  • parityBit

    ParityBit opsional

    Lihat ConnectionOptions.parityBit. Kolom ini dapat dihilangkan jika terjadi error saat membuat kueri perangkat pokok.

  • dijeda

    boolean

    Tanda yang menunjukkan apakah koneksi diblokir agar tidak mengaktifkan peristiwa onReceive.

  • persisten

    boolean

    Lihat ConnectionOptions.persistent

  • receiveTimeout

    angka

    Lihat ConnectionOptions.receiveTimeout

  • sendTimeout

    angka

    Lihat ConnectionOptions.sendTimeout

  • stopBits

    StopBits opsional

    Lihat ConnectionOptions.stopBits. Kolom ini dapat dihilangkan jika terjadi error saat membuat kueri perangkat pokok.

ConnectionOptions

Properti

  • bitrate

    angka opsional

    Kecepatan bit koneksi yang diminta untuk dibuka. Untuk kompatibilitas dengan rentang hardware terluas, angka ini harus sesuai dengan salah satu kecepatan bit yang tersedia secara umum, seperti 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Tentu saja, tidak ada jaminan bahwa perangkat yang terhubung ke port serial akan mendukung kecepatan bit yang diminta, meskipun port itu sendiri mendukung kecepatan bit tersebut. 9600 akan diteruskan secara default.

  • bufferSize

    angka opsional

    Ukuran buffer yang digunakan untuk menerima data. Nilai defaultnya adalah 4096.

  • ctsFlowControl

    boolean opsional

    Tanda yang menunjukkan apakah akan mengaktifkan kontrol alur hardware RTS/CTS atau tidak. Nilai defaultnya adalah false (salah).

  • dataBits

    DataBits opsional

    "eight" akan diteruskan secara default.

  • nama

    string opsional

    String yang ditentukan aplikasi untuk dikaitkan dengan koneksi.

  • parityBit

    ParityBit opsional

    "no" akan diteruskan secara default.

  • persisten

    boolean opsional

    Tanda yang menunjukkan apakah koneksi harus dibiarkan terbuka atau tidak saat aplikasi ditangguhkan (lihat Mengelola Siklus Proses Aplikasi). Nilai defaultnya adalah "false". Saat aplikasi dimuat, setiap koneksi serial yang sebelumnya dibuka dengan persistent=true dapat diambil dengan getConnections.

  • receiveTimeout

    angka opsional

    Jumlah waktu maksimum (dalam milidetik) untuk menunggu data baru sebelum memunculkan peristiwa onReceiveError dengan "waktu tunggu" {i>error<i}. Jika nol, error waktu tunggu tidak akan dimunculkan untuk koneksi. Default-nya adalah 0.

  • sendTimeout

    angka opsional

    Jumlah waktu maksimum (dalam milidetik) untuk menunggu operasi send selesai sebelum memanggil callback dengan "waktu tunggu" {i>error<i}. Jika nol, error waktu tunggu pengiriman tidak akan dipicu. Default-nya adalah 0.

  • stopBits

    StopBits opsional

    "one" akan diteruskan secara default.

DataBits

Enum

"tujuh"

"delapan"

DeviceControlSignals

Properti

  • ct

    boolean

    CTS (Clear To Send).

  • dcd

    boolean

    DCD (Deteksi Operator Data) atau RLSD (Sinyal Terima/ Deteksi Line).

  • dsr

    boolean

    DSR (Set Data Siap).

  • ri

    boolean

    RI (Indikator Dering).

DeviceInfo

Properti

  • Nama Tampilan

    string opsional

    Nama tampilan yang dapat dibaca manusia untuk perangkat dasar jika ada yang dapat dikueri dari driver host.

  • jalur

    string

    Jalur sistem perangkat. Ini harus diteruskan sebagai argumen path ke chrome.serial.connect agar dapat terhubung ke perangkat ini.

  • productId

    angka opsional

    ID produk USB jika dapat ditentukan untuk perangkat yang mendasarinya.

  • vendorId

    angka opsional

    ID vendor PCI atau USB jika dapat ditentukan untuk perangkat dasar.

HostControlSignals

Properti

  • dtr

    boolean opsional

    DTR (Terminal Data Siap Pakai).

  • RT

    boolean opsional

    RTS (Permintaan untuk Mengirim).

ParityBit

Enum

"tidak"

"ganjil"

"merata"

ReceiveError

Enum

"terputus"
Koneksi terputus.

"timeout"
Tidak ada data yang diterima selama receiveTimeout milidetik.

"device_lost"
Perangkat kemungkinan besar terputus dari host.

"break"
Perangkat mendeteksi kondisi kerusakan.

&quot;frame_error&quot;
Perangkat mendeteksi error penyesuaian frame.

"overrun"
Terjadi overrun buffer karakter. Karakter berikutnya akan hilang.

&quot;buffer_overflow&quot;
Terjadi luapan buffer input. Tidak ada ruang di buffer input, atau karakter diterima setelah karakter akhir file (EOF).

&quot;parity_error&quot;
Perangkat mendeteksi error paritas.

"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.

ReceiveErrorInfo

Properti

  • connectionId

    angka

    ID koneksi.

  • error

    Kode error yang menunjukkan masalah yang terjadi.

ReceiveInfo

Properti

  • connectionId

    angka

    ID koneksi.

  • data

    ArrayBuffer

    Data yang diterima.

SendError

Enum

"terputus"
Koneksi terputus.

"pending"
Pengiriman telah tertunda.

"timeout"
Waktu pengiriman habis.

"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.

SendInfo

Properti

  • bytesSent

    angka

    Jumlah byte yang dikirim.

  • error

    SendError opsional

    Kode error jika terjadi error.

StopBits

Enum

"satu"

"dua"

Metode

clearBreak()

Janji Chrome 45 dan yang lebih baru
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

Memulihkan transmisi karakter pada koneksi tertentu dan menempatkan jalur transmisi dalam kondisi bukan terputus.

Parameter

  • connectionId

    angka

    ID koneksi.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

connect()

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

Menghubungkan ke port serial tertentu.

Parameter

  • jalur

    string

    Jalur sistem port serial yang akan dibuka.

  • opsi

    Opsi konfigurasi port.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (connectionInfo: ConnectionInfo) => void

Hasil

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

disconnect()

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

Terputus dari port serial.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

flush()

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

Menghapus semua byte di buffer input dan output koneksi yang diberikan.

Parameter

  • connectionId

    angka

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getConnections()

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

Mengambil daftar koneksi port serial yang saat ini dibuka yang dimiliki oleh aplikasi.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (connectionInfos: ConnectionInfo[]) => void

Hasil

  • Promise&lt;ConnectionInfo[]&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getControlSignals()

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

Mengambil status sinyal kontrol pada koneksi tertentu.

Parameter

Hasil

  • Promise&lt;DeviceControlSignals&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getDevices()

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

Menampilkan informasi tentang perangkat serial yang tersedia di sistem. Daftar dibuat ulang setiap kali metode ini dipanggil.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (ports: DeviceInfo[]) => void

Hasil

  • Promise&lt;DeviceInfo[]&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getInfo()

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

Mengambil status koneksi tertentu.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (connectionInfo: ConnectionInfo) => void

Hasil

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

send()

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

Menulis data ke koneksi yang diberikan.

Parameter

  • connectionId

    angka

    ID koneksi.

  • data

    ArrayBuffer

    Data yang akan dikirim.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (sendInfo: SendInfo) => void

Hasil

  • Promise&lt;SendInfo&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

setBreak()

Janji Chrome 45 dan yang lebih baru
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

Menangguhkan transmisi karakter pada koneksi tertentu dan menempatkan jalur transmisi dalam status jeda hingga clearBreak dipanggil.

Parameter

  • connectionId

    angka

    ID koneksi.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

setControlSignals()

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

Menetapkan status sinyal kontrol pada koneksi tertentu.

Parameter

  • connectionId

    angka

    ID koneksi.

  • Serangkaian perubahan sinyal yang akan dikirim ke perangkat.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

setPaused()

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

Menjeda atau membatalkan jeda koneksi terbuka.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • dijeda

    boolean

    Tanda untuk menunjukkan apakah akan menjeda atau membatalkan jeda.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    () => void

Hasil

  • Janji<void>

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

update()

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

Perbarui setelan opsi pada koneksi port serial yang terbuka.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • Opsi konfigurasi port.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise&lt;boolean&gt;

    Chrome 117 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

Acara

onReceive

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

Peristiwa yang dipicu saat data telah dibaca dari koneksi.

Parameter

onReceiveError

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

Peristiwa muncul saat terjadi error saat runtime menunggu data di port serial. Setelah peristiwa ini dipicu, koneksi dapat disetel ke paused. Error "timeout" tidak menjeda koneksi.

Parameter