بسم الله الرحمن الرحيم
يعد هذا المشرروع التى الغرض منها جذب الإنتباه ليس الا
يعد استخدام لوحة كيبورد مع الشاشة 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
يجب تجربة الحروف التى فى مصفوفة keys
لانها قد تختلف من لوحة الى لوحة
داخل المكتبة عن طريق الأمر
لتحميل باقى الكود اضغط هنا
لتجربة المشروع على موقع تينكر كاد اضغط هنا
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
لتجربة المشروع على موقع تينكر كاد اضغط هنا
لا يوجد تعليقات
أضف تعليق