chrome.serial

الوصف

يمكنك استخدام واجهة برمجة التطبيقات chrome.serial للقراءة من جهاز متصل بمنفذ تسلسلي والكتابة فيه.

الأذونات

serial

الأنواع

ConnectionInfo

أماكن إقامة

  • معدل نقل البيانات

    الرقم اختياري

    يمكنك الاطّلاع على ConnectionOptions.bitrate. قد يتم حذف هذا الحقل أو قد يكون غير دقيق في حال كان معدل نقل البيانات غير عادي قيد الاستخدام، أو إذا حدث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • bufferSize

    الرقم

    عرض ConnectionOptions.bufferSize

  • connectionId

    الرقم

    رقم تعريف اتصال المنفذ التسلسلي.

  • ctsFlowControl

    قيمة منطقية اختيارية

    يمكنك الاطّلاع على ConnectionOptions.ctsFlowControl. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • dataBits

    DataBits اختيارية

    يمكنك الاطّلاع على ConnectionOptions.dataBits. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • الاسم

    سلسلة

    عرض ConnectionOptions.name

  • parityBit

    ParityBit اختياري

    يمكنك الاطّلاع على ConnectionOptions.parityBit. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

  • متوقفة مؤقتًا

    منطقي

    علامة تشير إلى ما إذا كان الاتصال محظورًا من تنشيط أحداث onتلقِّي

  • مستمر

    منطقي

    عرض ConnectionOptions.persistent

  • receiveTimeout

    الرقم

    عرض ConnectionOptions.receiveTimeout

  • sendTimeout

    الرقم

    عرض ConnectionOptions.sendTimeout

  • stopBits

    StopBits اختيارية

    يمكنك الاطّلاع على ConnectionOptions.stopBits. يمكن حذف هذا الحقل في حال حدوث خطأ أثناء طلب البحث عن الجهاز الأساسي.

ConnectionOptions

أماكن إقامة

  • معدل نقل البيانات

    الرقم اختياري

    معدّل نقل البيانات المطلوب للاتصال المراد فتحه. للتوافق مع أوسع مجموعة من الأجهزة، يجب أن يتطابق هذا الرقم مع أحد معدلات نقل البيانات الشائعة الاستخدام، مثل 110 أو 300 أو 1200 أو 2400 أو 4800 أو 9600 أو 14400 أو 19200 أو 38400 أو 57600 أو 115200. وليس هناك ما يضمن بالطبع توافق الجهاز المتصل بالمنفذ التسلسلي مع معدل نقل البيانات المطلوب، حتى إذا كان المنفذ نفسه يتوافق مع معدل نقل البيانات هذا. سيتم تمرير 9600 تلقائيًا.

  • bufferSize

    الرقم اختياري

    حجم المخزن المؤقت المستخدم لتلقي البيانات. القيمة التلقائية هي 4096.

  • ctsFlowControl

    قيمة منطقية اختيارية

    علامة تشير إلى ما إذا كان سيتم تفعيل التحكم في تدفق أجهزة RTS/CTS أو لا وتكون القيمة التلقائية على "خطأ".

  • dataBits

    DataBits اختيارية

    سيتم تمرير "eight" تلقائيًا.

  • الاسم

    سلسلة اختيارية

    سلسلة يتم تحديدها بواسطة التطبيق لربطها بالاتصال.

  • parityBit

    ParityBit اختياري

    سيتم تمرير "no" تلقائيًا.

  • مستمر

    قيمة منطقية اختيارية

    علامة تشير إلى ما إذا كان يجب ترك الاتصال مفتوحًا عند تعليق التطبيق أم لا (راجع إدارة دورة حياة التطبيق). والقيمة الافتراضية هي "false". عند تحميل التطبيق، يمكن استرجاع أي اتصالات تسلسلية تم فتحها سابقًا باستخدام persistent=true من خلال getConnections.

  • receiveTimeout

    الرقم اختياري

    الحدّ الأقصى للوقت (بالمللي ثانية) لانتظار البيانات الجديدة قبل عرض حدث onReceiveError باستخدام "مهلة" خطأ. إذا كانت القيمة صفرًا، لن يتم عرض أخطاء مهلة الاتصال في الاتصال. وتكون القيم التلقائية 0.

  • sendTimeout

    الرقم اختياري

    الحدّ الأقصى للمدة الزمنية (بالمللي ثانية) لاكتمال عملية send قبل طلب معاودة الاتصال مع تحديد "مهلة". خطأ. إذا كان صفرًا، فلن تظهر أخطاء مهلة الإرسال. وتكون القيم التلقائية 0.

  • stopBits

    StopBits اختيارية

    سيتم تمرير "one" تلقائيًا.

