chrome.serial

Deskripsi

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

Izin

serial

Jenis

ConnectionInfo

Properti

  • bitrate

    nomor opsional

    Lihat ConnectionOptions.bitrate. Kolom ini dapat dihilangkan atau tidak akurat jika bitrate non-standar digunakan, atau jika terjadi error saat mengkueri 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 yang mendasarinya.

  • dataBits

    DataBits opsional

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

  • nama

    string

    Lihat ConnectionOptions.name

  • parityBit

    ParityBit opsional

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

  • dijeda

    boolean

    Tanda yang menunjukkan apakah koneksi diblokir agar tidak memicu 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 yang mendasarinya.

ConnectionOptions

Properti

  • bitrate

    nomor opsional

    Bitrate yang diminta untuk koneksi yang akan dibuka. Agar kompatibel dengan berbagai jenis hardware, angka ini harus cocok dengan salah satu bitrate yang umum tersedia, 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

    nomor 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

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

  • receiveTimeout

    nomor opsional

    Jumlah waktu maksimum (dalam milidetik) untuk menunggu data baru sebelum memunculkan peristiwa onReceiveError dengan error "waktu tunggu habis". Jika nol, error waktu tunggu penerimaan tidak akan muncul untuk koneksi. Default-nya adalah 0.

  • sendTimeout

    nomor opsional

    Jumlah waktu maksimum (dalam milidetik) untuk menunggu operasi send selesai sebelum memanggil callback dengan error "waktu tunggu habis". 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

  • cts

    boolean

    CTS (Clear To Send).

  • dcd

    boolean

    DCD (Data Carrier Detect) atau RLSD (Receive Line Signal/ Detect).

  • dsr

    boolean

    DSR (Set Data Siap).

  • ri

    boolean

    RI (Ring Indicator).

DeviceInfo

Properti

  • Nama Tampilan

    string opsional

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

  • jalur

    string

    Jalur sistem perangkat. Nilai ini harus diteruskan sebagai argumen path ke chrome.serial.connect untuk terhubung ke perangkat ini.

  • productId

    nomor opsional

    ID produk USB jika dapat ditentukan untuk perangkat pokok.

  • vendorId

    nomor opsional

    ID vendor PCI atau USB jika dapat ditentukan untuk perangkat yang mendasarinya.

HostControlSignals

Properti

  • dtr

    boolean opsional

    DTR (Data Terminal Ready).

  • rts

    boolean opsional

    RTS (Request To Send).

ParityBit

Enum

"tidak"

"ganjil"

"even"

ReceiveError

Enum

"disconnected"
Koneksi terputus.

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

"device_lost"
Perangkat kemungkinan terputus dari host.

"break"
Perangkat mendeteksi kondisi istirahat.

"frame_error"
Perangkat mendeteksi error pembingkaian.

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

"buffer_overflow"
Terjadi overflow buffer input. Tidak ada ruang di buffer input, atau karakter diterima setelah karakter akhir file (EOF).

"parity_error"
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 apa yang salah.

ReceiveInfo

Properti

  • connectionId

    angka

    ID koneksi.

  • data

    ArrayBuffer

    Data diterima.

SendError

Enum

"disconnected"
Koneksi terputus.

"pending"
Pengiriman sudah tertunda.

"timeout"
Pengiriman kehabisan waktu.

"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

"one"

"dua"

Metode

clearBreak()

Promise Chrome 45+
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

Memulihkan transmisi karakter pada koneksi tertentu dan menempatkan jalur transmisi dalam status non-break.

Parameter

  • connectionId

    angka

    ID koneksi.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

connect()

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

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:

    (connectionInfo: ConnectionInfo) => void

Hasil

  • Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

disconnect()

Janji
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

Memutus koneksi dari port serial.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

flush()

Janji
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

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

Parameter

  • connectionId

    angka

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getConnections()

Janji
chrome.serial.getConnections(
  callback?: function,
)
: Promise<ConnectionInfo[]>

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

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (connectionInfos: ConnectionInfo[]) => void

Hasil

  • Promise<ConnectionInfo[]>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getControlSignals()

Janji
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)
: Promise<DeviceControlSignals>

Mengambil status sinyal kontrol pada koneksi tertentu.

Parameter

Hasil

  • Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getDevices()

Janji
chrome.serial.getDevices(
  callback?: function,
)
: Promise<DeviceInfo[]>

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:

    (ports: DeviceInfo[]) => void

Hasil

  • Promise<DeviceInfo[]>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getInfo()

Janji
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)
: Promise<ConnectionInfo>

Mengambil status koneksi tertentu.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (connectionInfo: ConnectionInfo) => void

Hasil

  • Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

send()

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

Menulis data ke koneksi yang diberikan.

Parameter

  • connectionId

    angka

    ID koneksi.

  • data

    ArrayBuffer

    Data yang akan dikirim.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (sendInfo: SendInfo) => void

Hasil

  • Promise<SendInfo>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

setBreak()

Promise Chrome 45+
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)
: Promise<boolean>

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:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

setControlSignals()

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

Menetapkan status sinyal kontrol pada koneksi tertentu.

Parameter

  • connectionId

    angka

    ID koneksi.

  • Kumpulan perubahan sinyal yang akan dikirim ke perangkat.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

setPaused()

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

Menjeda atau melanjutkan koneksi yang terbuka.

Parameter

  • connectionId

    angka

    ID koneksi yang dibuka.

  • dijeda

    boolean

    Tanda untuk menunjukkan apakah akan dijeda atau dilanjutkan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

update()

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

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:

    (result: boolean) => void

    • hasil

      boolean

Hasil

  • Promise<boolean>

    Chrome 117+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

Acara

onReceive

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

Peristiwa yang dimunculkan saat data telah dibaca dari koneksi.

Parameter

onReceiveError

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

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

Parameter