Mô tả
Sử dụng API chrome.serial để đọc và ghi vào một thiết bị kết nối với cổng nối tiếp.
Quyền
serialLoại
ConnectionInfo
Thuộc tính
- 
    bitratenumber không bắt buộc Vui lòng xem ConnectionOptions.bitrate. Trường này có thể bị bỏ qua hoặc không chính xác nếu đang sử dụng tốc độ bit không theo tiêu chuẩn hoặc nếu xảy ra lỗi trong khi truy vấn thiết bị cơ bản.
- 
    bufferSizesố Xem ConnectionOptions.bufferSize
- 
    connectionIdsố Mã của kết nối cổng nối tiếp. 
- 
    ctsFlowControlboolean không bắt buộc Vui lòng xem ConnectionOptions.ctsFlowControl. Bạn có thể bỏ qua trường này nếu xảy ra lỗi trong khi truy vấn thiết bị cơ bản.
- 
    dataBitsDataBits không bắt buộc Vui lòng xem ConnectionOptions.dataBits. Bạn có thể bỏ qua trường này nếu xảy ra lỗi trong khi truy vấn thiết bị cơ bản.
- 
    tênchuỗi Xem ConnectionOptions.name
- 
    parityBitParityBit không bắt buộc Vui lòng xem ConnectionOptions.parityBit. Bạn có thể bỏ qua trường này nếu xảy ra lỗi trong khi truy vấn thiết bị cơ bản.
- 
    tạm dừngboolean Cờ cho biết liệu kết nối có bị chặn kích hoạt các sự kiện onReceive hay không. 
- 
    liên tụcboolean Xem ConnectionOptions.persistent
- 
    receiveTimeoutsố Xem ConnectionOptions.receiveTimeout
- 
    sendTimeoutsố Xem ConnectionOptions.sendTimeout
- 
    stopBitsStopBits không bắt buộc Vui lòng xem ConnectionOptions.stopBits. Bạn có thể bỏ qua trường này nếu xảy ra lỗi trong khi truy vấn thiết bị cơ bản.
ConnectionOptions
Thuộc tính
- 
    bitratenumber không bắt buộc Tốc độ bit được yêu cầu của kết nối sẽ được mở. Để tương thích với nhiều loại phần cứng nhất có thể, số này phải khớp với một trong các tốc độ truyền dữ liệu thường có, chẳng hạn như 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. Tất nhiên, không có gì đảm bảo rằng thiết bị kết nối với cổng nối tiếp sẽ hỗ trợ tốc độ truyền dữ liệu được yêu cầu, ngay cả khi bản thân cổng đó hỗ trợ tốc độ truyền dữ liệu đó. 9600sẽ được truyền theo mặc định.
- 
    bufferSizenumber không bắt buộc Kích thước của bộ nhớ đệm dùng để nhận dữ liệu. Giá trị mặc định là 4096. 
- 
    ctsFlowControlboolean không bắt buộc Cờ cho biết có bật chế độ kiểm soát luồng phần cứng RTS/CTS hay không. Giá trị mặc định là false. 
- 
    dataBitsDataBits không bắt buộc "eight"sẽ được truyền theo mặc định.
- 
    tênchuỗi không bắt buộc Một chuỗi do ứng dụng xác định để liên kết với kết nối. 
- 
    parityBitParityBit không bắt buộc "no"sẽ được truyền theo mặc định.
- 
    liên tụcboolean không bắt buộc Cờ cho biết có nên để kết nối ở trạng thái mở khi ứng dụng bị tạm ngưng hay không (xem phần Quản lý vòng đời ứng dụng). Giá trị mặc định là "false". Khi ứng dụng được tải, mọi kết nối nối tiếp đã mở trước đó bằng persistent=true đều có thể được tìm nạp bằng getConnections.
- 
    receiveTimeoutnumber không bắt buộc Khoảng thời gian tối đa (tính bằng mili giây) để chờ dữ liệu mới trước khi đưa ra sự kiện onReceiveErrorkèm theo lỗi "hết thời gian chờ". Nếu bằng 0, các lỗi thời gian chờ nhận sẽ không được tăng cho kết nối. Giá trị mặc định là: 0
- 
    sendTimeoutnumber không bắt buộc Khoảng thời gian tối đa (tính bằng mili giây) để chờ một thao tác sendhoàn tất trước khi gọi lệnh gọi lại bằng lỗi "hết thời gian chờ". Nếu bằng 0, lỗi hết thời gian chờ gửi sẽ không được kích hoạt. Giá trị mặc định là: 0
