مرحبًا يا من هناك! باعتباري موردًا لشاشات LCD مقاس 20×4، غالبًا ما يتم سؤالي عن كيفية عرض قيمة درجة الحرارة على هذه الشاشات الصغيرة الأنيقة. لذا، اعتقدت أنني سأقوم بتجميع منشور المدونة هذا لإرشادك خلال العملية برمتها.


أولاً، دعونا نتحدث قليلاً عن شاشة LCD مقاس 20x4. إنه خيار رائع للعديد من المشاريع، خاصة عندما تحتاج إلى إظهار قدر لا بأس به من المعلومات. يعني "20x4" أنه يحتوي على 20 حرفًا في كل سطر و4 أسطر إجمالاً. يمنحك ذلك مساحة كبيرة لعرض ليس فقط درجة الحرارة ولكن أيضًا بعض التفاصيل الإضافية مثل الوحدات (مئوية أو فهرنهايت)، وربما الطابع الزمني.
الآن، قبل أن نتعمق في الأمور التقنية، دعنا نذكر بسرعة بعض شاشات LCD الأخرى التي قد تكون مهتمًا بها أيضًا. إذا كنت تبحث عن شيء أصغر قليلاً، فلديناشاشة ال سي دي 16×2. إنها لعبة كلاسيكية، تحتوي على 16 حرفًا في كل سطر وسطرين. ثم هناكشاشة LCD مقاس 20 × 2، مما يمنحك عرضًا أكبر قليلاً ولكن لا يزال يتكون من سطرين فقط. وإذا كنت تريد المزيد من الارتفاع، فإنشاشة LCD مقاس 16 × 4هو خيار قوي.
حسنًا، عد إلى شاشة LCD مقاس 20x4 وعرض درجة الحرارة. أول شيء ستحتاجه هو جهاز استشعار درجة الحرارة. يوجد الكثير منها في السوق، ولكن أشهرها هو DHT11 أو DHT22. هذه المستشعرات سهلة الاستخدام نسبيًا ويمكن أن تمنحك قراءات دقيقة لدرجة الحرارة.
بمجرد حصولك على المستشعر، ستحتاج إلى توصيله بوحدة التحكم الدقيقة. سأفترض أنك تستخدم Arduino في هذا المثال، لكن المفاهيم العامة تنطبق على وحدات التحكم الدقيقة الأخرى أيضًا.
توصيل حساس الحرارة بالاردوينو
- قوة: قم بتوصيل طرف VCC الخاص بمستشعر DHT إلى طرف 5V الموجود في Arduino. وهذا يوفر الطاقة التي يحتاجها المستشعر للعمل.
- أرضي: قم بتوصيل طرف GND الخاص بالمستشعر بمنفذ GND الموجود على Arduino. هذا يكمل الدائرة الكهربائية.
- بيانات: قم بتوصيل طرف البيانات الخاص بالمستشعر بأحد الأطراف الرقمية الموجودة في Arduino. لنفترض أننا قمنا بتوصيله بالدبوس 2.
توصيل شاشة LCD 20x4 بالاردوينو
- قوة: قم بتوصيل طرف VSS الخاص بشاشة LCD بـ GND ومنفذ VDD بـ 5V.
- مقابلة: قم بتوصيل طرف VO بمقياس الجهد. يتيح لك ذلك ضبط تباين الشاشة حتى تتمكن من رؤية الأحرف بوضوح.
- دبابيس التحكم: قم بتوصيل طرف RS بالطرف الرقمي 12، والمنفذ EN بالطرف الرقمي 11، والمنافذ D4 - D7 بالمنافذ الرقمية 5 - 8 على التوالي. تُستخدم هذه المسامير لإرسال الأوامر والبيانات إلى شاشة LCD.
كتابة الكود
الآن بعد أن تم توصيل كل شيء، حان الوقت لكتابة الكود. إليك مثال أساسي:
#include <LiquidCrystal.h> #include <DHT.h> // تهيئة مكتبة LCD بأرقام دبابيس الواجهة LiquidCrystal LCD(12, 11, 5, 6, 7, 8); // تهيئة مستشعر DHT #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); إعداد الفراغ () {// قم بإعداد عدد الأعمدة والصفوف في شاشة LCD: LCD.begin(20, 4); // ابدأ تشغيل مستشعر DHT dht.begin(); } void Loop() { // قراءة درجة الحرارة أو الرطوبة تستغرق حوالي 250 مللي ثانية! // قد تصل قراءات المستشعر أيضًا إلى ثانيتين "قديمة" (وهو مستشعر بطيء جدًا) float h = dht.readHumidity(); تعويم t = dht.readTemperature(); // تحقق من فشل أي قراءة واخرج مبكرًا (للمحاولة مرة أخرى). إذا (isnan(h) || isnan(t)) {lcd.setCursor(0, 0); LCD.print("فشلت القراءة من مستشعر DHT!"); يعود؛ } // عرض درجة الحرارة على شاشة LCD LCD.setCursor(0, 0); شاشات الكريستال السائل.طباعة("درجة الحرارة:"); شاشات الكريستال السائل. طباعة (ر)؛ شاشات الكريستال السائل.طباعة("C"); تأخير (2000)؛ }
دعنا نحلل ما يحدث في هذا الكود:
- المكتبات: نحن بما في ذلك
كريستال سائلمكتبة للتحكم في شاشات الكريستال السائل ودي إتش تيمكتبة لقراءة جهاز استشعار درجة الحرارة. - التهيئة: في
يثبت()وظيفة، نقوم بتهيئة شاشة LCD بالعدد الصحيح للأعمدة والصفوف (20×4). نقوم أيضًا بتشغيل مستشعر DHT. - قراءة المستشعر: في
حلقة()وظيفة، نقرأ الرطوبة ودرجة الحرارة من جهاز استشعار DHT. إذا كانت القراءات غير صالحة، نعرض رسالة خطأ على شاشة LCD. - عرض درجة الحرارة: إذا كانت القراءات صحيحة، نضبط المؤشر على بداية السطر الأول على شاشة LCD، ونطبع النص "درجة الحرارة:"، متبوعة بقيمة درجة الحرارة والوحدة "C".
- تأخير: نضيف تأخيرًا لمدة ثانيتين قبل قراءة المستشعر مرة أخرى. وهذا يمنح المستشعر وقتًا كافيًا لأخذ قراءات دقيقة.
اعتبارات إضافية
- تحويل الوحدة: إذا كنت تريد عرض درجة الحرارة بالفهرنهايت بدلاً من الدرجة المئوية، يمكنك استخدام الصيغة التالية:
t = dht.readTemperature(true);الحقيقيالمعلمة تقولقراءة درجة الحرارة ()وظيفة لإرجاع درجة الحرارة بالفهرنهايت. - معالجة الأخطاء: في الكود أعلاه، نعرض فقط رسالة خطأ إذا كانت قراءات المستشعر غير صالحة. يمكنك إضافة معالجة أكثر تعقيدًا للأخطاء، مثل محاولة قراءة المستشعر مرة أخرى عدة مرات قبل الاستسلام.
- تنسيق العرض: يمكنك التلاعب بتنسيق العرض لجعله يبدو أجمل. على سبيل المثال، يمكنك إضافة مساحة حشو إلى قيمة درجة الحرارة بحيث تشغل دائمًا نفس عدد الأحرف.
خاتمة
وهذا كل شيء! أنت تعرف الآن كيفية عرض قيمة درجة الحرارة على شاشة LCD مقاس 20 × 4 باستخدام مستشعر Arduino ومستشعر DHT. إنه مشروع ممتع ومفيد ويمكن توسيعه بعدة طرق.
إذا كنت مهتمًا بشراء شاشات LCD مقاس 20x4 أو أي من منتجات LCD الأخرى، فنحن نود أن نسمع منك. ما عليك سوى التواصل معنا لبدء محادثة حول احتياجاتك الخاصة. نحن هنا لمساعدتك في العثور على حل العرض الأمثل لمشروعك.
مراجع
- وثائق اردوينو
- ورقة بيانات مستشعر DHT
- وثائق مكتبة LiquidCrystal