DataBits

Enum

"سبعة"

"ثمانية"

DeviceControlSignals

أماكن إقامة

  • عدد النقرات

    منطقي

    CTS (محو للإرسال).

  • dcd

    منطقي

    DCD (اكتشاف مشغّل البيانات) أو RLSD (إشارة خط الاستقبال أو الكشف).

  • dsr

    منطقي

    DSR (مجموعة البيانات جاهزة).

  • ري

    منطقي

    مؤشر الرنين).

DeviceInfo

أماكن إقامة

  • displayName

    سلسلة اختيارية

    تمثّل هذه السمة الاسم المعروض للجهاز الأساسي الذي يمكن للمستخدمين قراءته، إذا كان من الممكن طلبه من برنامج التشغيل المضيف.

  • المسار

    سلسلة

    مسار نظام الجهاز. يجب تمرير هذه القيمة كوسيطة path إلى chrome.serial.connect للاتصال بهذا الجهاز.

  • productId

    الرقم اختياري

    معرّف منتج USB إذا كان من الممكن تحديد واحد للجهاز الأساسي.

  • vendorId

    الرقم اختياري

    معرّف مورّد PCI أو USB إذا كان من الممكن تحديد الجهاز الأساسي.

HostControlSignals

أماكن إقامة

  • dtr

    قيمة منطقية اختيارية

    DTR (جاهز لمحطة البيانات)

  • rts

    قيمة منطقية اختيارية

    RTS (طلب الإرسال)

ParityBit

Enum

لا

"فردي"

"متساوية"

ReceiveError

Enum

"غير متّصل"
انقطاع الاتصال.

"timeout"
لم يتم تلقي أي بيانات لمدة receiveTimeout مللي ثانية.

"device_lost"
على الأرجح انقطع اتصال الجهاز بالمضيف.

"break"
رصد الجهاز حالة استراحة.

"frame_error"
رصد الجهاز خطأً في الإطارات.

"تجاوز"
تم تجاوز حد المخزن المؤقت للأحرف. ستفقد الحرف التالي.

"buffer_overflow"
حدث تجاوز سعة المخزن المؤقت للإدخال. إمّا أنّه ليس هناك مساحة في المخزن المؤقت للإدخال، أو أنّه تم تلقّي حرف بعد حرف نهاية الملف (EOF).

"parity_error"
رصد الجهاز خطأ في التكافؤ.

"system_error"
حدث خطأ في النظام وقد يكون الاتصال غير قابل للاسترداد.

ReceiveErrorInfo

أماكن إقامة

  • connectionId

    الرقم

    معرِّف الاتصال.

  • خطأ

    رمز خطأ يشير إلى الخطأ الذي حدث.

ReceiveInfo

أماكن إقامة

  • connectionId

    الرقم

    معرِّف الاتصال.

  • البيانات

    مخزن المصفوفات

    البيانات المستلمة.

SendError

Enum

"غير متّصل"
انقطاع الاتصال.

"في انتظار المراجعة"
كانت هناك عملية إرسال معلّقة.

"timeout"
انتهت مهلة الإرسال.

"system_error"
حدث خطأ في النظام وقد يكون الاتصال غير قابل للاسترداد.

SendInfo

أماكن إقامة

  • bytesSent

    الرقم

    عدد وحدات البايت التي تم إرسالها.

  • خطأ

    SendError اختياري

    رمز خطأ في حال حدوث خطأ.

StopBits

Enum

"واحد"

"اثنان"

الطُرق

clearBreak()

وعود الإصدار 45 من Chrome والإصدارات الأحدث
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

استعادة نقل الأحرف عند اتصال معين ووضع خط الإرسال في حالة غير فاصلة.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