- 
    stopBitsStopBits không bắt buộc "one"sẽ được truyền theo mặc định.
DataBits
Enum
"seven" 
 
"eight" 
 
DeviceControlSignals
Thuộc tính
- 
    ctsboolean CTS (Clear To Send – Xoá để gửi). 
- 
    dcdboolean DCD (Data Carrier Detect) hoặc RLSD (Receive Line Signal/ Detect). 
- 
    dsrboolean DSR (Tập dữ liệu đã sẵn sàng). 
- 
    riboolean RI (Chỉ báo chuông). 
DeviceInfo
Thuộc tính
- 
    Tên hiển thịchuỗi không bắt buộc Tên hiển thị dễ đọc cho thiết bị cơ bản nếu có thể truy vấn tên đó từ trình điều khiển máy chủ. 
- 
    đường dẫnchuỗi Đường dẫn hệ thống của thiết bị. Bạn nên truyền tham số này dưới dạng đối số pathđếnchrome.serial.connectđể kết nối với thiết bị này.
- 
    productIdnumber không bắt buộc Mã sản phẩm USB nếu có thể xác định được cho thiết bị cơ bản. 
- 
    vendorIdnumber không bắt buộc Mã nhận dạng nhà cung cấp PCI hoặc USB nếu có thể xác định được cho thiết bị cơ bản. 
HostControlSignals
Thuộc tính
- 
    dtrboolean không bắt buộc DTR (Data Terminal Ready – Thiết bị đầu cuối dữ liệu đã sẵn sàng). 
- 
    rtsboolean không bắt buộc RTS (Yêu cầu gửi). 
ParityBit
Enum
"không" 
 
"odd" 
 
"even" 
 
ReceiveError
Enum
"đã ngắt kết nối" 
 Kết nối đã bị ngắt.
"timeout" 
 Không nhận được dữ liệu nào trong receiveTimeout mili giây.
"device_lost" 
 Thiết bị có khả năng cao đã bị ngắt kết nối với máy chủ lưu trữ.
"break" 
 Thiết bị phát hiện thấy điều kiện ngắt.
"frame_error" 
 Thiết bị phát hiện thấy lỗi khung hình.
"overrun" 
 Đã xảy ra tình trạng tràn bộ nhớ đệm ký tự. Ký tự tiếp theo bị mất.
"buffer_overflow" 
 Đã xảy ra lỗi tràn bộ đệm đầu vào. Không có khoảng trống trong vùng đệm đầu vào hoặc một ký tự đã được nhận sau ký tự cuối tệp (EOF).
"parity_error" 
 Thiết bị phát hiện thấy lỗi chẵn lẻ.
"system_error" 
 Đã xảy ra lỗi hệ thống và có thể không khôi phục được kết nối.
ReceiveErrorInfo
Thuộc tính
- 
    connectionIdsố Giá trị nhận dạng kết nối. 
- 
    errorMã lỗi cho biết vấn đề đã xảy ra. 
ReceiveInfo
Thuộc tính
- 
    connectionIdsố Giá trị nhận dạng kết nối. 
- 
    khácArrayBuffer Dữ liệu đã nhận. 
SendError
Enum
"đã ngắt kết nối" 
 Kết nối đã bị ngắt.
"đang chờ xử lý" 
 Đã có một yêu cầu gửi đang chờ xử lý.
"timeout" 
 Đã hết thời gian gửi.
"system_error" 
 Đã xảy ra lỗi hệ thống và có thể không khôi phục được kết nối.
SendInfo
Thuộc tính
- 
    bytesSentsố Số byte đã gửi. 
- 
    errorSendError không bắt buộc Mã lỗi nếu xảy ra lỗi. 
StopBits
Enum
"one" 
 
"two" 
 
Phương thức
clearBreak()
chrome.serial.clearBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
Khôi phục quá trình truyền ký tự trên một kết nối nhất định và đặt đường truyền ở trạng thái không ngắt.
Thông số
- 
    connectionIdsố Mã nhận dạng của kết nối. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
): Promise<ConnectionInfo>
Kết nối với một cổng nối tiếp nhất định.
Thông số
- 
    đường dẫnchuỗi Đường dẫn hệ thống của cổng nối tiếp cần mở. 
- 
    tùy chọnConnectionOptions không bắt buộc Các lựa chọn cấu hình cổng. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(connectionInfo: ConnectionInfo) => void - 
    connectionInfo
 
- 
    
