كيفية عرض حروف keypad على شاشة lcd

0
بسم الله الرحمن الرحيم
يعد هذا المشرروع التى الغرض منها جذب الإنتباه ليس الا
يعد استخدام لوحة كيبورد مع الشاشة LCD يعد من افضل التطبيقات الخاصة بالأردوينو
فسنقوم اليوم بتصميم جهاز يقوم بعرض مخارج لوحة الكيبورد وعرضها على شاشة LCD
اولا الأدوات
keypad
arduino
lcd
wires
لوحة keypad 
هى تتكون من عدة سويتشات بحيث الضغط على كل سويتش ينتج منه اشارة كهربائية 
يمكنك عرض ما تشاء من هذه الإشارة فمثلا 
عند الضغط على الرقم 1 يمكننا عرض الرقم واحد او عرض اى رقم اخر فهذا الأمر يعود لنا
تتكون من ثمانى مخارج 
row1,row2,row3.row4
col1.col2,col3,col4
او بإختصار اربعة منافذ للتحكم فى الصفوف وأربعة للتحكم فى العمدان

lcd 
هذه تعتبر من احد الشاشات التى تتعامل مع الأردوينو ويمكن عرض عليها اي بيانات تتميز بسهولة الإستخدام والتوصيل

بالنسبة للأردوينو فأى نوع هو كافى ووافى

ثانيا التوصيلات :

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

ثالثا الكود

الكود ليس بمعقد بالمره وسنقوم بشرح كل جزء فيه فى الدروة التدريبية التى  نقدمها لتعلم الأردوينو

حيث قمت بإضافة مكتبة Keypad.h
لكى استطيع التعامل مع key pad
وقمت بإضافة مكتبة LiquidCrystal.h
للتعامل مع شاشة lcd 
بعد ذلك قمت بتعريف الشاشة داخل المكتبة عن طريق امر

LiquidCrystal lcd(rs,en,d4,d5,d6,d7);

keypad وقمت بكتابة عدد السطور الخاصة
وعدد الأعمدة الخاصة keypad
const byte rows = 4;
const byte cols = 4;
 خاصتى تحتوى على اربعة صفوف واربعة أعمدة keypad حيث ان 

 keypadبعد ذلك قمت بتعريف مصفوفة تتكون من عدد الأسطر والأعمدة الخاصة ب
char keys[4][4]={....};
keypad ووضع داخلها الحروف والأرقام التى هى موجودة على
بعد ذلك قمت بعمل مصفوفتين تحتويان على المنافذ الخاصة بالصفوف والأعمدة الخاصة ب keypad
يجب تجربة الحروف التى فى مصفوفة keys
لانها قد تختلف من لوحة الى لوحة 

byte ROWpin[4]={.....};
byte COLpin[4]={.....};
يجب استخدام متغيرات من نوع 
byte
لتجنب الأخطاء
بعد ذلك قمت بتعريف keypad
داخل المكتبة عن طريق الأمر
Keypad kpd = kpd(makeKeymap(keys),ROWpin,COLpin,rows,cols);
 keypad فهذا هو التعريف الخاص ب


بعد ذلك قمت بتعريف حجم الشاشة عن طريق الأمر
lcd.begin(16,2);
حيث هذا الأمر تدل فيه 16 على عدد الخانات فى كل سطر
2 تدل على عدد الأسطر
بعد ذلك قمت بعمل متغير من نوع char
لأخذ فيه قيمة الزر المضغوط داخل keypad
بإستخدام الأمر
char key = kpd.getKey();
حيث تستعمل هذه الدالة لمعرفة الزر المضغوط 
بعد ذلك قمت بعمل مقارنة 
هل قيمة المتغير لا تساوى قيمة المتغير الفارغة
بإختصار هل تم ضغط اى زر على keypad
قم بطباعة ما ضغط فى key padفى شاشة lcd
بإختصار شديد يقوم هذا الكود بأخذ القراءة من لوحة key pad
وعرضها على شاشة lcd


لتحميل باقى الكود اضغط هنا
لتجربة المشروع على موقع تينكر كاد اضغط هنا

لا يوجد تعليقات

أضف تعليق