תיאור
משתמשים ב-API chrome.serial
כדי לקרוא ממכשיר שמחובר ליציאה טורית ולכתוב אליו.
הרשאות
serial
סוגים
ConnectionInfo
מאפיינים
-
קצב העברת נתונים
מספר אופציונלי
ConnectionOptions.bitrate
. יכול להיות שהשדה הזה לא יופיע או שהערך שלו יהיה שגוי אם נעשה שימוש בקצב העברת נתונים לא סטנדרטי, או אם התרחשה שגיאה בזמן שליחת שאילתה למכשיר הבסיסי. -
bufferSize
number
הצגה של
ConnectionOptions.bufferSize
-
connectionId
number
המזהה של החיבור ליציאה הטורית.
-
ctsFlowControl
boolean אופציונלי
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, 1,200, 2,400, 4,800, 9,600, 14,400, 19,200, 38,400, 57,600 ו-115,200. כמובן שאין ערובה לכך שהמכשיר שמחובר ליציאה הטורית יתמוך בקצב העברת הנתונים המבוקש, גם אם היציאה עצמה תומכת בקצב הזה. הערך
9600
יועבר כברירת מחדל. -
bufferSize
מספר אופציונלי
גודל המאגר שמשמש לקבלת נתונים. ערך ברירת המחדל הוא 4096.
-
ctsFlowControl
boolean אופציונלי
סימון שמציין אם להפעיל או להשבית את בקרת הזרימה של החומרה RTS/CTS. ברירת המחדל היא False.
-
dataBits
DataBits אופציונלי
הערך
"eight"
יועבר כברירת מחדל. -
שם
מחרוזת אופציונלי
מחרוזת שמוגדרת על ידי האפליקציה ומשויכת לחיבור.
-
parityBit
ParityBit אופציונלי
הערך
"no"
יועבר כברירת מחדל. -
קבוע
boolean אופציונלי
דגל שמציין אם החיבור צריך להישאר פתוח כשהאפליקציה מושהית (ראו ניהול מחזור החיים של האפליקציה). ערך ברירת המחדל הוא false. כשהאפליקציה נטענת, אפשר לאחזר חיבורים סדרתיים שנפתחו קודם עם persistent=true באמצעות
getConnections
. -
receiveTimeout
מספר אופציונלי
משך הזמן המקסימלי (באלפיות השנייה) להמתנה לנתונים חדשים לפני הפעלת אירוע
onReceiveError
עם שגיאת 'פסק זמן'. אם הערך הוא אפס, לא יופיעו שגיאות של זמן קצוב לתפוגה של קבלת נתונים בחיבור. ברירת המחדל היא 0. -
sendTimeout
מספר אופציונלי
משך הזמן המקסימלי (באלפיות השנייה) להמתנה לסיום של פעולת
send
לפני הפעלת הקריאה החוזרת עם שגיאת 'פסק זמן'. אם הערך הוא אפס, לא יופעלו שגיאות של פסק זמן לשליחה. ברירת המחדל היא 0. -
stopBits
StopBits אופציונלי
הערך
"one"
יועבר כברירת מחדל.
DataBits
Enum
"seven"
"eight"
DeviceControlSignals
מאפיינים
-
cts
בוליאני
CTS (Clear To Send).
-
dcd
בוליאני
DCD (זיהוי נתונים בקו) או RLSD (זיהוי אות בקו קבלה).
-
dsr
בוליאני
DSR (קבוצת נתונים מוכנה).
-
ri
בוליאני
RI (Ring Indicator).
DeviceInfo
מאפיינים
-
displayName
מחרוזת אופציונלי
שם מוצג קריא של המכשיר הבסיסי, אם אפשר לשלוף אותו מדרייבר המארח.
-
נתיב
מחרוזת
נתיב המערכת של המכשיר. כדי להתחבר למכשיר הזה, צריך להעביר את הערך הזה כארגומנט
path
לפונקציהchrome.serial.connect
. -
productId
מספר אופציונלי
מזהה מוצר USB אם אפשר לקבוע אותו עבור המכשיר הבסיסי.
-
vendorId
מספר אופציונלי
מזהה ספק PCI או USB, אם אפשר לקבוע אותו עבור המכשיר הבסיסי.
HostControlSignals
מאפיינים
-
dtr
boolean אופציונלי
DTR (מסוף נתונים מוכן).
-
rts
boolean אופציונלי
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"
החיבור נותק.
בהמתנה
שליחה כבר הייתה בהמתנה.
"timeout"
השליחה נכשלה כי חלף הזמן הקצוב לתפוגה.
system_error
אירעה שגיאת מערכת, ויכול להיות שאי אפשר יהיה לשחזר את החיבור.
SendInfo
מאפיינים
-
bytesSent
number
מספר הבייטים שנשלחו.
-
error
SendError אופציונלי
קוד שגיאה אם אירעה שגיאה.
StopBits
Enum
"one"
"two"
Methods
clearBreak()
chrome.serial.clearBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
משחזרת את שידור התווים בחיבור נתון ומעבירה את קו השידור למצב שאינו הפסקה.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
connect()
chrome.serial.connect(
path: string,
options?: ConnectionOptions,
callback?: function,
): Promise<ConnectionInfo>
מתחבר ליציאה טורית נתונה.
פרמטרים
-
נתיב
מחרוזת
נתיב המערכת של היציאה הטורית שרוצים לפתוח.
-
options
ConnectionOptions אופציונלי
אפשרויות להגדרת יציאה.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
החזרות
-
Promise<ConnectionInfo>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
disconnect()
chrome.serial.disconnect(
connectionId: number,
callback?: function,
): Promise<boolean>
הניתוק מיציאה טורית.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
flush()
chrome.serial.flush(
connectionId: number,
callback?: function,
): Promise<boolean>
מרוקן את כל הבייטים במאגרי הקלט והפלט של החיבור הנתון.
פרמטרים
-
connectionId
number
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getConnections()
chrome.serial.getConnections(
callback?: function,
): Promise<ConnectionInfo[]>
מאחזר את רשימת החיבורים ליציאות טוריות שפתוחים כרגע ושנמצאים בבעלות האפליקציה.
פרמטרים
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(connectionInfos: ConnectionInfo[]) => void
-
connectionInfos
-
החזרות
-
Promise<ConnectionInfo[]>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getControlSignals()
chrome.serial.getControlSignals(
connectionId: number,
callback?: function,
): Promise<DeviceControlSignals>
הפונקציה מאחזרת את המצב של אותות בקרה בחיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(signals: DeviceControlSignals) => void
-
אותות
-
החזרות
-
Promise<DeviceControlSignals>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getDevices()
chrome.serial.getDevices(
callback?: function,
): Promise<DeviceInfo[]>
מחזירה מידע על מכשירים סריאליים שזמינים במערכת. הרשימה נוצרת מחדש בכל פעם שמבצעים קריאה לשיטה הזו.
פרמטרים
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(ports: DeviceInfo[]) => void
-
ports
-
החזרות
-
Promise<DeviceInfo[]>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
getInfo()
chrome.serial.getInfo(
connectionId: number,
callback?: function,
): Promise<ConnectionInfo>
אחזור המצב של חיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(connectionInfo: ConnectionInfo) => void
-
connectionInfo
-
החזרות
-
Promise<ConnectionInfo>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
send()
chrome.serial.send(
connectionId: number,
data: ArrayBuffer,
callback?: function,
): Promise<SendInfo>
כתיבת נתונים לחיבור שצוין.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
נתונים
ArrayBuffer
הנתונים לשליחה.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(sendInfo: SendInfo) => void
-
sendInfo
-
החזרות
-
Promise<SendInfo>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setBreak()
chrome.serial.setBreak(
connectionId: number,
callback?: function,
): Promise<boolean>
הפונקציה משעה את שידור התווים בחיבור נתון ומעבירה את קו השידור למצב הפסקה עד להפעלת הפונקציה clearBreak.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setControlSignals()
chrome.serial.setControlSignals(
connectionId: number,
signals: HostControlSignals,
callback?: function,
): Promise<boolean>
הגדרת המצב של אותות בקרה בחיבור נתון.
פרמטרים
-
connectionId
number
המזהה של החיבור.
-
אותות
קבוצת שינויי האותות שיישלחו למכשיר.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
setPaused()
chrome.serial.setPaused(
connectionId: number,
paused: boolean,
callback?: function,
): Promise<void>
השהיה או ביטול השהיה של חיבור פתוח.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
מושהה
בוליאני
סימון שמציין אם להשהות או לבטל את ההשהיה.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
update()
chrome.serial.update(
connectionId: number,
options: ConnectionOptions,
callback?: function,
): Promise<boolean>
מעדכנים את הגדרות האפשרות בחיבור פתוח של יציאה טורית.
פרמטרים
-
connectionId
number
המזהה של החיבור שנפתח.
-
options
אפשרויות להגדרת יציאה.
-
callback
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: boolean) => void
-
תוצאה
בוליאני
-
החזרות
-
Promise<boolean>
Chrome 117 ואילךההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.
אירועים
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
-
מידע
-