תיאור
אפשר להשתמש ב-API של chrome.serial כדי לקרוא ממכשיר שמחובר ליציאה טורית ולכתוב אליו.
הרשאות
serialזמינות
סוגים
ConnectionInfo
מאפיינים
-
קצב העברת נתונים
מספר אופציונלי
ConnectionOptions.bitrate. יכול להיות שהשדה הזה יושמט או לא יהיה מדויק אם נעשה שימוש בקצב העברת נתונים לא סטנדרטי, או אם אירעה שגיאה בזמן שליחת שאילתה למכשיר הבסיסי. -
bufferSize
number
הצגה של
ConnectionOptions.bufferSize -
connectionId
number
המזהה של החיבור ליציאה הטורית.
-
ctsFlowControl
בוליאני אופציונלי
ConnectionOptions.ctsFlowControl. יכול להיות שהשדה הזה יושמט אם תתרחש שגיאה בזמן שליחת שאילתה למכשיר הבסיסי. -
dataBits
DataBits אופציונלי
ConnectionOptions.dataBits. יכול להיות שהשדה הזה יושמט אם תתרחש שגיאה בזמן שליחת שאילתה למכשיר הבסיסי. -
שם
מחרוזת
הצגה של
ConnectionOptions.name -
parityBit
ParityBit אופציונלי
ConnectionOptions.parityBit. יכול להיות שהשדה הזה יושמט אם תתרחש שגיאה בזמן שליחת שאילתה למכשיר הבסיסי. -
מושהה
בוליאני
סימון שמציין אם החיבור חסום להפעלת אירועי onReceive.
-
קבוע
בוליאני
הצגה של
ConnectionOptions.persistent -
receiveTimeout
number
הצגה של
ConnectionOptions.receiveTimeout -
sendTimeout
number
הצגה של
ConnectionOptions.sendTimeout -
stopBits
StopBits אופציונלי
ConnectionOptions.stopBits. יכול להיות שהשדה הזה יושמט אם תתרחש שגיאה בזמן שליחת שאילתה למכשיר הבסיסי.
ConnectionOptions
מאפיינים
-
קצב העברת נתונים
מספר אופציונלי
קצב העברת הנתונים המבוקש של החיבור שייפתח. כדי שתהיה תאימות למגוון הרחב ביותר של חומרה, המספר הזה צריך להתאים לאחד מקצבי העברת הנתונים הנפוצים, כמו 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". כשהאפליקציה נטענת, אפשר לאחזר באמצעות
getConnectionsכל חיבור טורי שנפתח בעבר עם persistent=true. -
receiveTimeout
מספר אופציונלי
משך הזמן המקסימלי (באלפיות השנייה) להמתנה לנתונים חדשים לפני הפעלת אירוע
onReceiveErrorעם שגיאת "זמן קצוב לתפוגה". אם הערך הוא אפס, לא יופיעו שגיאות של זמן קצוב לתפוגה של קבלה בחיבור. ברירת המחדל היא 0. -
sendTimeout
מספר אופציונלי
משך הזמן המקסימלי (באלפיות השנייה) להמתנה עד להשלמת פעולת
sendלפני קריאה חוזרת עם שגיאת "זמן קצוב לתפוגה". אם הערך הוא אפס, לא יופעלו שגיאות של זמן קצוב לתפוגה של שליחה. ברירת המחדל היא 0. -
stopBits
StopBits אופציונלי
הערך
"one"יועבר כברירת מחדל.
DataBits
טיפוסים בני מנייה (enum)
"seven"
"eight"
DeviceControlSignals
מאפיינים
-
cts
בוליאני
CTS (מוכן לשליחה).
-
dcd
בוליאני
DCD (זיהוי ספק נתונים) או RLSD (זיהוי/אות קו קבלה).
-
dsr
בוליאני
DSR (קבוצת נתונים מוכנה).
-
ri
בוליאני
RI (אינדיקטור צלצול).
DeviceInfo
מאפיינים
-
displayName
מחרוזת אופציונלי
שם קריא לאנשים שמוצג למכשיר הבסיסי, אם אפשר לשלוח שאילתה לגביו ממנהל ההתקן המארח.
-
נתיב
מחרוזת
נתיב המערכת של המכשיר. כדי להתחבר למכשיר הזה, צריך להעביר את זה כארגומנט
pathאלchrome.serial.connect. -
productId
מספר אופציונלי
מזהה מוצר USB, אם אפשר לקבוע מזהה כזה למכשיר הבסיסי.
-
vendorId
מספר אופציונלי
מזהה ספק PCI או USB, אם אפשר לקבוע אותו למכשיר הבסיסי.
HostControlSignals
מאפיינים
-
dtr
בוליאני אופציונלי
DTR (מסוף נתונים מוכן).
-
rts
בוליאני אופציונלי
RTS (בקשה לשליחה).
ParityBit
טיפוסים בני מנייה (enum)
"no"
"odd"
"even"
ReceiveError
טיפוסים בני מנייה (enum)
"disconnected"
החיבור נותק.
"timeout"
לא התקבלו נתונים במשך receiveTimeout אלפיות השנייה.
"device_lost"
סביר להניח שהמכשיר נותק מהמארח.
"break"
המכשיר זיהה מצב של הפסקה.
"frame_error"
המכשיר זיהה שגיאת מסגור.
"overrun"
אירעה חריגה במאגר התווים. התו הבא אבד.
"buffer_overflow"
אירעה גלישת מאגר קלט. אין מקום במאגר הקלט, או שהתקבל תו אחרי תו סוף הקובץ (EOF).
"parity_error"
המכשיר זיהה שגיאת זוגיות.
"system_error"
אירעה שגיאת מערכת ויכול להיות שלא ניתן לשחזר את החיבור.
ReceiveErrorInfo
מאפיינים
-
connectionId
number
מזהה החיבור.
-
error
קוד שגיאה שמציין מה השתבש.
ReceiveInfo
מאפיינים
-
connectionId
number
מזהה החיבור.
-
נתונים
ArrayBuffer
הנתונים שהתקבלו.
SendError
טיפוסים בני מנייה (enum)
"disconnected"
החיבור נותק.
"pending"
כבר הייתה שליחה בהמתנה.
"timeout"
הזמן הקצוב לתפוגה של השליחה חלף.
"system_error"
אירעה שגיאת מערכת ויכול להיות שלא ניתן לשחזר את החיבור.
SendInfo
מאפיינים
-
bytesSent
number
מספר הבייטים שנשלחו.
-
error
SendError אופציונלי
קוד שגיאה, אם קרתה שגיאה.
StopBits
טיפוסים בני מנייה (enum)
"one"
"שתיים"
Methods
clearBreak()
chrome.serial.clearBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
שחזור שידור תווים בחיבור נתון והעברת קו השידור למצב ללא הפסקה.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
): Promise<ConnectionInfo>
מתחבר ליציאה טורית נתונה.
פרמטרים
-
נתיב
מחרוזת
נתיב המערכת של היציאה הטורית שרוצים לפתוח.
-
אפשרויות
ConnectionOptions אופציונלי
אפשרויות להגדרת יציאות.
-
callback
function optional
הפרמטר
callbackנראה כך:(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
החזרות
-
Promise<ConnectionInfo>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
): Promise<boolean>
מתנתק מיציאה טורית.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
): Promise<boolean>
מנקה את כל הבייטים במאגרי הקלט והפלט של החיבור הנתון.
פרמטרים
-
connectionId
number
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getConnections()
chrome.serial.getConnections(
callback?: function,
): Promise<ConnectionInfo[]>
אחזור הרשימה של החיבורים הפתוחים כרגע ליציאות טוריות שבבעלות האפליקציה.
פרמטרים
-
callback
function optional
הפרמטר
callbackנראה כך:(connectionInfos: ConnectionInfo[]) => void
-
connectionInfos
-
החזרות
-
Promise<ConnectionInfo[]>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
): Promise<DeviceControlSignals>
אחזור המצב של אותות הבקרה בחיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
function optional
הפרמטר
callbackנראה כך:(signals: DeviceControlSignals) => void
-
אותות
-
החזרות
-
Promise<DeviceControlSignals>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getDevices()
chrome.serial.getDevices(
callback?: function,
): Promise<DeviceInfo[]>
הפונקציה מחזירה מידע על מכשירים עם יציאה טורית שזמינים במערכת. הרשימה נוצרת מחדש בכל פעם שקוראים ל-method הזה.
פרמטרים
-
callback
function optional
הפרמטר
callbackנראה כך:(ports: DeviceInfo[]) => void
-
ports
-
החזרות
-
Promise<DeviceInfo[]>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
): Promise<ConnectionInfo>
אחזור הסטטוס של חיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
callback
function optional
הפרמטר
callbackנראה כך:(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
החזרות
-
Promise<ConnectionInfo>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
): Promise<SendInfo>
כתיבת נתונים לחיבור הנתון.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
נתונים
ArrayBuffer
הנתונים שרוצים לשלוח.
-
callback
function optional
הפרמטר
callbackנראה כך:(sendInfo: SendInfo) => void
-
sendInfo
-
החזרות
-
Promise<SendInfo>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
השהיית שידור התווים בחיבור נתון והעברת קו השידור למצב הפסקה עד לקריאה ל-clearBreak.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
): Promise<boolean>
מגדירה את המצב של אותות הבקרה בחיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
אותות
קבוצת השינויים באותות שצריך לשלוח למכשיר.
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
): Promise<void>
השהיה או ביטול השהיה של חיבור פתוח.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
מושהה
בוליאני
סימון שמציין אם להשהות או לבטל את ההשהיה.
-
callback
function optional
הפרמטר
callbackנראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
): Promise<boolean>
עדכון הגדרות האפשרויות בחיבור פתוח של יציאה טורית.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
אפשרויות
אפשרויות להגדרת יציאות.
-
callback
function optional
הפרמטר
callbackנראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome מגרסה 117 ואילךהבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).
אירועים
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
-
מידע
-