الاثنين، 6 يوليو 2015

رؤوس الادخال التماثلية|Analog Input Pins

رؤوس الادخال التماثلية في الاردوينو


arduinoiraq

شرح يتناول رؤوس الادخال التماثلية في رقائق الاردوينو التالية (Atmega8, Atmega168, Atmega328, or Atmega1280).
محول من تماثلي الى رقمي
المتحكم Atmegaالمستخدم في اردوينو يتضمن 6 قنوات محول من تماثلي الى رقمي (A\D) analog to digital.دقه المحول هي 10 بت (10bit). الوظيفة الرئيسية للرؤوس التماثلية للكثير من مستخدمي الاردوينو هي قراءة المستشعرات التماثلية, وكذلك استخدامها بمداخل ومخارج
(GPIO) General-purpose input/output تعمل عمل نفس الرؤوس التماثلية من الرأس رقم 0 الى رقم 13.
بناء على ذلك اذا ما احتاج المستخدم رؤوس إضافية لاستخدامه والرؤوس التماثلية غير مستخدمة يمكن استخدام الرؤوس التماثلية كـGeneral-purpose input/output (GPIO).
تخطيط رؤوس التوصيل
الرؤوس التماثلية يمكن استخدامها كرؤوس رقمية باستخدام المعرف  (A0) (for analog input 0A1وA2 ...الخ. كمثال الشفرة التالية تقوم بتهيئة الرأس رقم صفر كمخرج وتضبطه على HIGH.
pinMode(A0, OUTPUT);
digitalWrite(A0, HIGH);
المقاومات الرافعه (PULLUP)
رؤوس التوصيل التماثلية تمتلك مقاومات رافعه , تطابق بعملها المقاومات في الرؤوس الرقمية. يتم تفعيلها بالأمر التالي:
digitalWrite(A0, HIGH);  // set pullup on analog pin 0

كما موضح الرأس يعمل كمدخل.
كن على علم ان تشغيل المقاومات الرافعه سيؤثر على القيم المقروءة بواسطة الدالة analogRead().
تفاصيل وتحذيرات
الامر analogReadلن يعمل بالشكل الصحيح إذا تم ضبطه مسبقاً كمخرج. اذن إذا كانت الحالة هكذا يستحب ارجاعها والضبط الراس كمدخل قبل استخدام الدالة analog read.وكذلك أيضاً اذا ضبط على القيمة HIGH وكمخرج ,المقاومات الرافعة ستفعل اذ تم إعادة الضبط كمدخل.
ورقة بيانات Atmega تحذر ايضاً من تحويل الرؤوس التماثلية في فترات زمنية متقاربة وذلك للاستخدام في صناعه A\D analog readفي رأس تماثلي اخر. وهذا يمكن ان يسبب ضوضاء كهربائية وتشويش في النظام التماثلي (في النمط الرقمي). الامر مرغوب فيه في بعض الأحيان وبعد التلاعب في الرؤوس التماثلية- (في النمط الرقمي) يجب اضافه وقت انتظار قليل (Delay) قبل استخدام analgRead  لقراءة رأس تماثلي اخر. 

0 التعليقات:

إرسال تعليق