تعلم الوحدات · الدرس 2.21

شاشة العرض (LCD1602 Module)

العودة إلى الدروس

شاشة العرض (LCD1602 Module) وأطرافها

ستتعلم توصيل شاشة حروف وأرقام بإضاءة خلفية LED. تعرض صفين، في كل منهما 16 محرفًا. تظهر مستطيلات المحارف وبكسلات كل محرف؛ الشاشة بيضاء وزرقاء ومخصصة للنص. سنشغل مثال Arduino الخاص بمكتبة LCD.

المكونات المطلوبة

شاشة العرض (LCD1602 Module)
شاشة العرض (LCD1602 Module)

الأطراف

توصيل الشاشة

المخطط الكهربائي لشاشة العرض (LCD1602 Module)
المخطط الكهربائي لشاشة العرض (LCD1602 Module)

تحتاج الشاشة ستة منافذ Arduino تهيأ مخارج رقمية، إضافة إلى 5V و GND. توجد توصيلات عديدة؛ ضع الشاشة بمحاذاة أعلى لوحة التجارب (Breadboard) لتسهيل عد الأطراف، خصوصًا إذا كان الصف 1 في الأعلى. لا تنس السلك الأصفر الطويل بين منزلق المقاومة المتغيرة (Potentiometer) والطرف 3 للشاشة؛ فهو يضبط التباين.

توصيل LCD على لوحة التجارب (Breadboard) مع المقاومة المتغيرة (Potentiometer)
توصيل LCD على لوحة التجارب (Breadboard) مع المقاومة المتغيرة (Potentiometer)

إذا وصلت الشاشة دون رؤوس توصيل، فاتبع تعليمات الدرس 3.1.

البرنامج وشرح الشاشة

قبل رفع البرنامج، تأكد من توفر مكتبة LiquidCrystal في بيئة Arduino IDE. إذا لم تكن مثبتة أو ظهرت رسالة تشير إلى مكتبة مفقودة، فاتبع خطوات التثبيت في قسم «ما هي المكتبات؟» وطرق تثبيتها في الدرس 1.5 «وميض LED وإضافة المكتبات».

افتح ملف البرنامج HelloWorld.ino من ملفات الدرس في بيئة Arduino IDE. بعد إتمام التوصيلات، وصّل لوحة أردوينو (UNO R3 Board) بالحاسوب بكابل توصيل (USB Cable)، ثم اضغط زر Upload (رفع) لنقل البرنامج إلى اللوحة وتشغيله عليها.

إذا تعذر نقل البرنامج إلى اللوحة، فراجع قسم «رفع البرنامج ومعالجة خطأ الاتصال» في الدرس 1.5 «وميض LED وإضافة المكتبات» للتحقق من اتصال USB واختيار نوع اللوحة والمنفذ التسلسلي في بيئة Arduino IDE.

بعد الرفع يجب أن تظهر hello, world ثم عداد يبدأ من 0. تأكد من إضاءة الخلفية، وأدر المقاومة المتغيرة (Potentiometer) حتى يظهر النص.

مقتطف من الشرح
#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

lcd.begin(16, 2);

lcd.print("Hello, World!");

يوجه #include المترجم إلى تضمين ملف المكتبة، ويحدد تعريف lcd المنافذ المتصلة بالشاشة. تهيئ begin() شاشة العرض (LCD1602 Module)، وتطبع print() الرسالة داخل setup().

مقتطف من الشرح
lcd.setCursor(0, 1);

lcd.print(millis()/1000);

يضبط السطر الأول موضع النص التالي عند العمود 0 والصف 1؛ يبدأ العد من 0. يعرض السطر الثاني الزمن بالثواني منذ تشغيل اللوحة أو إعادة ضبطها؛ فالدالة millis() تعيد الملي ثانية، والقسمة على 1000 تحولها إلى ثوانٍ.

الكود

HelloWorld/HelloWorld.ino

//www.elegoo.com
//2016.12.9

/*
  LiquidCrystal Library - Hello World

 Demonstrates the use of a 16x2 LCD display.  The LiquidCrystal
 library works with all LCD displays that are compatible with the
 Hitachi HD44780 driver. There are many of them out there, and you
 can usually tell them by the 16-pin interface.

 This sketch prints "Hello World!" to the LCD
 and shows the time.

  The circuit:
 * LCD RS pin to digital pin 7
 * LCD Enable pin to digital pin 8
 * LCD D4 pin to digital pin 9
 * LCD D5 pin to digital pin 10
 * LCD D6 pin to digital pin 11
 * LCD D7 pin to digital pin 12
 * LCD R/W pin to ground
 * LCD VSS pin to ground
 * LCD VCC pin to 5V
 * 10K resistor:
 * ends to +5V and ground
 * wiper to LCD VO pin (pin 3)

 Library originally added 18 Apr 2008
 by David A. Mellis
 Library modified 5 Jul 2009
 by Limor Fried (http://www.ladyada.net)
 Example added 9 Jul 2009
 by Tom Igoe
 Modified 22 Nov 2010
 by Tom Igoe

 This example code is in the public domain.

 http://www.arduino.cc/en/Tutorial/LiquidCrystal
 */

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("Hello, World!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis() / 1000);
}

ملفات الدرس والمكتبات

المكتبات المرفقة

ملفات الدرس

100%

عرض الصورة

استخدم + و− للتكبير والتصغير، أو اضغط Esc للإغلاق.