الدرس عـ 10 ـدد: شاشة عرض (Afficheur LCD 2*16)

تعتبر شاشات عرض Afficheur LCD من العناصر أكثر إستعمال عند إنجاز مشاريع و خاصة عند عرض بعض المعطيات مثل السرعة و المسافة و درجة الحرارة …
هناك عدّة أنواع من شاشات عرض و خاصة التي تستعمل مع لوحة أردوينو من حيث عدد الأسطر و اللون…

سنستعمل في هذا الدرس على شاشة عرض 16*2 و التي عدد الأسطر 2 و في كل أسطر 16 حرف

أقطاب شاشة عرض

تحتوي Afficheur LCD على عدّة أقطاب

  1. GND: يتم ربط هذا القطب بالسالب
  2. VCC: يتمّ ربط هذا القطب بالموجب
  3. V0: للتعديل على إضاءة الكتابة و يقع ربطه مع مقاوم كربوني قيمته حوالي 10 كيلوأوم
  4. RS :قطب الضبط
  5. RW: طريقة إستعمال الشّاشة بوضعية كتابة أو بوضعية قراءة و يتمّ ربطه بالسالب لإستعماله للكتابة فقط
  6. E:لتهيئة الشاشة لتلقي المعلومات
  7. DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 : هذه الأقطاب تستعمل للتراسل بالمعلومات بإستعمال 8 أقطاب (بالتوازي) و كما يمكن أن يستعمل 4 أقطاب فقط للتراسل DB4 DB5 DB6 DB7
  8. LED: أنود لإضاءة الكتابة و يربط بالموجب مع مقاوم كربوني 220 أوم
  9. LED: كاتود لإضاءة الكتابة و بربط سالب

الدّارة الكهربائيّة

في مايلي الدارة الكهربائيّة التالية

قمنا بربط RS بمنفذ عدد 3 للوحة الأردوينو
قمنا بربط E بمنفذ عدد 5 للوحة الأردوينو
قمنا بربط DB4 بمنفذ عدد 8 للوحة الأردوينو
قمنا بربط DB5 بمنفذ عدد 9 للوحة الأردوينو
قمنا بربط DB6 بمنفذ عدد 10 للوحة الأردوينو
قمنا بربط DB7 بمنفذ عدد 11 للوحة الأردوينو

يقع ربط المنافذ لوحة الأردوينو بالشاشة عرض

كتابة النص الذي يجب إظهاره و لا يتجاوز 16 حرف

تحتوي المؤشّر على سطرين أفوقين مرقّمة من 0 إلى 1
وكما يحتوي كل سطر على 16 حرف مرقّمة من 0 إلى 15
لكتابة في السطر الثاني نستعمل سطر 1 و إذا أردنا كتابة من أوّل السطر نستعمل عمود 0
و إذا لم نحدّد مكان المؤشّر يكون إفتراضي في السطر الأوّل و الحرف الأوّل (رقم العمود 0 و رقم السطر 0)

سوف تكتب كلمة “pour les eleves”(إستعملت حروف الإنقليزيّة) حسب تعيين المؤشر حسب السطر و العمود

برنابج شاشة عرض

و في ما يلي الكود الرسمي لأردوينو

#include <LiquidCrystal.h>
LiquidCrystal lcd(3,5,8,9,10,11);
void setup()
{
lcd.begin(16,2);
lcd.print("Arduino");
lcd.setCursor(1, 1);
lcd.print("pour les eleves");
}
void loop()
{
}

حول البرنامج

#include <LiquidCrystal.h>

فتح مكتبة الشاشة (هذه المكتبة تحتوي على العديد من الأسطر)

LiquidCrystal lcd(3,5,8,9,10,11);

تعيين المنافذ المستعملة

void setup()

الإعدادات البرمجة

{

بداية الإعدادات

lcd.begin(16,2);

تعيين الشاشة تتكون من 16 حرف و سطرين

lcd.print("Arduino");

كتابة كلمة Arduino في أوّل السطرو بداية من حرف الأوّل

lcd.setCursor(1, 1);

وضع المؤشّر في السطر الثانئ (رقم 1) و في المكان الثاني (رقم 1)

lcd.print("pour les eleves");

كتابة pour les eleves في مكان المؤشّر الأخير

}

نهاية الإعدادات

void loop()

البرمجة

{

بداية البرمجة

}
نهاية البرمجة

كتبت هذه الأوامر في منطقة الإعدادات حتّى تنفّذ مرّة واحة فقط

شاهد هذا الفيديو لأكثر تفاصيل حول كيفيّ إستعمال Afficheur LCD

يمكنك مشاهدة هذا التمرين عبر موقع TinKerCad

تعديل على البرنامج

يمكن تعديل في أسطر البرمجة لإظهار و إخغاء الكتابة لمهلة من زمن حوالي ثانيّة

و هذا الكود المضاف

void loop()
{
lcd.display();
delay(1000);
lcd.noDisplay();
delay(1000);
}

lcd.display();

إظهار كتابة في شاشة

delay(1000);

إنتظار ثانية

lcd.noDisplay();

إخفاء كتابة من الشاشة

delay(1000);

إنتظار ثانية

ليصبح البرمجة بإستعمال الصناديق على هذا الشكل

برنامج بلغة ++C

#include <LiquidCrystal.h>
LiquidCrystal lcd(3,5,8,9,10,11);
void setup()
{
lcd.begin(16,2);
lcd.print("Arduino");
lcd.setCursor(1, 1);
lcd.print("pour les eleves");
}
void loop()
{
lcd.display();
delay(1000);
lcd.noDisplay();
delay(1000);
}

ما الذي سيتغيّر في التمرين السابق إذا أردت كتابة السطر الأوّلكلمة Arduino بالحرف بالحرف و السّطر الثاني تبقى نفسها

تكتب الكلمة Arduino حرفا حرف أي تكتب حرف A ثمّ مهلة من الزمن و تكتب حرف r ثمّ مهلة من الزمن وتكتب حرف d ثمّ مهلة من الزمن وتكتب حرف u ثمّ مهلة من الزمن وتكتب حرفi ثمّ مهلة من الزمن وتكتب حرف n ثمّ مهلة من الزمن وتكتب حرف o ثمّ مهلة من الزمن

و هذا كود للبرنامج

#include <LiquidCrystal.h>
LiquidCrystal lcd(3,5,8,9,10,11);
void setup()
{
lcd.begin(16,2);
lcd.print("A");
delay(500);
lcd.print("r");
delay(500);
lcd.print("d");
delay(500);
lcd.print("u");
delay(500);
lcd.print("i");
delay(500);
lcd.print("n");
delay(500);
lcd.print("o");
delay(500);
lcd.setCursor(1, 1);
lcd.print("pour les eleves");
}
void loop()
{
lcd.display();
delay(500);
lcd.noDisplay();
delay(500);
}

يمكنك مشاهدة هذا التمرين عبر موقع TinKerCad

لمحي الشاشة من الكتابة نستعمل فسخ شاشة العرض التسلسلي

lcd.clear();


أي إستفسار أو إقتراحات الرجاء إضغط هنا


هل تعلم
من بين الأنواع لوحات أردوينو نجد أردوينو دوو   Arduino Due وهي متشابة مع أردوينو Méga في عدد المنافذ و الحجم . و تختلف في micro contrôleur و الذي يكمل بسرعة 84MHz.
كما إنّه يعمل بجهد 3.3 فولط خلاف 5 فولط مثل لوحة الأردوينو Uno و Méga.و هذا ممّا يسبّب لنا إشكال في المكوّنات الإلكترونيّة التي تعمل مع أردويو المتعارف عليه.