כיצד לממשק לוח מקשים 4 × 4 עם Arduino

נסה את הכלי שלנו לביטול בעיות





בפוסט זה אנו הולכים ללמוד כיצד לממשק לוח מקשים 4x4 עם ארדואינו. אנו הולכים לראות מהי לוח המקשים, כיצד הוא בנוי וכיצד לתכנת את הארדואינו לקבל הקשות מקשים על לוח המקשים ולהדפיסם בצג סדרתי.



מה זה לוח מקשים?

לוח מקשים הוא מקלדת ניידת בגורם צורה קטן עם קבוצות של מספרים, אלפבית ותווים מיוחדים או שילוב של שלושתם. בפרויקט זה אנו נסתכל על מקלדת מטריצה ​​4x4 הכוללת את כל שלושת סוגי המקשים שצוינו לעיל.

זה נקרא 4x4 כי יש לו 4 שורות ו -4 עמודות, מסודרות בצורה מטריציונית. יש לו מספרים מ -0 עד 9, תו מיוחד '#' ו- '*' ואלפביתים מ- A עד D. ישנם סוגים אחרים של מקשים כמו 4x3, 8x8 וכו '. הסוגים הנפוצים ביותר הם 4x4 ו- 4x3.



עבור לוח מקשים 4x4, ארבעה חיבורים משורות וארבעה עמודות חיבורים מיועדים לתקשורת עם מיקרו-בקר, כך שבסך הכל ישנם 8 פינים.

זה עשוי לצרוך הרבה סיכות קלט / פלט מארדואינו ולהשאיר פחות סיכות קלט / פלט לציוד היקפי אחר. ישנן שיטות אחרות לקבלת הקשות על ידי שימוש במספר פינים של ארדואינו, שאינן מכוסות במאמר זה.

פרטי בנייה:

מעגל החיבור מתואר להלן:

כפי שניתן להסיק מהתרשים לעיל, כל מקשים מחוברים לשורה ולעמודה אחת. כאשר מישהו מהם מדוכא, למשל מספר 1, R1 ו- C1 מתחבר, אות זה יתקבל על ידי ארדואינו או כל מיקרו-בקר ויקבע איזה מקש נלחץ, עבור כל מקש נוצרים חיבורים ייחודיים.

אנו יכולים להשיג לוח מקשים 4x4 מאתר מסחר אלקטרוני או מקמעונאי אלקטרוניקה מקומי, או שתוכל ליצור אחד מהתרשים לעיל. אתה רק צריך 16 כפתורי לחיצה על לוח מקשים 4x4 ולוח PCB למטרות כלליות. ניתן ליצור את החיבורים מהתרשים שלמעלה ויצרת אחד לעצמך.

תרשים מעגל של ארדואינו ומקלדת:

כיצד לממשק לוח מקשים 4x4 עם ארדואינו

הנה אב טיפוס, שבו חיבורים נעשים באמצעות סיכות כותרת זכריות לזכר. שאר המעגל מסביר את עצמו.

כך זה מחובר לארדואינו:

הערה: יש לנקוט בזהירות בעת חיבור הסיכות ממקשי המקשים לארדואינו, כל חיבור לא תקין או כל חוטים שהוחלפו, זה יכול לבלגן את כל הפרויקט שלך.

כל החיבורים מתבצעים ברצף מסיכה מספר 2 לסיכה מס '9 בארדואינו ולוח המקשים. זה הכל על חיבורי חומרה עכשיו בואו נעבור לחלק קידוד.

קוד תכנית:

//---------------Program developed by R.Girish------//
#include
const byte ROWS = 4
const byte COLS = 4
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}
byte colPins[COLS]= {5,4,3,2}
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS )
void setup(){
Serial.begin(9600)
}
void loop(){
char key = keypad.waitForKey()
delay(100)
Serial.print('You pressed: ')
Serial.println(key)
}
//---------------Program developed by R.Girish------//

תְפוּקָה:

באמצעות לוח המקשים

בתוכנית נעשה שימוש במושג מערך דו מימדי, שכן אנו יכולים לראות שאותה פריסה נעשית בתוכנית כמו בלוח המקשים. סיכות השורה הן 9, 8, 7, 6 ועמודי הסיכות הם 5, 4, 3 ו -2.

השתמשנו בשורה 'מקש char = keypad.waitForKey ()' שפירושו שהתוכניות ימתינו ללחיצה על מקש והמפתח המדוכא יישמר ב'מפתח 'משתנה. משתנה זה מודפס בצג הטורי באמצעות 'Serial.print ().

אם אתה תוהה היכן משתמשים בלוחות המקשים? ובכן, הנה התשובה. הוא משמש בכל מקום, בו המשתמש צריך לתת קלט לכל מכונה למשל: הטלפון החכם או המחשב שבו אתה משתמש כרגע, מכונות כספומט, מכונות אוטומטיות, מדפסות, פקדים בשלט הטלוויזיה שלך וכו '.

עד עכשיו, אתה יודע לא מעט על מקשים וכיצד ניתן לממשק אותם עם ארדואינו, עכשיו הגיע הזמן להשתמש בדמיון שלך כדי לבנות פרויקטים משלך.

עליך להוריד ולהוסיף את ספריית המקשים מהקישור הבא: github.com/Chris--A/Keypad. אחרת התוכנית הנ'ל לא תיאסף




קודם: כיצד לייצר חשמל מפיזו הבא: מעגל LED סימולטור שקיעה