لتأسيس اتصال جيد بين عالم الإنسان وعالم الآلة ، تلعب وحدات العرض دورًا مهمًا. ولذا فهي جزء مهم من الأنظمة المدمجة. وحدات العرض - كبيرة أو صغيرة ، تعمل على نفس المبدأ الأساسي. إلى جانب وحدات العرض المعقدة مثل شاشات الرسوم والتوزيع ثلاثي الأبعاد ، يجب على المرء أن يعرف العمل مع شاشات بسيطة مثل وحدات 16 × 1 و 16 × 2. ستتألف وحدة العرض مقاس 16 × 1 من 16 حرفًا وتكون في سطر واحد. ستحتوي شاشة LCD مقاس 16 × 2 على 32 حرفًا في المجموع 16 في السطر الأول و 16 في السطر الثاني. هنا يجب أن يفهم المرء أنه في كل حرف يوجد 5 × 10 = 50 بكسل لذلك لعرض حرف واحد ، يجب أن تعمل جميع وحدات البكسل الـ 50 معًا. لكن لا داعي للقلق بشأن ذلك لأن هناك وحدة تحكم أخرى (HD44780) في وحدة العرض تقوم بمهمة التحكم في البكسل. (يمكنك رؤيته في وحدة LCD ،إنها العين السوداء في الخلف).
في هذا البرنامج التعليمي ، سنقوم بتوصيل شاشة LCD مقاس 16 × 2 مع ARDUINO UNO. على عكس لوحات التطوير العادية ، فإن توصيل شاشة LCD بـ ARDUINO أمر سهل للغاية. هنا لا داعي للقلق بشأن إرسال البيانات واستلامها. علينا فقط تحديد أرقام التعريف الشخصي وسيكون جاهزًا لعرض البيانات على شاشة LCD.
المكونات مطلوبة
الأجهزة: ARDUINO UNO ، مصدر طاقة (5 فولت) ، JHD_162ALCD (16x2LCD) ، مكثف 100 فائق التوهج.
البرنامج: Arduino IDE (اردوينو ليلاً).
مخطط الدائرة وشرحها
في 16x2 LCD ، يوجد 16 دبوسًا في الكل إذا كان هناك ضوء خلفي ، إذا لم يكن هناك ضوء خلفي ، فسيكون هناك 14 دبوسًا. يمكن للمرء أن يغادر أو يترك دبابيس الضوء الخلفي. الآن في دبابيس 14 هناك 8 دبابيس البيانات (7-14 أو D0-D7)، 2 دبابيس امدادات الطاقة (1 و 2 أو VSS و VDD أو GND و + 5V)، 3 الثالثة دبوس للسيطرة على النقيض من ذلك (VEE ضوابط كيف سميكة يجب أن تكون الأحرف معروض) ، و 3 دبابيس تحكم (RS & RW & E).
في الدائرة ، يمكنك أن تلاحظ أنني أخذت دبابيس تحكم فقط ، وهذا يعطي المرونة. لا يتم استخدام بت التباين والقراءة / الكتابة في كثير من الأحيان حتى يمكن تقصيرها إلى الأرض. هذا يضع LCD في أعلى وضع التباين والقراءة نحتاج فقط إلى التحكم في دبابيس ENABLE و RS لإرسال الأحرف والبيانات وفقًا لذلك.
فيما يلي التوصيلات التي تمت لشاشات الكريستال السائل:
PIN1 أو VSS على الأرض
PIN2 أو VDD أو VCC إلى + 5 فولت
PIN3 أو VEE على الأرض (يعطي أقصى تباين أفضل للمبتدئين)
PIN4 أو RS (تسجيل التحديد) إلى PIN0 الخاص بـ ARDUINO UNO
PIN5 أو RW (قراءة / كتابة) على الأرض (يؤدي وضع شاشة LCD في وضع القراءة إلى تسهيل الاتصال للمستخدم)
PIN6 أو E (تمكين) إلى PIN1 من ARDUINO UNO
PIN11 أو D4 إلى PIN8 من ARDUINO UNO
PIN12 أو D5 إلى PIN9 من ARDUINO UNO
PIN13 أو D6 إلى PIN10 من ARDUINO UNO
PIN14 أو D7 إلى PIN11 من ARDUINO UNO
يسمح ARDUINO IDE للمستخدم باستخدام LCD في وضع 4 بت. يمكّن هذا النوع من الاتصال المستخدم من تقليل استخدام الدبوس على ARDUINO ، على عكس الآخرين ، لا يحتاج ARDUINO إلى البرمجة بشكل منفصل لاستخدامه في وضع 4 it لأنه افتراضيًا تم إعداد ARDUINO للتواصل في وضع 4 بت. في الدائرة يمكنك أن ترى أننا استخدمنا اتصال 4 بت (D4-D7).
لذلك من مجرد الملاحظة من الجدول أعلاه ، نقوم بتوصيل 6 دبابيس من شاشة LCD بوحدة التحكم حيث تكون 4 دبابيس عبارة عن دبابيس بيانات و 2 دبابيس للتحكم.
يوضح الشكل أعلاه الرسم التخطيطي لدائرة 16x2 LCD متصلة بـ ARDUINO UNO.
العمل
لربط شاشة LCD مع ARDUINO UNO ، نحتاج إلى معرفة بعض الأشياء.
|
كما هو موضح في الجدول أعلاه ، نحتاج فقط إلى النظر في هذه الخطوط الأربعة لإنشاء اتصال بين ARDUINO و LCD.
نحتاج أولاً إلى تمكين ملف الرأس ('#include
ثانيًا ، نحتاج إلى إخبار اللوحة بنوع شاشة LCD التي نستخدمها هنا. نظرًا لأن لدينا العديد من الأنواع المختلفة لشاشات الكريستال السائل (مثل 20 × 4 و 16 × 2 و 16 × 1 وما إلى ذلك). سنقوم هنا بربط شاشة LCD مقاس 16 × 2 بـ UNO حتى نحصل على "lcd.begin (16، 2)؛". مقابل 16x1 نحصل على "lcd.begin (16، 1)؛".
في هذه التعليمات ، سنخبر اللوحة بمكان توصيل المسامير. يجب تمثيل المسامير المتصلة بالترتيب "RS، En، D4، D5، D6، D7". يتم تمثيل هذه المسامير بشكل صحيح. نظرًا لأننا قمنا بتوصيل RS بـ PIN0 وما إلى ذلك كما هو موضح في الرسم البياني للدائرة ، فإننا نمثل رقم الدبوس على اللوحة كـ "LiquidCrystal lcd (0 ، 1 ، 8 ، 9 ، 10 ، 11) ؛". يجب كتابة البيانات التي يجب عرضها على شاشة LCD كـ "cd.print (" hello، world! ")؛". باستخدام هذا الأمر ، تعرض شاشة LCD رسالة "hello، world!".
كما ترون ، لا داعي للقلق بشأن أي شيء آخر ، علينا فقط التهيئة وسيكون UNO جاهزًا لعرض البيانات. لا يتعين علينا كتابة حلقة برنامج لإرسال البيانات BYTE بواسطة BYTE هنا.
يتم شرح طريقة الاتصال بين LCD و UNO خطوة بخطوة في رمز C الوارد أدناه: