ما هي لوحة المفاتيح وكيفية مــــواجـــهتها مــــــــع الاردويـنـــــــو اكتب تعليقُا

تم نشر هذا المشروع لجميع الأشخاص المهتمين في مجال تصنيع وابتكار المشاريع الإلكترونية والبرمجية، و نود التنويه أن موقع انا الكتروني يخلي مسؤوليته التامة في حال لم يعمل المشروع لدى العميل أو في حال الاستخدام الخاطئ للمكونات الإلكترونية والكهربائية التي قد تؤدي لحدوث الحرائق أو غيرها لا سمح الله.

ـ لوحة المفاتيح

تعد لوحات مفاتيح Matrix نوع من أنواع  لوحات المفاتيح التي نراها على الهواتف المحمولة ، والآلات الحاسبة ، وأفران الميكروويف ، وأقفال الأبواب ، وما إلى ذلك أي إنها موجودة في كل مكان تقريبًا .

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

نظرة عامة على لوحة المفاتيح المرنة :

تصنع لوحات المفاتيح الغشائية من مادة غشاء رقيقة ومرنة. قد تأتي في أحجام 4 × 3 ، 4 × 4 ، 4 × 1 وما إلى ذلك . بغض النظر عن حجمها ، فإنها تعمل بنفس الطريقة .

أحد الأشياء الرائعة عنها هو أنها تأتي مع دعم لاصق حتى تتمكن من إرفاقه بأي شيء تقريبًا . عليك فقط أن تقشر ورقة التراجع .

4x3-4x4-Keypads

لنأخذ لوحة المفاتيح 4 × 4 كمثال . لديها مجموع 16 مفاتيح . يوجد أسفل كل مفتاح مفتاح غشاء خاص .

جميع مفاتيح الغشاء هذه مرتبطة ببعضها البعض مع توصيل مكونة مصفوفة من 4 × 4 شبكة .

Internal-Conductive-Traces-of-4x3-Membrane-Keypad-On-Back-Side

إذا كنت قد استخدمت 16 زر ضغط فردي ، فستحتاج إلى 17 دبوس إدخال “زر واحد لكل مفتاح” لجعلها تعمل . ومع ذلك ، في حالة استخدام لوحة مفاتيح ، ما عليك سوى 8 دبابيس متحكم (4 أعمدة و 4 صفوف) لمسح من خلال لوحة .

أطراف ومنافذ لوحة المفاتيح من النوع 4 × 3 و 4 × 4 :

أطراف غشاء لوحة المفاتيح 4 × 3 و 4 × 4  على النحو التالي .

Untitled

كيف تعمل لوحة المفاتيح وكيف تقوم بمسحها ؟

مبدأ العمل بسيط جدا . يؤدي الضغط على زر إلى قصر أحد خطوط الصفوف و أحد خطوط العمود ، مما يسمح للتيار بالتدفق بينهما . على سبيل المثال ، عند الضغط على المفتاح “4” ، يتم اختصار العمود 1 والصف 2 .

4x3-Membrane-Keypad-Working

يمكن للمتحكم الدقيق مسح هذه الخطوط لمعرفة حالة الضغط على الزر . للقيام بذلك ، فإنه يتبع الإجراء أدناه .

  1. المتحكم يعين أو يضبط  كل خطوط العمود والصف للإدخال .
  2. ثم ، تلتقط  الاشارة من الصف وتعيينه أو تعتبره دخل عالي أو مرتفع  .
  3. بعد ذلك ، يتحقق من خطوط الأعمدة واحدًا تلو الآخر .
  4. إذا ظل اتصال العمود منخفضًا ، فلن يتم الضغط على الزر الموجود في الصف .
  5. إذا كان الأمر مرتفعًا ، يعرف المتحكم الدقيق الصف الذي تم تعيينه ، وأي عمود تم اكتشافه عاليًا عند تحديده .
  6. أخيرًا ، يعرف الزر الذي تم الضغط عليه والذي يتوافق مع الصف والعمود المكتشف .

الأسلاك - ربط لوحة المفاتيح مع الاردوينو :

الآن بعد أن عرفنا كل شيء عن لوحة المفاتيح الغشائية ، يمكننا البدء في ربطها مع الاردوينو .

الاتصالات واضحة ومباشرة . ابدأ بتوصيل pin 1 من لوحة المفاتيح بالرقم 9 الرقمي على الاردوينو . استمر الآن في توصيل المنافذ إلى اليسار مثل 2 مع 8 ، 3 مع 7 ، إلخ .

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

الكود البرمجي - لوحة المفاتيح :

سوف تمنحك الاكواد التالية فهماً تامًا لكيفية اكتشاف مكابس المفاتيح باستخدام لوحة مفاتيح غشاء 4 × 3 و 4 × 4 ويمكن أن تكون بمثابة أساس لمزيد من التجارب والمشاريع العملية .

لتحميل الكود البرمجي اضغط هنا

Code for 4×3 Keypad

#include <Keypad.h>

const byte ROWS = 4; //four rows
const byte COLS = 3; //three columns

char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {5, 4, 3}; //connect to the column pinouts of the keypad

//Create an object of keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup(){
  Serial.begin(9600);
}
  
void loop(){
  char key = keypad.getKey();// Read the key
  
  // Print if key pressed
  if (key){
    Serial.print("Key Pressed : ");
    Serial.println(key);
  }
}
لتحميل الكود البرمجي اضغط هنا

Code for 4×4 Keypad

#include <Keypad.h>

const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns

char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {5, 4, 3, 2}; //connect to the column pinouts of the keypad

//Create an object of keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup(){
  Serial.begin(9600);
}
  
void loop(){
  char key = keypad.getKey();// Read the key
  
  // Print if key pressed
  if (key){
    Serial.print("Key Pressed : ");
    Serial.println(key);
  }
}

إليك كيفية ظهور الإخراج في الشاشة التسلسلية لمشروع لوحة المفاتيح .

4x3-4x4-Keypad-Arduino-interfacing-Output-On-Serial-Monitor

 هنالك مشروعين باستخدام لوحة المفاتيح يمكنك مطالعتهما بعنوان :

  1. نظام قفل للباب باستخدام لوح المفاتيح مع الاردوينو
  2. التحكم في السيرفو موتو من لوحة المفاتيح

أنتهت !!!

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *