설명
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
번호 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 기본값은 4096입니다.
-
ctsFlowControl
불리언 선택사항
RTS/CTS 하드웨어 흐름 제어를 사용 설정할지 여부를 나타내는 플래그입니다. 기본값은 false입니다.
-
dataBits
DataBits 선택사항
"eight"
이 기본적으로 전달됩니다. -
이름
문자열 선택사항
연결과 연결할 애플리케이션 정의 문자열입니다.
-
parityBit
ParityBit 선택사항
"no"
이 기본적으로 전달됩니다. -
영구
불리언 선택사항
애플리케이션이 일시 중지될 때 연결을 열어 두어야 하는지 여부를 나타내는 플래그입니다 (앱 수명 주기 관리 참고). 기본값은 'false'입니다. 애플리케이션이 로드되면 persistent=true로 이전에 열린 직렬 연결을
getConnections
로 가져올 수 있습니다. -
receiveTimeout
번호 선택사항
'timeout' 오류와 함께
onReceiveError
이벤트를 발생시키기 전에 새 데이터를 기다리는 최대 시간 (밀리초)입니다. 0인 경우 연결에 대해 수신 시간 초과 오류가 발생하지 않습니다. 기본값은 0입니다. -
sendTimeout
번호 선택사항
'timeout' 오류와 함께 콜백을 호출하기 전에
send
작업이 완료될 때까지 기다리는 최대 시간 (밀리초)입니다. 0이면 전송 시간 초과 오류가 트리거되지 않습니다. 기본값은 0입니다. -
stopBits
StopBits 선택사항
"one"
이 기본적으로 전달됩니다.
DataBits
열거형
"seven"
"eight"
DeviceControlSignals
속성
-
cts
부울
CTS (Clear To Send)
-
dcd
부울
DCD (데이터 캐리어 감지) 또는 RLSD (수신 회선 신호/ 감지)입니다.
-
dsr
부울
DSR (데이터 세트 준비됨)
-
ri
부울
RI (벨소리 표시기)
DeviceInfo
속성
-
displayName
문자열 선택사항
호스트 드라이버에서 쿼리할 수 있는 경우 기본 기기의 사람이 읽을 수 있는 표시 이름입니다.
-
경로
문자열
기기의 시스템 경로입니다. 이 기기에 연결하려면
path
인수로chrome.serial.connect
에 전달해야 합니다. -
productId
번호 선택사항
기본 기기에 대해 확인할 수 있는 경우 USB 제품 ID입니다.
-
vendorId
번호 선택사항
기본 기기에 대해 결정할 수 있는 경우 PCI 또는 USB 공급업체 ID입니다.
HostControlSignals
속성
-
dtr
불리언 선택사항
DTR (데이터 터미널 준비)
-
rts
불리언 선택사항
RTS (발송 요청)
ParityBit
열거형
"no"
"odd"
"even"
ReceiveError
열거형
'disconnected'
연결이 해제되었습니다.
'timeout'
receiveTimeout
밀리초 동안 데이터가 수신되지 않았습니다.
'device_lost'
기기가 호스트에서 연결 해제되었을 가능성이 높습니다.
'break'
기기에서 중단 조건을 감지했습니다.
'frame_error'
기기에서 프레이밍 오류를 감지했습니다.
'오버런'
문자 버퍼 오버런이 발생했습니다. 다음 문자가 손실됩니다.
'buffer_overflow'
입력 버퍼 오버플로가 발생했습니다. 입력 버퍼에 공간이 없거나 파일 끝 (EOF) 문자 뒤에 문자가 수신되었습니다.
'parity_error'
기기에서 패리티 오류를 감지했습니다.
'system_error'
시스템 오류가 발생했으며 연결을 복구할 수 없을 수 있습니다.
ReceiveErrorInfo
속성
-
connectionId
숫자
연결 식별자입니다.
-
오류
문제를 나타내는 오류 코드입니다.
ReceiveInfo
속성
-
connectionId
숫자
연결 식별자입니다.
-
데이터
ArrayBuffer
수신된 데이터입니다.
SendError
열거형
'disconnected'
연결이 해제되었습니다.
'대기 중'
전송이 이미 대기 중입니다.
'timeout'
전송 시간이 초과되었습니다.
'system_error'
시스템 오류가 발생했으며 연결을 복구할 수 없을 수 있습니다.
SendInfo
속성
-
bytesSent
숫자
전송된 바이트 수입니다.
-
오류
SendError 선택사항
오류가 발생한 경우 오류 코드입니다.
StopBits
열거형
"one"
"two"
메서드
clearBreak()
chrome.serial.clearBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
지정된 연결에서 문자 전송을 복원하고 전송 라인을 중단되지 않은 상태로 배치합니다.
매개변수
-
connectionId
숫자
연결의 ID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
): Promise<ConnectionInfo>
지정된 직렬 포트에 연결합니다.
매개변수
-
경로
문자열
열 직렬 포트의 시스템 경로입니다.
-
옵션
ConnectionOptions 선택사항
포트 구성 옵션입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
반환 값
-
Promise<ConnectionInfo>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
): Promise<boolean>
직렬 포트에서 연결을 해제합니다.
매개변수
-
connectionId
숫자
열린 연결의 ID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
): Promise<boolean>
지정된 연결의 입력 및 출력 버퍼에 있는 모든 바이트를 플러시합니다.
매개변수
-
connectionId
숫자
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getConnections()
chrome.serial.getConnections(
callback?: function,
): Promise<ConnectionInfo[]>
애플리케이션이 소유한 현재 열려 있는 직렬 포트 연결 목록을 가져옵니다.
매개변수
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(connectionInfos: ConnectionInfo[]) => void
-
connectionInfos
-
반환 값
-
Promise<ConnectionInfo[]>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
): Promise<DeviceControlSignals>
지정된 연결의 제어 신호 상태를 가져옵니다.
매개변수
-
connectionId
숫자
연결의 ID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(signals: DeviceControlSignals) => void
반환 값
-
Promise<DeviceControlSignals>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getDevices()
chrome.serial.getDevices(
callback?: function,
): Promise<DeviceInfo[]>
시스템에서 사용 가능한 직렬 기기에 관한 정보를 반환합니다. 이 메서드가 호출될 때마다 목록이 재생성됩니다.
매개변수
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(ports: DeviceInfo[]) => void
-
ports
-
반환 값
-
Promise<DeviceInfo[]>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
): Promise<ConnectionInfo>
지정된 연결의 상태를 가져옵니다.
매개변수
-
connectionId
숫자
열린 연결의 ID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
반환 값
-
Promise<ConnectionInfo>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
): Promise<SendInfo>
지정된 연결에 데이터를 씁니다.
매개변수
-
connectionId
숫자
연결의 ID입니다.
-
데이터
ArrayBuffer
전송할 데이터입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(sendInfo: SendInfo) => void
-
sendInfo
-
반환 값
-
Promise<SendInfo>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
지정된 연결에서 문자 전송을 일시 중지하고 clearBreak가 호출될 때까지 전송 라인을 브레이크 상태로 설정합니다.
매개변수
-
connectionId
숫자
연결의 ID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
): Promise<boolean>
지정된 연결에서 제어 신호의 상태를 설정합니다.
매개변수
-
connectionId
숫자
연결의 ID입니다.
-
기기에 전송할 신호 변경사항 집합입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
): Promise<void>
열린 연결을 일시중지하거나 일시중지 해제합니다.
매개변수
-
connectionId
숫자
열린 연결의 ID입니다.
-
일시중지됨
부울
일시중지할지 또는 일시중지 해제할지를 나타내는 플래그입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
): Promise<boolean>
열린 직렬 포트 연결의 옵션 설정을 업데이트합니다.
매개변수
-
connectionId
숫자
열린 연결의 ID입니다.
-
포트 구성 옵션입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: boolean) => void
-
결과
부울
-
반환 값
-
Promise<boolean>
Chrome 117 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
이벤트
onReceive
chrome.serial.onReceive.addListener(
callback: function,
)
연결에서 데이터를 읽어올 때 발생하는 이벤트입니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: ReceiveInfo) => void
-
정보
-
onReceiveError
chrome.serial.onReceiveError.addListener(
callback: function,
)
런타임이 직렬 포트에서 데이터를 기다리는 중에 오류가 발생한 경우 발생하는 이벤트입니다. 이 이벤트가 발생하면 연결이 paused
로 설정될 수 있습니다. "timeout"
오류가 발생해도 연결이 일시중지되지는 않습니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: ReceiveErrorInfo) => void