Giá trị trả về
- 
            Promise<ConnectionInfo> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
): Promise<boolean>
Ngắt kết nối khỏi một cổng nối tiếp.
Thông số
- 
    connectionIdsố Mã của kết nối đã mở. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
): Promise<boolean>
Xoá tất cả các byte trong vùng đệm đầu vào và đầu ra của kết nối đã cho.
Thông số
- 
    connectionIdsố 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
getConnections()
chrome.serial.getConnections(
callback?: function,
): Promise<ConnectionInfo[]>
Truy xuất danh sách các kết nối cổng nối tiếp hiện đang mở do ứng dụng sở hữu.
Thông số
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(connectionInfos: ConnectionInfo[]) => void - 
    connectionInfos
 
- 
    
Giá trị trả về
- 
            Promise<ConnectionInfo[]> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
): Promise<DeviceControlSignals>
Truy xuất trạng thái của các tín hiệu điều khiển trên một kết nối nhất định.
Thông số
- 
    connectionIdsố Mã nhận dạng của kết nối. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(signals: DeviceControlSignals) => void - 
    tín hiệu
 
- 
    
Giá trị trả về
- 
            Promise<DeviceControlSignals> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
getDevices()
chrome.serial.getDevices(
callback?: function,
): Promise<DeviceInfo[]>
Trả về thông tin về các thiết bị nối tiếp có sẵn trên hệ thống. Danh sách này được tạo lại mỗi khi phương thức này được gọi.
Thông số
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(ports: DeviceInfo[]) => void - 
    ports
 
- 
    
Giá trị trả về
- 
            Promise<DeviceInfo[]> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
): Promise<ConnectionInfo>
Truy xuất trạng thái của một kết nối nhất định.
Thông số
- 
    connectionIdsố Mã của kết nối đã mở. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(connectionInfo: ConnectionInfo) => void - 
    connectionInfo
 
- 
    
Giá trị trả về
- 
            Promise<ConnectionInfo> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
): Promise<SendInfo>
Ghi dữ liệu vào kết nối đã cho.
Thông số
- 
    connectionIdsố Mã nhận dạng của kết nối. 
- 
    khácArrayBuffer Dữ liệu cần gửi. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(sendInfo: SendInfo) => void - 
    sendInfo
 
- 
    
Giá trị trả về
- 
            Promise<SendInfo> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
Tạm ngưng việc truyền ký tự trên một kết nối nhất định và đặt đường truyền ở trạng thái ngắt cho đến khi clearBreak được gọi.
Thông số
- 
    connectionIdsố Mã nhận dạng của kết nối. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
): Promise<boolean>
Đặt trạng thái của các tín hiệu điều khiển trên một kết nối nhất định.
Thông số
- 
    connectionIdsố Mã nhận dạng của kết nối. 
- 
    tín hiệuTập hợp các thay đổi về tín hiệu cần gửi đến thiết bị. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
): Promise<void>
Tạm dừng hoặc tiếp tục một kết nối đang mở.
Thông số
- 
    connectionIdsố Mã của kết nối đã mở. 
- 
    tạm dừngboolean Cờ cho biết bạn muốn tạm dừng hay tiếp tục. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
Giá trị trả về
- 
            Promise<void> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
): Promise<boolean>
Cập nhật chế độ cài đặt lựa chọn trên một kết nối cổng nối tiếp đang mở.
Thông số
- 
    connectionIdsố Mã của kết nối đã mở. 
- 
    tùy chọnCác lựa chọn cấu hình cổng. 
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(result: boolean) => void - 
    kết quảboolean 
 
- 
    
Giá trị trả về
- 
            Promise<boolean> Chrome 117 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
Sự kiện
onReceive
chrome.serial.onReceive.addListener(
callback: function,
)
Sự kiện được tạo khi dữ liệu đã được đọc từ kết nối.
Thông số
- 
    callbackhàm Tham số callbackcó dạng như sau:(info: ReceiveInfo) => void - 
    info
 
- 
    
onReceiveError
chrome.serial.onReceiveError.addListener(
callback: function,
)
Sự kiện được tạo khi xảy ra lỗi trong lúc thời gian chạy đang chờ dữ liệu trên cổng nối tiếp. Sau khi sự kiện này được tạo, bạn có thể đặt trạng thái kết nối thành paused. Lỗi "timeout" không làm tạm dừng kết nối.
Thông số
- 
    callbackhàm Tham số callbackcó dạng như sau:(info: ReceiveErrorInfo) => void - 
    info
 
-