.\" -*- coding: UTF-8 -*- .\" Copyright 2015-2016, Alec Leamas .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH lirc 4 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم lirc \- أجهزة lirc .SH الوصف توفر الأجهزة المحرفية \fI/dev/lirc*\fP واجهة ثنائية الاتجاه منخفضة المستوى لأجهزة التحكم عن بعد بالأشعة تحت الحمراء (IR). تستطيع معظم هذه الأجهزة الاستقبال، وبعضها يستطيع الإرسال. عند استقبال البيانات أو إرسالها، يعمل المشغل في وضعين مختلفين اعتمادًا على العتاد الأساسي. .P تفك بعض الأجهزة (عادةً بطاقات التلفاز) ترميز إشارة الأشعة تحت الحمراء داخليًا وتوفر ضغطات الأزرار المفككة كقيم رموز مسح (scancode). تعمل مشغلات هذا النوع من العتاد في وضع \fBLIRC_MODE_SCANCODE\fP. عادةً لا يدعم هذا العتاد إرسال إشارات الأشعة تحت الحمراء. علاوة على ذلك، لا يمكن لهذا العتاد سوى فك ترميز مجموعة محدودة من بروتوكولات الأشعة تحت الحمراء، وعادةً ما يكون بروتوكول جهاز التحكم عن بعد المحدد المرفق مع بطاقة التلفاز مثلاً. .P يوفر عتاد آخر دفقًا من مدد النبض/الفراغ. تعمل هذه المشغلات في وضع \fBLIRC_MODE_MODE2\fP. يمكن استخدام هذا العتاد مع (تقريبًا) أي نوع من أجهزة التحكم عن بعد. يمكن أيضًا استخدام هذا النوع من العتاد في وضع \fBLIRC_MODE_SCANCODE\fP، وفي هذه الحالة ستتولى أدوات فك ترميز الأشعة تحت الحمراء في النواة فك ترميز الإشارة. يمكن كتابة أدوات فك الترميز هذه بلغة BPF الممتدة (انظر \fBbpf\fP(2)) وربطها بجهاز \fBlirc\fP. أحيانًا، يدعم هذا النوع من العتاد أيضًا إرسال بيانات الأشعة تحت الحمراء. .P .\" يسمح \fBLIRC_GET_FEATURES\fP ioctl (انظر أدناه) باستقصاء ما إذا كان الاستقبال والإرسال مدعومين، وفي أي أوضاع، من بين ميزات أخرى. .SS "قراءة الدخل باستخدام وضع LIRC_MODE_MODE2" في وضع \fBLIRC_MODE_MODE2\fP، توفر البيانات المعادة بواسطة \fBread\fP(2) قيمًا بحجم 32 بت تمثل مدة فراغ أو نبضة. تُرمّز مدة الوقت (ميكروثانية) في الـ 24 بتًا الدنيا. تشير النبضة (تُعرف أيضًا بالومضة) إلى مدة اكتشاف ضوء الأشعة تحت الحمراء، ويشير الفراغ (يُعرف أيضًا بالفجوة) إلى مدة عدم وجود أشعة تحت حمراء. إذا تجاوزت مدة الفراغ مهلة الخمول، تُسلّم حزمة مهلة خاصة، والتي تحدد نهاية الرسالة. تشير الـ 8 بتات العليا إلى نوع الحزمة: .TP 4 \fBLIRC_MODE2_SPACE\fP تعكس القيمة مدة فراغ (ميكروثانية). .TP 4 \fBLIRC_MODE2_PULSE\fP تعكس القيمة مدة نبضة (ميكروثانية). .TP 4 \fBLIRC_MODE2_FREQUENCY\fP تعكس القيمة ترددًا (هرتز)؛ انظر \fBLIRC_SET_MEASURE_CARRIER_MODE\fP ioctl. .TP 4 \fBLIRC_MODE2_TIMEOUT\fP .\" تعكس القيمة مدة فراغ (ميكروثانية). تعكس الحزمة مهلة؛ انظر \fBLIRC_SET_REC_TIMEOUT_REPORTS\fP ioctl. .TP 4 \fBLIRC_MODE2_OVERFLOW\fP واجه مستقبل الأشعة تحت الحمراء تجاوزًا للسعة، ونتيجة لذلك فُقدت البيانات (منذ لينكس 5.18). .SS "قراءة الدخل باستخدام وضع LIRC_MODE_SCANCODE" .\" في وضع \fBLIRC_MODE_SCANCODE\fP، تعكس البيانات المعادة بواسطة \fBread\fP(2) ضغطات الأزرار المفككة، في البنية \fIlirc_scancode\fP. يُخزن رمز المسح في حقل \fIscancode\fP، ويُخزن بروتوكول الأشعة تحت الحمراء في \fIrc_proto\fP. يحتوي هذا الحقل على إحدى قيم \fIenum\ rc_proto\fP. .SS "كتابة الخرج باستخدام وضع LIRC_MODE_PULSE" البيانات المكتوبة إلى الجهاز المحرفي باستخدام \fBwrite\fP(2) هي تسلسل نبض/فراغ من قيم صحيحة. تُعلم النبضات والفراغات ضمنيًا فقط من خلال مواقعها. يجب أن تبدأ البيانات وتنتهي بنبضة، وبالتالي يجب أن تتضمن دائمًا عددًا فرديًا من العينات. تُعطل وظيفة \fBwrite\fP(2) حتى تُرسل البيانات بواسطة العتاد. إذا وُفرت بيانات أكثر مما يمكن للعتاد إرساله، يفشل استدعاء \fBwrite\fP(2) بالخطأ \fBEINVAL\fP. .SS "كتابة الخرج باستخدام وضع LIRC_MODE_SCANCODE" يجب أن تكون البيانات المكتوبة إلى الأجهزة المحرفية بنية واحدة من النوع \fIlirc_scancode\fP. يجب ملء حقلي \fIscancode\fP و \fIrc_proto\fP، ويجب أن تكون جميع الحقول الأخرى 0. ستحول أدوات ترميز الأشعة تحت الحمراء في النواة رمز المسح إلى نبضات وفراغات. البروتوكول أو رمز المسح غير صالح، أو أن جهاز \fBlirc\fP لا يمكنه الإرسال. .SH "أوامر IOCTL" .nf #include /* انظر قسم العلل */ \& int ioctl(int fd, int cmd, int *val); .fi .P يوفر الجهاز المحرفي \fBlirc\fP عمليات \fBioctl\fP(2) التالية لاستقصاء أو تغيير إعدادات عتاد \fBlirc\fP محددة. .SS "الأوامر المدعومة دائمًا" تدعم أجهزة \fI/dev/lirc*\fP الأوامر التالية دائمًا: .TP 4 \fBLIRC_GET_FEATURES\fP (\f[I]void\fR) يعيد قناع بتات من بتات الميزات المجمعة؛ انظر FEATURES. .P .\" إذا أعاد جهاز رمز خطأ لـ \fBLIRC_GET_FEATURES\fP، فمن الآمن افتراض أنه ليس جهاز \fBlirc\fP. .SS "الأوامر الاختيارية" تدعم بعض أجهزة \fBlirc\fP الأوامر المدرجة أدناه. مالم يُذكر خلاف ذلك، تفشل هذه العمليات بالخطأ \fBENOTTY\fP إذا كانت العملية غير مدعومة، أو بالخطأ \fBEINVAL\fP إذا فشلت العملية أو وُفرت وسائط غير صالحة. إذا لم يعلن المشغل عن دعم ميزات معينة، سيفشل استدعاء ioctls المقابل لها بالخطأ \fBENOTTY\fP. .TP \fBLIRC_GET_REC_MODE\fP (\f[I]void\fR) إذا لم يكن لجهاز \fBlirc\fP مستقبل، تفشل هذه العملية بالخطأ \fBENOTTY\fP. بخلاف ذلك، فإنها تعيد وضع الاستقبال، والذي سيكون واحدًا من: .RS .TP \fBLIRC_MODE_MODE2\fP يعيد المشغل تسلسلاً من مدد النبض/الفراغ. .TP \fBLIRC_MODE_SCANCODE\fP يعيد المشغل قيم بنية \fIlirc_scancode\fP، كل منها يمثل ضغطة زر مفككة. .RE .TP \fBLIRC_SET_REC_MODE\fP (\f[I]int\fR) اضبط وضع الاستقبال. \fIval\fP هو إما \fBLIRC_MODE_SCANCODE\fP أو \fBLIRC_MODE_MODE2\fP. إذا لم يكن لجهاز \fBlirc\fP مستقبل، تفشل هذه العملية بالخطأ \fBENOTTY.\fP .TP \fBLIRC_GET_SEND_MODE\fP (\f[I]void\fR) يعيد وضع الإرسال. \fBLIRC_MODE_PULSE\fP أو \fBLIRC_MODE_SCANCODE\fP مدعومان. إذا كان جهاز \fBlirc\fP لا يستطيع الإرسال، تفشل هذه العملية بالخطأ \fBENOTTY.\fP .TP \fBLIRC_SET_SEND_MODE\fP (\f[I]int\fR) اضبط وضع الإرسال. \fIval\fP هو إما \fBLIRC_MODE_SCANCODE\fP أو \fBLIRC_MODE_PULSE\fP. إذا كان جهاز \fBlirc\fP لا يستطيع الإرسال، تفشل هذه العملية بالخطأ \fBENOTTY\fP. .TP \fBLIRC_SET_SEND_CARRIER\fP (\f[I]int\fR) اضبط تردد التعديل. الوسيط هو التردد (هرتز). .TP \fBLIRC_SET_SEND_DUTY_CYCLE\fP (\f[I]int\fR) اضبط دورة تشغيل الموجة الحاملة. \fIval\fP هو رقم في النطاق [0,100] يصف عرض النبضة كنسبة مئوية من الدورة الإجمالية. حاليًا، لا يوجد معنى خاص محدد للقيم 0 أو 100، ولكن القيم محجوزة للاستخدام المستقبلي. .TP \fBLIRC_GET_MIN_TIMEOUT(\fP\fIvoid\fP\fB)\fP .TQ \fBLIRC_GET_MAX_TIMEOUT(\fP\fIvoid\fP\fB)\fP تحتوي بعض الأجهزة على مؤقتات داخلية يمكن استخدامها لاكتشاف عدم وجود نشاط للأشعة تحت الحمراء لفترة طويلة. يمكن أن يساعد ذلك \fBlircd\fP(8) في اكتشاف انتهاء إشارة الأشعة تحت الحمراء ويمكنه تسريع عملية فك الترميز. تعيد هذه العمليات قيمًا صحيحة بالحد الأدنى/الأقصى للمهلة التي يمكن ضبطها (ميكروثانية). تحتوي بعض الأجهزة على مهلة ثابتة. لمثل هذه المشغلات، سيفشل \fBLIRC_GET_MIN_TIMEOUT\fP و \fBLIRC_GET_MAX_TIMEOUT\fP بالخطأ \fBENOTTY\fP. .TP \fBLIRC_SET_REC_TIMEOUT\fP (\f[I]int\fR) اضبط القيمة الصحيحة لمهلة خمول الأشعة تحت الحمراء (ميكروثانية). لكي تُقبل، يجب أن تكون القيمة ضمن الحدود المحددة بواسطة \fBLIRC_GET_MIN_TIMEOUT\fP و \fBLIRC_GET_MAX_TIMEOUT\fP. تعطل القيمة 0 (إذا كان العتاد يدعم ذلك) جميع مهلات العتاد ويجب الإبلاغ عن البيانات في أقرب وقت ممكن. إذا لم يمكن ضبط القيمة بالضبط، فيجب ضبط القيمة التالية الممكنة \fIالأكبر\fP من القيمة المعطاة. .TP \fBLIRC_GET_REC_TIMEOUT\fP (\f[I]void\fR) يعيد مهلة الخمول الحالية (ميكروثانية). متاح منذ لينكس 4.18. .TP \fBLIRC_SET_REC_TIMEOUT_REPORTS\fP (\f[I]int\fR) مكّن (\fIval\fP هو 1) أو عطّل (\fIval\fP هو 0) حزم المهلة في \fBLIRC_MODE_MODE2\fP. تنوع سلوك هذه العملية عبر إصدارات النواة: .RS .IP \[bu] 3 منذ لينكس 5.17: حزم المهلة مُمكّنة دائمًا وهذا الـ ioctl لا يقوم بأي عملية. .IP \[bu] منذ لينكس 4.16: حزم المهلة مُمكّنة مبدئيًا. في كل مرة يُفتح فيها جهاز \fBlirc\fP، يمكن استخدام عملية \fBLIRC_SET_REC_TIMEOUT\fP لتعطيل (وإعادة تمكين، إذا رُغب في ذلك لاحقًا) المهلة على واصف الملف. .IP \[bu] في لينكس 4.15 وما قبله: حزم المهلة مُعطلة مبدئيًا، وتمكينها (عبر \fBLIRC_SET_REC_TIMEOUT\fP) على أي واصف ملف مرتبط بجهاز \fBlirc\fP يؤدي إلى تمكين المهلات لجميع واصفات الملفات التي تشير إلى ذلك الجهاز (حتى تُعطل المهلات مرة أخرى). .RE .TP \fBLIRC_SET_REC_CARRIER\fP (\f[I]int\fR) اضبط الحد الأعلى لتردد الموجة الحاملة للاستقبال (هرتز). انظر \fBLIRC_SET_REC_CARRIER_RANGE\fP. .TP \fBLIRC_SET_REC_CARRIER_RANGE\fP (\f[I]int\fR) يضبط الحد الأدنى لتردد الموجة الحاملة للاستقبال (هرتز). لكي يسري ذلك، اضبط أولاً الحد الأدنى باستخدام \fBLIRC_SET_REC_CARRIER_RANGE\fP ioctl، ثم الحد الأعلى باستخدام \fBLIRC_SET_REC_CARRIER\fP ioctl. .TP \fBLIRC_SET_MEASURE_CARRIER_MODE\fP (\f[I]int\fR) مكّن (\fIval\fP هو 1) أو عطّل (\fIval\fP هو 0) وضع القياس. إذا مُكّن، فمنذ ضغطة المفتاح التالية، سيرسل المشغل حزم \fBLIRC_MODE2_FREQUENCY\fP. مبدئيًا، يجب إيقاف تشغيل هذا. .TP \fBLIRC_GET_REC_RESOLUTION\fP (\f[I]void\fR) يعيد دقة المشغل (ميكروثانية). .TP \fBLIRC_SET_TRANSMITTER_MASK\fP (\f[I]int\fR) مكّن مجموعة أجهزة الإرسال المحددة في \fIval\fP، والتي تحتوي على قناع بتات حيث يكون كل جهاز إرسال مُمكّن هو 1. يُرمّز جهاز الإرسال الأول بواسطة البت الأقل أهمية، وهكذا. عند إعطاء قناع بتات غير صالح، مثلاً إذا ضُبط بت رغم أن الجهاز لا يحتوي على هذا العدد من أجهزة الإرسال، تعيد هذه العملية عدد أجهزة الإرسال المتاحة ولا تفعل شيئًا خلاف ذلك. .TP \fBLIRC_SET_WIDEBAND_RECEIVER\fP (\f[I]int\fR) تُجهّز بعض الأجهزة بمستقبل نطاق عريض خاص مخصص للاستخدام لتعلم خرج جهاز تحكم عن بعد موجود. يمكن استخدام هذا الـ ioctl لتمكين (\fIval\fP يساوي 1) أو تعطيل (\fIval\fP يساوي 0) هذه الوظيفة. قد يكون هذا مفيدًا للأجهزة التي تمتلك مستقبلات نطاق ضيق تمنع استخدامها مع أجهزة تحكم عن بعد معينة. قد تكون مستقبلات النطاق العريض أكثر دقة أيضًا. من ناحية أخرى، تكمن عيبها عادةً في تقليل مدى الاستقبال. .IP .\" ملاحظة: قد يُكّن مستقبل النطاق العريض ضمنيًا إذا مكّنت تقارير الموجة الحاملة. في هذه الحالة، سيُعطل بمجرد تعطيل تقارير الموجة الحاملة. محاولة تعطيل مستقبل نطاق عريض أثناء نشاط تقارير الموجة الحاملة لن تفعل شيئًا. .SH الميزات يعيد \fBLIRC_GET_FEATURES\fP ioctl قناع بتات يصف ميزات المشغل. قد تُعاد البتات التالية في القناع: .TP \fBLIRC_CAN_REC_MODE2\fP المشغل قادر على الاستقبال باستخدام \fBLIRC_MODE_MODE2\fP. .TP \fBLIRC_CAN_REC_SCANCODE\fP المشغل قادر على الاستقبال باستخدام \fBLIRC_MODE_SCANCODE\fP. .TP \fBLIRC_CAN_SET_SEND_CARRIER\fP يدعم المشغل تغيير تردد التعديل باستخدام \fBLIRC_SET_SEND_CARRIER\fP. .TP \fBLIRC_CAN_SET_SEND_DUTY_CYCLE\fP يدعم المشغل تغيير دورة التشغيل باستخدام \fBLIRC_SET_SEND_DUTY_CYCLE\fP. .TP \fBLIRC_CAN_SET_TRANSMITTER_MASK\fP يدعم المشغل تغيير جهاز (أو أجهزة) الإرسال النشطة باستخدام \fBLIRC_SET_TRANSMITTER_MASK\fP. .TP \fBLIRC_CAN_SET_REC_CARRIER\fP يدعم المشغل ضبط تردد الموجة الحاملة للاستقبال باستخدام \fBLIRC_SET_REC_CARRIER\fP. يجب أن يكون لأي جهاز \fBlirc\fP منذ دمج المشغلات في لينكس 2.6.36 ميزة \fBLIRC_CAN_SET_REC_CARRIER_RANGE\fP مضبوطة إذا كانت ميزة \fBLIRC_CAN_SET_REC_CARRIER\fP مضبوطة. .TP \fBLIRC_CAN_SET_REC_CARRIER_RANGE\fP يدعم المشغل \fBLIRC_SET_REC_CARRIER_RANGE\fP. يجب ضبط الحد الأدنى للموجة الحاملة أولاً باستخدام \fBLIRC_SET_REC_CARRIER_RANGE\fP ioctl، قبل استخدام \fBLIRC_SET_REC_CARRIER\fP ioctl لضبط الحد الأعلى. .TP \fBLIRC_CAN_GET_REC_RESOLUTION\fP يدعم المشغل \fBLIRC_GET_REC_RESOLUTION\fP. .TP \fBLIRC_CAN_SET_REC_TIMEOUT\fP يدعم المشغل \fBLIRC_SET_REC_TIMEOUT\fP. .TP \fBLIRC_CAN_MEASURE_CARRIER\fP يدعم المشغل قياس تردد التعديل باستخدام \fBLIRC_SET_MEASURE_CARRIER_MODE\fP. .TP \fBLIRC_CAN_USE_WIDEBAND_RECEIVER\fP يدعم المشغل وضع التعلم باستخدام \fBLIRC_SET_WIDEBAND_RECEIVER\fP. .TP \fBLIRC_CAN_SEND_PULSE\fP .\" يدعم المشغل الإرسال باستخدام \fBLIRC_MODE_PULSE\fP أو \fBLIRC_MODE_SCANCODE\fP .SH العلل .\" يتطلب استخدام هذه الأجهزة ملف الترويسة المصدري للنواة \fIlirc.h\fP. هذا الملف غير متاح قبل لينكس 4.6. يمكن لمستخدمي النوى الأقدم استخدام الملف المرفق في .UR http:\://www.lirc.org .UE . .SH "انظر أيضًا" \fBir\-ctl\fP(1), \fBlircd\fP(8), \fBbpf\fP(2) .P .UR https:\://www.kernel.org/\:doc/\:html/\:latest/\:userspace\-api/\:media/\:rc/\:lirc\-dev.html .UE .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .