chrome.serial

설명

chrome.serial API를 사용하여 직렬 포트에 연결된 기기에서 읽고 씁니다.

권한

serial

유형

ConnectionInfo

속성

  • bitrate

    번호 선택사항

    ConnectionOptions.bitrate를 참조하세요. 비표준 비트 전송률이 사용 중이거나 기본 기기를 쿼리하는 동안 오류가 발생한 경우 이 필드가 생략되거나 정확하지 않을 수 있습니다.

  • bufferSize

    숫자

    ConnectionOptions.bufferSize 보기

  • connectionId

    숫자

    직렬 포트 연결의 ID입니다.

  • ctsFlowControl

    불리언 선택사항

    ConnectionOptions.ctsFlowControl를 참조하세요. 기본 기기를 쿼리하는 중에 오류가 발생하면 이 필드는 생략될 수 있습니다.

  • dataBits

    DataBits 선택사항

    ConnectionOptions.dataBits를 참조하세요. 기본 기기를 쿼리하는 중에 오류가 발생하면 이 필드는 생략될 수 있습니다.

  • 이름

    문자열

    ConnectionOptions.name 보기

  • parityBit

    ParityBit 선택사항

    ConnectionOptions.parityBit를 참조하세요. 기본 기기를 쿼리하는 중에 오류가 발생하면 이 필드는 생략될 수 있습니다.

  • 일시중지됨

    부울

    연결이 onReceive 이벤트를 실행하지 못하도록 차단되었는지 나타내는 플래그입니다.

  • 영구

    부울

    ConnectionOptions.persistent 보기

  • receiveTimeout

    숫자

    ConnectionOptions.receiveTimeout 보기

  • sendTimeout

    숫자

    ConnectionOptions.sendTimeout 보기

  • stopBits

    StopBits 선택사항

    ConnectionOptions.stopBits를 참조하세요. 기본 기기를 쿼리하는 중에 오류가 발생하면 이 필드는 생략될 수 있습니다.

ConnectionOptions

속성

  • bitrate

    번호 선택사항

    열려는 연결의 요청된 비트 전송률입니다. 다양한 하드웨어와 호환되려면 이 숫자가 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200과 같이 일반적으로 사용 가능한 비트 전송률 중 하나와 일치해야 합니다. 물론 포트 자체가 비트 전송률을 지원하더라도 직렬 포트에 연결된 기기가 요청된 비트 전송률을 지원한다는 보장은 없습니다. 기본적으로 9600이 전달됩니다.

  • bufferSize

    숫자 선택사항

    데이터를 수신하는 데 사용되는 버퍼의 크기. 기본값은 4,096입니다.

  • ctsFlowControl

    불리언 선택사항

    RTS/CTS 하드웨어 흐름 제어를 사용 설정할지 여부를 나타내는 플래그입니다. 기본값은 false입니다.

  • dataBits

    DataBits 선택사항

    "eight"는 기본적으로 전달됩니다.

  • 이름

    문자열(선택사항)

    연결에 연결할 애플리케이션 정의 문자열입니다.

  • parityBit

    ParityBit 선택사항

    기본적으로 "no"이 전달됩니다.

  • 영구

    불리언 선택사항

    애플리케이션이 일시중지될 때 연결을 열어 두어야 하는지 여부를 나타내는 플래그입니다(앱 수명 주기 관리 참고). 기본값은 'false'입니다. 애플리케이션이 로드되면 이전에 persistent=true로 열린 모든 직렬 연결을 getConnections로 가져올 수 있습니다.

  • receiveTimeout

    번호 선택사항

    '시간 초과' 오류가 포함된 onReceiveError 이벤트를 발생시키기 전에 새 데이터를 기다리는 최대 시간(밀리초)입니다. 0인 경우 연결에 수신 시간 초과 오류가 발생하지 않습니다. 기본값은 0입니다.

  • sendTimeout

    숫자 선택사항

    send 작업이 완료될 때까지 기다린 후 '시간 초과' 오류와 함께 콜백을 호출하는 최대 시간(밀리초)입니다. 0이면 전송 제한 시간 오류가 트리거되지 않습니다. 기본값은 0입니다.

  • stopBits

    StopBits 선택사항

    기본적으로 "one"이 전달됩니다.

DataBits

열거형

DeviceControlSignals

속성

  • CTA

    부울

    CTS(전송 준비 완료)

  • dcd

    부울

    DCD(데이터 캐리어 감지) 또는 RLSD(수신선 신호/감지)

  • dsr

    부울

    DSR (데이터 세트 준비)

  • 부울

    RI (벨소리 표시기)를 제어할 수 있습니다.

DeviceInfo

속성

  • displayName

    문자열 선택사항

    호스트 드라이버에서 쿼리할 수 있는 경우 기본 기기의 인간이 읽을 수 있는 표시 이름입니다.

  • 경로

    문자열

    기기의 시스템 경로입니다. 이 기기에 연결하려면 이 주소를 chrome.serial.connectpath 인수로 전달해야 합니다.

  • productId

    번호 선택사항

    기본 기기용으로 확인할 수 있는 경우 USB 제품 ID입니다.

  • vendorId

    숫자 선택사항

    기본 기기에서 식별할 수 있는 경우 PCI 또는 USB 공급업체 ID

HostControlSignals

속성

  • dtr

    불리언 선택사항

    DTR (데이터 터미널 지원)

  • rts

    불리언 선택사항

    RTS(전송 요청)

ParityBit

열거형

'아니요'

'odd'

'even'

ReceiveError

열거형

'연결 끊김'
연결이 끊어졌습니다.

"timeout"
receiveTimeout밀리초 동안 수신된 데이터가 없습니다.

