Описание
Используйте API chrome.serial
для чтения и записи на устройство, подключенное к последовательному порту.
Разрешения
serial
Типы
ConnectionInfo
Характеристики
- битрейт
номер необязательно
См.
ConnectionOptions.bitrate
. Это поле может быть опущено или может быть неточным, если используется нестандартная скорость передачи данных или если при запросе к базовому устройству произошла ошибка. - размер буфера
число
См.
ConnectionOptions.bufferSize
. - идентификатор соединения
число
Идентификатор подключения последовательного порта.
- ctsFlowControl
логическое значение необязательно
См.
ConnectionOptions.ctsFlowControl
. Это поле можно опустить, если при запросе базового устройства произошла ошибка. - биты данных
Биты данных необязательно
См.
ConnectionOptions.dataBits
. Это поле можно опустить, если при запросе базового устройства произошла ошибка. - имя
нить
См.
ConnectionOptions.name
- бит четности
Бит четности необязательно
См.
ConnectionOptions.parityBit
. Это поле можно опустить, если при запросе базового устройства произошла ошибка. - остановился
логическое значение
Флаг, указывающий, заблокировано ли соединение для запуска событий onReceive.
- настойчивый
логическое значение
См.
ConnectionOptions.persistent
. - getTimeout
число
См.
ConnectionOptions.receiveTimeout
. - ОтправитьТаймаут
число
См.
ConnectionOptions.sendTimeout
. - стопбиты
Стопбиты опционально
См.
ConnectionOptions.stopBits
. Это поле можно опустить, если при запросе базового устройства произошла ошибка.
ConnectionOptions
Характеристики
- битрейт
номер необязательно
Запрошенный битрейт открываемого соединения. Для совместимости с самым широким спектром оборудования это число должно соответствовать одному из общедоступных битрейтов, например 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Конечно, устройство, подключенное к последовательному порту, будет поддерживать запрошенный битрейт, даже если сам порт поддерживает этот битрейт. По умолчанию будет передано
9600
. - размер буфера
номер необязательно
Размер буфера, используемого для приема данных. Значение по умолчанию — 4096.
- ctsFlowControl
логическое значение необязательно
Флаг, указывающий, включать или нет аппаратное управление потоком данных RTS/CTS. По умолчанию ложь.
- биты данных
Биты данных необязательно
"eight"
будет передано по умолчанию. - имя
строка необязательна
Определяемая приложением строка, связываемая с соединением.
- бит четности
Бит четности необязательно
"no"
будет передано по умолчанию. - настойчивый
логическое значение необязательно
Флаг, указывающий, следует ли оставлять соединение открытым, когда приложение приостановлено (см. Управление жизненным циклом приложения ). Значение по умолчанию — «ложь». Когда приложение загружено, любые последовательные соединения, ранее открытые с параметром persist=true, можно получить с помощью
getConnections
. - getTimeout
номер необязательно
Максимальное время (в миллисекундах) ожидания новых данных перед тем, как вызвать событие
onReceiveError
с ошибкой «тайм-аут». Если ноль, ошибки тайм-аута приема не будут возникать для соединения. По умолчанию 0. - ОтправитьТаймаут
номер необязательно
Максимальное время (в миллисекундах) ожидания завершения операции
send
перед вызовом обратного вызова с ошибкой «тайм-аут». Если ноль, ошибки тайм-аута отправки не возникнут. По умолчанию 0. - стопбиты
Стопбиты опционально
"one"
будет передан по умолчанию.
DataBits
Перечисление
"Семь"
"восемь"
DeviceControlSignals
Характеристики
- КТ
логическое значение
CTS (Очистить для отправки).
- DCD
логическое значение
DCD (обнаружение носителя данных) или RLSD (прием линейного сигнала/обнаружение).
- дср
логическое значение
DSR (набор данных готов).
- ри
логическое значение
РИ (Кольцевой индикатор).
DeviceInfo
Характеристики
- отображаемое имя
строка необязательна
Удобочитаемое отображаемое имя базового устройства, если его можно запросить у драйвера хоста.
- путь
нить
Системный путь устройства. Это значение следует передать в качестве аргумента
path
вchrome.serial.connect
для подключения к этому устройству. - идентификатор продукта
номер необязательно
Идентификатор USB-продукта, если его можно определить для базового устройства.
- идентификатор поставщика
номер необязательно
Идентификатор поставщика PCI или USB, если его можно определить для базового устройства.
HostControlSignals
Характеристики
- ДТР
логическое значение необязательно
DTR (терминал данных готов).
- ртс
логическое значение необязательно
РТС (запрос на отправку).
ParityBit
Перечисление
"нет"
"странный"
"даже"
ReceiveError
Перечисление
"отключен"
Соединение было прервано.
"тайм-аут"
В течение миллисекунд receiveTimeout
данные не были получены.
"device_lost"
Скорее всего устройство было отключено от хоста.
"перерыв"
Устройство обнаружило неисправность.
"frame_error"
Устройство обнаружило ошибку кадрирования.
"перегнать"
Произошло переполнение буфера символов. Следующий персонаж потерян.
"buffer_overflow"
Произошло переполнение входного буфера. Во входном буфере либо нет места, либо символ был получен после символа конца файла (EOF).
"parity_error"
Устройство обнаружило ошибку четности.
"системная_ошибка"
Произошла системная ошибка, и соединение может оказаться невосстановимым.
ReceiveErrorInfo
Характеристики
- идентификатор соединения
число
Идентификатор соединения.
- ошибка
Код ошибки, указывающий, что пошло не так.
ReceiveInfo
Характеристики
- идентификатор соединения
число
Идентификатор соединения.
- данные
МассивБуфер
Данные получены.
SendError
Перечисление
"отключен"
Соединение было прервано.
"в ожидании"
Отправка уже ожидалась.
"тайм-аут"
Время отправки истекло.
"системная_ошибка"
Произошла системная ошибка, и соединение может оказаться невосстановимым.
SendInfo
Характеристики
- байтОтправлено
число
Количество отправленных байт.
- ошибка
ОтправитьОшибку необязательно
Код ошибки, если произошла ошибка.
StopBits
Перечисление
"один"
"два"
Методы
clearBreak()
chrome.serial.clearBreak(
connectionId: number,
callback?: function,
)
Восстановите передачу символов по данному соединению и переведите линию передачи в неразрывное состояние.
Параметры
- идентификатор соединения
число
Идентификатор соединения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
)
Подключается к заданному последовательному порту.
Параметры
- путь
нить
Системный путь последовательного порта, который нужно открыть.
- параметры
Параметры подключения необязательно
Параметры конфигурации порта.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(connectionInfo: ConnectionInfo) => void
- ConnectionInfo
Возврат
Обещание< ConnectionInfo >
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
)
Отключается от последовательного порта.
Параметры
- идентификатор соединения
число
Идентификатор открытого соединения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
)
Сбрасывает все байты во входном и выходном буферах данного соединения.
Параметры
- идентификатор соединения
число
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getConnections()
chrome.serial.getConnections(
callback?: function,
)
Получает список открытых в данный момент подключений последовательного порта, принадлежащих приложению.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(connectionInfos: ConnectionInfo[]) => void
- ConnectionInfos
Возврат
Обещание< ConnectionInfo []>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
)
Получает состояние сигналов управления по данному соединению.
Параметры
- идентификатор соединения
число
Идентификатор соединения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(signals: DeviceControlSignals) => void
- сигналы
Возврат
Обещание < DeviceControlSignals >
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getDevices()
chrome.serial.getDevices(
callback?: function,
)
Возвращает информацию о доступных последовательных устройствах в системе. Список обновляется каждый раз при вызове этого метода.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(ports: DeviceInfo[]) => void
- порты
Возврат
Обещание< DeviceInfo []>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
)
Получает состояние данного соединения.
Параметры
- идентификатор соединения
число
Идентификатор открытого соединения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(connectionInfo: ConnectionInfo) => void
- ConnectionInfo
Возврат
Обещание< ConnectionInfo >
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
)
Записывает данные в данное соединение.
Параметры
- идентификатор соединения
число
Идентификатор соединения.
- данные
МассивБуфер
Данные для отправки.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(sendInfo: SendInfo) => void
- sendInfo
Возврат
Обещание <SendInfo>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
)
Приостанавливает передачу символов по данному соединению и переводит линию передачи в состояние разрыва до тех пор, пока не будет вызвана функция ClearBreak.
Параметры
- идентификатор соединения
число
Идентификатор соединения.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
)
Устанавливает состояние сигналов управления для данного соединения.
Параметры
- идентификатор соединения
число
Идентификатор соединения.
- сигналы
Набор сигналов меняется для отправки на устройство.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
)
Приостанавливает или возобновляет открытое соединение.
Параметры
- идентификатор соединения
число
Идентификатор открытого соединения.
- остановился
логическое значение
Флаг, указывающий, следует ли приостановить или возобновить паузу.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
)
Обновите настройки опций при открытом соединении через последовательный порт.
Параметры
- идентификатор соединения
число
Идентификатор открытого соединения.
- параметры
Параметры конфигурации порта.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(result: boolean) => void
- результат
логическое значение
Возврат
Обещание <логическое значение>
Хром 117+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
События
onReceive
chrome.serial.onReceive.addListener(
callback: function,
)
Событие возникает, когда данные были прочитаны из соединения.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: ReceiveInfo) => void
- информация
onReceiveError
chrome.serial.onReceiveError.addListener(
callback: function,
)
Событие возникает, когда возникает ошибка, пока среда выполнения ожидает данных на последовательном порту. Как только это событие возникнет, соединение может быть paused
. Ошибка "timeout"
не приостанавливает соединение.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: ReceiveErrorInfo) => void
- информация