connect()

وعود
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

يتصل بمنفذ تسلسلي معين.

المعلمات

  • المسار

    سلسلة

    مسار النظام للمنفذ التسلسلي المراد فتحه.

  • الخيارات

    ConnectionOptions اختيارية

    خيارات ضبط المنفذ

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfo: ConnectionInfo) => void

المرتجعات

  • Promise<ConnectionInfo>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

disconnect()

وعود
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

يتم إلغاء الربط بمنفذ تسلسلي.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

flush()

وعود
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

مسح جميع وحدات البايت في المخزن المؤقت للإدخال والإخراج للاتصال المحدد.

المعلمات

  • connectionId

    الرقم

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

getConnections()

وعود
chrome.serial.getConnections(
  callback?: function,
)

لاسترداد قائمة اتصالات المنافذ التسلسلية المفتوحة حاليًا التي يملكها التطبيق.

المعلمات

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfos: ConnectionInfo[]) => void

المرتجعات

  • Promise<ConnectionInfo[]>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

getControlSignals()

وعود
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

يسترد حالة إشارات التحكم على اتصال معين.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (signals: DeviceControlSignals) => void

المرتجعات

  • Promise<DeviceControlSignals>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

getDevices()

وعود
chrome.serial.getDevices(
  callback?: function,
)

عرض معلومات حول الأجهزة التسلسلية المتاحة على النظام وتتم إعادة إنشاء القائمة في كل مرة يتم فيها استدعاء هذه الطريقة.

المعلمات

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (ports: DeviceInfo[]) => void

المرتجعات

  • Promise<DeviceInfo[]>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

getInfo()

وعود
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

يسترد حالة اتصال معين.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connectionInfo: ConnectionInfo) => void

المرتجعات

  • Promise<ConnectionInfo>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

send()

وعود
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

تكتب البيانات إلى الاتصال المحدد.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • البيانات

    مخزن المصفوفات

    البيانات المراد إرسالها.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (sendInfo: SendInfo) => void

المرتجعات

  • Promise<SendInfo>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

setBreak()

وعود الإصدار 45 من Chrome والإصدارات الأحدث
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

يعلّق نقل الأحرف في اتصال معين ويضع خط الإرسال في حالة فاصل حتى يتم استدعاء clearBreak.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

setControlSignals()

وعود
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

تضبط حالة إشارات التحكّم على اتصال معيّن.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال.

  • الإشارات

    تتغير مجموعة الإشارة لإرسالها إلى الجهاز.

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise<boolean>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

setPaused()

وعود
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

لإيقاف اتصال مفتوح مؤقتًا أو إلغاء الإيقاف المؤقت.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • متوقفة مؤقتًا

    منطقي

    وضع علامة للإشارة إلى ما إذا كان يجب الإيقاف المؤقت أو إلغاء الإيقاف المؤقت

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • وعود <باطلة>

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

update()

وعود
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

يمكنك تعديل إعدادات الخيارات في اتصال مفتوح بمنفذ تسلسلي.

المعلمات

  • connectionId

    الرقم

    رقم تعريف الاتصال المفتوح.

  • الخيارات

    خيارات ضبط المنفذ

  • رد الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (result: boolean) => void

    • نتيجة

      منطقي

المرتجعات

  • Promise&lt;boolean&gt;

    الإصدار 117 من Chrome أو الإصدارات الأحدث

    لا تتوفّر الوعود إلا مع إصدار Manifest V3 والإصدارات الأحدث، وتحتاج الأنظمة الأساسية الأخرى إلى استخدام عمليات معاودة الاتصال.

فعاليات

onReceive

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

يتم رفع الحدث عند قراءة البيانات من عملية الربط.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: ReceiveInfo) => void

onReceiveError

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

تم رفع الحدث عند حدوث خطأ أثناء انتظار بيئة التشغيل للبيانات على المنفذ التسلسلي. بعد رفع قيمة هذا الحدث، قد يتم ضبط عملية الربط على "paused". لا يؤدي خطأ "timeout" إلى إيقاف الاتصال مؤقتًا.

المعلمات

  • رد الاتصال

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: ReceiveErrorInfo) => void