"device_lost"
기기가 호스트에서 연결 해제되었을 가능성이 높습니다.

"break"
기기에서 중단 상태를 감지했습니다.

'frame_error'
기기에서 프레이밍 오류를 감지했습니다.

"overrun"
문자 버퍼 오버런이 발생했습니다. 다음 문자가 손실됩니다.

"buffer_overflow"
입력 버퍼 오버플로가 발생했습니다. 입력 버퍼에 공간이 없거나 파일 끝 (EOF) 문자 뒤에 문자가 수신되었습니다.

'parity_error'
기기에서 패리티 오류를 감지했습니다.

'system_error'
시스템 오류가 발생했으며 연결을 복구할 수 없을 수 있습니다.

ReceiveErrorInfo

속성

  • connectionId

    숫자

    연결 식별자입니다.

  • 오류

    어떤 문제가 발생했는지 나타내는 오류 코드입니다.

ReceiveInfo

속성

  • connectionId

    숫자

    연결 식별자입니다.

  • 데이터

    ArrayBuffer

    수신된 데이터입니다.

SendError

열거형

"disconnection"
연결이 끊어졌습니다.

'대기 중'
이미 전송 대기 중입니다.

"timeout"
전송 시간이 초과되었습니다.

"system_error"
시스템 오류가 발생했습니다. 연결을 복구하지 못할 수 있습니다.

SendInfo

속성

  • bytesSent

    숫자

    전송된 바이트 수입니다.

  • 오류

    SendError 선택사항

    오류가 발생한 경우 오류 코드입니다.

StopBits

열거형

"one"

"two"

메서드

clearBreak()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 45 이상
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

지정된 연결에서 문자 전송을 복원하고 전송선을 비중단 상태로 설정합니다.

매개변수

  • connectionId

    숫자

    연결의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

connect()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

지정된 직렬 포트에 연결합니다.

매개변수

  • 경로

    문자열

    열려야 하는 직렬 포트의 시스템 경로입니다.

  • 옵션

    ConnectionOptions 선택사항

    포트 구성 옵션

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (connectionInfo: ConnectionInfo) => void

반환 값

  • Chrome 117 이상

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼은 콜백을 사용해야 합니다.

disconnect()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

직렬 포트에서 연결을 해제합니다.

매개변수

  • connectionId

    숫자

    열린 연결의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

flush()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

지정된 연결의 입력 및 출력 버퍼에서 모든 바이트를 플러시합니다.

매개변수

  • connectionId

    숫자

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

getConnections()

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

애플리케이션이 소유한 현재 열려 있는 직렬 포트 연결 목록을 검색합니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (connectionInfos: ConnectionInfo[]) => void

반환 값

  • Promise&lt;ConnectionInfo[]&gt;

    Chrome 117 이상

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

getControlSignals()

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

지정된 연결에서 제어 신호의 상태를 검색합니다.

매개변수

반환 값

  • Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

getDevices()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.getDevices(
  callback?: function,
)

시스템에서 사용 가능한 직렬 기기에 관한 정보를 반환합니다. 목록은 이 메서드가 호출될 때마다 다시 생성됩니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (ports: DeviceInfo[]) => void

반환 값

  • Promise&lt;DeviceInfo[]&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼은 콜백을 사용해야 합니다.

getInfo()

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

지정된 연결의 상태를 검색합니다.

매개변수

  • connectionId

    숫자

    열린 연결의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (connectionInfo: ConnectionInfo) => void

반환 값

  • Promise&lt;ConnectionInfo&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼은 콜백을 사용해야 합니다.

send()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

지정된 연결에 데이터를 씁니다.

매개변수

  • connectionId

    숫자

    연결의 ID입니다.

  • 데이터

    ArrayBuffer

    전송할 데이터입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (sendInfo: SendInfo) => void

반환 값

  • Promise<SendInfo>

    Chrome 117 이상

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

setBreak()

Promise Chrome 45 이상
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

지정된 연결에서 문자 전송을 정지하고 clearBreak가 호출될 때까지 전송 라인을 중단 상태로 둡니다.

매개변수

  • connectionId

    숫자

    연결의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

setControlSignals()

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

지정된 연결의 제어 신호 상태를 설정합니다.

매개변수

  • connectionId

    숫자

    연결의 ID입니다.

  • 기기로 전송할 신호 변경사항 집합입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼은 콜백을 사용해야 합니다.

setPaused()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

열린 연결을 일시중지하거나 일시중지 해제합니다.

매개변수

  • connectionId

    숫자

    열린 연결의 ID입니다.

  • 일시중지됨

    부울

    일시중지 또는 일시중지 해제 여부를 나타내는 플래그입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    Chrome 117 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

update()

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

열려 있는 직렬 포트 연결의 옵션 설정을 업데이트합니다.

매개변수

  • connectionId

    숫자

    열린 연결의 ID입니다.

  • 포트 구성 옵션

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: boolean) => void

    • 결과

      부울

반환 값

  • Promise&lt;boolean&gt;

    Chrome 117 이상

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼은 콜백을 사용해야 합니다.

이벤트

onReceive

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

연결에서 데이터를 읽을 때 이벤트가 발생합니다.

매개변수

  • 콜백

    함수

    callback 매개변수는 다음과 같습니다.

    (info: ReceiveInfo) => void

onReceiveError

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

런타임이 직렬 포트에서 데이터를 기다리는 중에 오류가 발생하면 발생하는 이벤트입니다. 이 이벤트가 발생하면 연결이 paused로 설정될 수 있습니다. "timeout" 오류는 연결을 일시중지하지 않습니다.

매개변수