كيفية التواصل مع Arduino على الواجهة التسلسلية في C ++ على Linux؟

StackOverflow https://stackoverflow.com/questions/169194

سؤال

لدي قارئ RFID متصل بلوحة Arduino. أرغب في الاتصال بها عبر الواجهة التسلسلية ، وكلما حذفت قارئ RFID إشارة (عندما يقرأ معرف (RF)) ، أود استرداده في برنامج C ++ الخاص بي.

لدي بالفعل رمز لطباعة RFID إلى المسلسل من Arduino.

ما لا أعرفه ، هو كيفية قراءتها من C ++ في لينكس؟

لقد نظرت إلى libserial, والتي تبدو واضحة. ومع ذلك ، كيف يمكنني اطلب من برنامج C ++ رد فعل على إشارة ثم اقرأ RFID, ، بدلا من الاستماع باستمرار؟ هل هذا ضروري؟

تحرير: في معظم الأمثلة التي قرأتها ، يرسل برنامج (C ++) الإدخال ، ويتلقى الإخراج. أريد فقط الاستماع واستلام الإخراج من Arduino.

هل كانت مفيدة؟

المحلول 2

لقد وجدت مكتبة Boost :: Asio ، التي تقرأ من واجهات التسلسلية بشكل غير متزامن. Boost :: Asio Documentation

نصائح أخرى

في UNIX ، تستخدم استدعاء SELECT () لانتظار الإدخال. تعمل مكالمة SELECT () مثل النوم - باستخدام NO CPU حتى يتلقى kernel مقاطعة الجهاز وتؤدي إلى SELECT ().

http://tldp.org/howto/serial-programming-howto/index.html

ال مجال الاتصالات يحتوي جزء من قسم الواجهة في ملعب Arduino على العديد من الأمثلة على التواصل ، بما في ذلك واحد مع Arduino كما Linux Tty.

جرب ال بناء الجملة والبرامج المنتدى و تطوير البرمجيات منتدى على موقع أردوينو. كانت هناك مناقشات حول التواصل مع العديد من اللغات وأجهزة الكمبيوتر المختلفة في الماضي.

وأخيرا تحقق من يعالج و الأسلاك المواقع. تعتمد Arduino IDE على لغة المعالجة ، وبيئة الأسلاك ولوحة DEV مرتبطة بـ Arduino. يحتوي كلا الموقعين على المزيد من الأمثلة والروابط لمزيد من الموارد.

يحرر: لقد أدركت للتو أنني لم أجيب على سؤالك الفعلي. هذه كلها موارد اتصال عامة ، ولكن قد يكون لدى البعض تلميحات تجاه كيفية تنبيه الكمبيوتر لإدخال RFID جديد.

مرحبًا ، قمت بإنشاء مكتبة بسيطة لهذا: كاردوينو https://github.com/ranma1988/carduinoيمكن لـ C ++ العثور على منفذ Connect Arduino Connect Arduino ، قراءة ، الكتابة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top