الدالة analogRead()‎ في أردوينو

من موسوعة حسوب
اذهب إلى: تصفح، ابحث

تقرأ الدالة analogRead()‎ قيمة رجل تشابهية محدَّدة وتعيدها.

تحوي لوحة أردوينو ست قنوات (سبع قنوات في اللوحات MKR، وثمان قنوات في اللوحات Mini و Nano، وست عشرة قناة في اللوحات Mega) لتحويل الإشارات التشابهية إلى رقمية بدقة 10 بت. هذا يعني أنه ستُحوَّل قيمة الجهد التي تقع بين 0 و 5 فولط إلى قيمة عددية صحيحة مقابلة لها تقع بين 0 و 1023. بالتالي، تكون دقة عمليات قراءة القيم هي التشابهية هي: 5 فولط / 1024 وحدة، أو 0.0049 فولط بكل وحدة (يعادل 4.9mV). يمكن أن يتغيَّر المجال والدقة باستعمال الدالة analogReference()‎.

تأخذ عملية قراءة الدخل التشابهي وقتًا محدَّدًا يقارب 100 مايكرو ثانية (0.0001 ثانية) لتنتهي، لذا يجب ألا تتجاوز مرات قراءة الدخل التشابهي الحد الأقصى الذي هو 10000 قراءة في الثانية.

البنية العامة

analogRead(pin)

المعاملات

pin

عددٌ (من 0 إلى 5 في أغلب اللوحات، ومن 0 إلى 6 في اللوحات MKR، ومن 0 إلى 7 في اللوحات Mini و Nano، ومن 0 إلى 15 في اللوحات Mega) يشير إلى رجل الدخل التشابهية المراد قراءة قيمتها.

القيم المعادة

عددٌ صحيحٌ يقع بين 0 و 1023 يمثل قيمة الجهد المقابلة المقروءة من الرجل pin التشابهية.

أمثلة

مثالٌ عن قراءة جهد مقاومة متغيرة موصولة بالرجل 3 التشابهية وإظهاره على واجهة التخاطب التسلسلية:
int analogPin = 3;     // وصلت الرجل الوسطى لمقاومة متغيرة مع الرجل 3 التشابهية ووصلت
                       //  إحدى الرجلين الخارجيتين مع الأرضي والأخرى مع الجهد 5 فولط
int val = 0;           // متغير لتخزين القيمة المقروءة

void setup()
{
  Serial.begin(9600);              //  ضبط واجهة التخاطب التسلسلية
}

void loop()
{
  val = analogRead(analogPin);     // قراءة قيمة جهد المقاومة المتغيرة
  Serial.println(val);             // إطهار القيمة المقروءة
}

ملاحظات وتحذيرات

  • إن لم توصل الرجل مع أي شيء، فستعيد الدالة analogRead()‎ قيمة متقلبة تعتمد على عددٍ من العوامل مثل قيم أرجل الدخل التشابهية الأخرى، ومدى قرب يدك من اللوحة وغيرها.

انظر أيضًا

  • الدالة analogReference()‎: تهيِّئ قيمة الجهد المرجعي (reference voltage) المستعمل من أجل الدخل التشابهي (أي القيمة المستعملة بوصفها أعلى قيمة ضمن مجال القيم المدخلة).
  • الدالة analogWrite()‎: تكتب قيمةً تشابهيةً (إشارة عبر معدل عرض النبضة [PWM]) على رجل محدَّدة.
  • الدالة analogReadResolution()‎: هي دالةٌ ملحقةٌ بالواجهة البرمجية التشابهية (Analog API) مخصَّصةٌ للوحات أردوينو Due، و Zero، و MKR، إذ تُستعمَل لضبط حجم (دقة) القيمة المعادة من الدالة analogRead()‎.
  • درس تعليمي يشرح أرجل الدخل التشابهية.

مصادر