- المواد المطلوبة
- مقدمة موجزة لشاشة LCD ذات مصفوفة نقطية مقاس 16 × 2
- ADC في TIVA Launchpad
- مخطط الدائرة والتوصيلات
- برمجة TIVA TM4C Launchpad لشاشات LCD باستخدام Energia IDE
- شاشة LCD مقاس 16 × 2 مزودة بلوحة تشغيل TIVA
في البرنامج التعليمي السابق ، بدأنا بالتعرف على TIVA TM4C Launchpad وكيفية التحكم في دبابيس الإدخال والإخراج الرقمية باستخدام Energia IDE. الآن ، في هذا البرنامج التعليمي ، سوف نتعرف على واجهة شاشة عرض 16 × 2 Dot matrix LCD مع هذه اللوحة لعرض معلومات مفيدة وبيانات المستشعر.
شاشة LCD مقاس 16 × 2 هي أكثر ما يمكن أن يصادفه معظمنا إما من خلال أجهزة الكمبيوتر الشخصية العامة أو استخدامها في مشاريع إلكترونيات أخرى. 16x2 LCD هي وحدة عرض منخفضة التكلفة وهي سهلة الاستخدام لأي تطبيقات إلكترونية لعرض البيانات أو معلومات تصحيح الأخطاء الأخرى. لذلك نحن هنا نتعامل مع شاشة LCD مقاس 16 × 2 مع منصة الإطلاق TIVA C Series TM4C123G. سنعرض هنا قيم ADC ومستويات الجهد على شاشة LCD. يتم إرفاق مقياس الجهد لتغيير قيم ADC. تعرف على المزيد حول شاشة LCD مقاس 16 × 2 ودبابيسها هنا.
المواد المطلوبة
- TIVA TM4C LaunchPad من شركة Texas Instruments
- 16 × 2 شاشة عرض LCD مصفوفة نقطية
- توصيل الأسلاك
مقدمة موجزة لشاشة LCD ذات مصفوفة نقطية مقاس 16 × 2
كما ذكرنا سابقًا ، يوفر Energia IDE مكتبة جميلة تجعل الواجهة قطعة من الكعكة ، وبالتالي ليس من الضروري معرفة أي شيء عن وحدة العرض. لكن ، ألم يكن من المثير للاهتمام إظهار ما نستخدمه !!
يشير الاسم 16 × 2 إلى أن الشاشة بها 16 عمودًا وصفين ، والتي تشكل معًا (16 * 2) 32 صندوقًا. سيبدو مربع واحد مثل هذا في الصورة أدناه
يحتوي الصندوق الفردي على 40 بكسل (نقاط) بترتيب مصفوفة من 5 صفوف و 8 أعمدة ، وتشكل هذه الـ 40 بكسل معًا حرفًا واحدًا. وبالمثل ، يمكن عرض 32 حرفًا باستخدام كل المربعات. الآن دعونا نلقي نظرة على pinouts.
تحتوي شاشة LCD على إجمالي 16 دبوسًا ، كما هو موضح أعلاه ، يمكن تصنيفها إلى أربع مجموعات كما يلي
دبابيس المصدر (1 و 2 و 3): هذه الدبابيس مصدر الطاقة ومستوى التباين للشاشة
دبابيس التحكم (4 و 5 و 6): تقوم هذه المسامير بتعيين / التحكم في السجلات الموجودة في IC (المزيد من هذا يمكن العثور عليه في الرابط أدناه)
دبابيس البيانات / الأوامر (من 7 إلى 14): توفر هذه الدبابيس بيانات المعلومات التي يجب عرضها على شاشة LCD.
دبابيس LED (15 و 16): تستخدم هذه المسامير لتوهج الإضاءة الخلفية لشاشة LCD إذا لزم الأمر (اختياري).
من بين كل هذه المسامير الستة عشر ، يجب استخدام 10 دبابيس فقط بشكل إلزامي للعمل الصحيح لشاشة LCD إذا كنت تريد معرفة المزيد عن شاشة LCD هذه ، انتقل إلى مقالة LCD هذه.
تحقق أيضًا من توصيل شاشة LCD مقاس 16 × 2 بالعديد من وحدات التحكم الدقيقة الأخرى
- واجهة LCD مقاس 16 × 2 مع متحكم Atmega16 AVR في وضع 4 بت
- واجهة LCD مع متحكم PIC باستخدام MPLABX و XC8
- واجهة شاشة LCD مقاس 16 × 2 مع STM32F103C8T6
- واجهات LCD مع MSP430G2 LaunchPad
- واجهة LCD مع متحكم 8051
- واجهات 16x2 LCD مع Arduino
- شاشة LCD مقاس 16 × 2 مع Raspberry Pi باستخدام Python
ADC في TIVA Launchpad
يوفر مقياس الجهد إخراجًا تناظريًا لذا لا يمكن توصيله بالدبابيس الرقمية في Launchpad. لذلك يتم استخدام المسامير التناظرية أو ADC في MCU لربط أي جهاز استشعار يكون ناتجه تناظريًا في الطبيعة. يحتوي TIVA TM4C على قناتين ADC بإخراج 12 بت وهذا يعني أنه يمكن تعيين القيم التناظرية ، من المستشعر أو مقياس الجهد ، بين 0 إلى 2 ^ 12 (4096) لتحويلها إلى قيم رقمية. لمعرفة المزيد حول التحويل التناظري إلى الرقمي في وحدة التحكم الدقيقة ، اتبع الرابط.
يوجد 12 دبوس إدخال تناظري (A0-A11) في TIVA Launchpad كما هو موضح في الصورة أدناه.
مخطط الدائرة والتوصيلات
يظهر أدناه مخطط الدائرة الكامل لواجهة شاشة LCD بمصفوفة نقطية مقاس 16 × 2 مع TIVA Launchpad TM4C.
أحد القيود الرئيسية أثناء توصيل شاشات LCD هذه هو الفولتية التشغيلية. تتميز شاشة LCD بجهد تشغيل + 5 فولت بينما يعمل TM4C مع 3.6 فولت فقط. من حسن حظنا أن دبوس البيانات الخاص بواجهة LCD IC (HD44780U) لديه جهد تشغيل واسع من 2.7 فولت إلى 5.5 فولت. لذلك علينا أن نقلق فقط بشأن Vdd (دبوس 2) لشاشة LCD بينما يمكن أن تعمل دبابيس البيانات حتى مع 3.6 فولت.
لا تحتوي لوحة TIVA افتراضيًا على دبوس + 5 فولت ، لذلك يجب استخدام مصدر طاقة خارجي لجعل شاشة LCD تعمل. استخدم إما مزود الطاقة من لوحة Arduino أو استخدم منظم الجهد 7805. تأكد من توصيل أرضية مصدر الطاقة بأرض لوحة TIVA.
يوجد أدناه الجدول الذي يوضح التوصيلات بين LCD و TIVA Launchpad
اسم دبوس LCD | منصة إطلاق TIVA |
Vss | أرض |
Vdd | + 5V امدادات الطاقة |
روبية | دبوس PC_6 من TIVA |
ص / دبليو | أرض |
ممكن | دبوس PB_7 من TIVA |
د 4 | دبوس PA_2 من TIVA |
د 5 | دبوس PA_3 من TIVA |
د 6 | دبوس PA_4 من TIVA |
د 7 | دبوس PB_6 من TIVA |
لعرض قيم مقياس الجهد على شاشة LCD ، قم بتوصيل إخراج وعاء بأي دبوس تناظري (PE2).
برمجة TIVA TM4C Launchpad لشاشات LCD باستخدام Energia IDE
قبل الشروع في الشرح ، قم بتدوين الدبابيس المستخدمة في هذا المشروع. ألقِ نظرة على مخطط الدائرة ومخطط TIVA الموضح أعلاه. تم إرفاق الكود الكامل مع فيديو العمل في نهاية هذا البرنامج التعليمي.
Energia IDE ، بشكل افتراضي ، يأتي مع Library لـ 16x2 LCD (LiquidCrystal). إذا لم يكن موجودًا ، فقم بتنزيله من رابط github والصقه في مجلد مكتبات Energia IDE.
ثم ابدأ البرنامج من خلال تضمين مكتبة LCD وتحديد المسامير الخاصة بها
#تضمن
الخطوة التالية هي ل ذكر المسامير التي كان متصلا LCD ل ، ونحن وقد سميت بالفعل باستخدام رقم تعريف يمكننا الآن مجرد ذكر أسماء دبابيس LCD. تأكد من اتباع نفس الترتيب.
LiquidCrystal LCD (RS ، EN ، D4 ، D5 ، D6 ، D7) ؛
هناك العديد من أنواع شاشات LCD التي تختلف في الحجم والطبيعة ، لذلك في وظيفة الإعداد الباطل () ، حدد أولاً نوع شاشة LCD التي تستخدمها في المشروع. هنا استخدمنا شاشة LCD مقاس 16 × 2.
lcd.begin (16 ، 2) ؛
لطباعة شيء ما على شاشة LCD ، اذكر شيئين في البرنامج. أحدهما هو موضع النص الذي يمكن ذكره باستخدام سطر lcd.setCursor () والآخر هو المحتوى المراد طباعته والذي يمكن ذكره بواسطة lcd.print (). ونحن هنا وضع المؤشر إلى 1 شارع الصف و1 شارع الأعمدة.
lcd.setCursor (0،0) ؛
وبالمثل ، يمكننا القيام بذلك أيضًا
lcd.setCursor (0 ، 1) ؛ // لتعيين المؤشر إلى العمود الأول الصف الثاني
تمامًا مثل مسح السبورة بعد الكتابة عليها ، يجب أيضًا مسح شاشة LCD بمجرد كتابة شيء عليها. يمكن القيام بذلك باستخدام السطر أدناه
lcd.clear () ؛
في دالة void loop () ، خذ قيمة pot باستخدام دالة analogRead () وقم بتخزين هذه القيمة في متغير آخر ثم اعرض هذه القيمة.
sensorValue = analogRead (sensorPin) ؛ lcd.setCursor (0 ، 0) ؛ lcd.print ("قيمة ADC:") ؛ lcd.setCursor (10 ، 0) ؛ lcd.print (sensorValue) ؛
الآن ، قم بتحويل قيمة ADC إلى جهد بضربها في 3.3 لأنها أعلى جهد يمكن قبوله بواسطة دبابيس لوحات TIVA. ثم اقسم القيمة المضاعفة على 4096.
lcd.setCursor (0 ، 1) ؛ lcd.print ("الفولتية:") ؛ الفولتية = (sensorValue * 3.3) / 4096 ؛ lcd.setCursor (10 ، 1) ؛ lcd.print (الفولتية) ؛
يمكن العثور على البرنامج الكامل في النهاية.
شاشة LCD مقاس 16 × 2 مزودة بلوحة تشغيل TIVA
بمجرد أن يصبح الجهاز والرمز جاهزًا ، ما عليك سوى توصيل لوحة TIVA بالكمبيوتر وتحميل الكود في اللوحة. اتبع البرنامج التعليمي السابق لمعرفة كيفية تحميل الكود في TIVA Launchpad.
بمجرد تحميل الرمز ، يجب أن ترى الشاشة توضح ما يلي.
الآن ، قم فقط بتدوير مقياس الجهد لتغيير قيمة ADC وسترى أن قيمة الجهد المقابل ستختلف أيضًا ، كما هو موضح في الصورة أدناه.
و رمز كاملة وفيديو مفصل ويمكن الاطلاع أدناه. انطلق وحاول تغيير النص المعروض على شاشة LCD.