ይህ ትምህርት አካል ነው: የቁልፍ ሰሌዳዎች
ሁሉም የቁልፍ ሰሌዳ ቪዲዮዎች እዚህ ተዘርዝረዋል።
4x4 ለስላሳ ቁልፍ ሰሌዳን ከአርዱኖ ጋር እንዴት መጠቀም እንደሚቻል
በዚህ መማሪያ ውስጥ፣ ከአርዱኖ ጋር ባለ 4x4 ለስላሳ ቁልፍ ሰሌዳን እንዴት ማገናኘት እና መጠቀም እንደሚቻል እንመረምራለን። ይህ የቁልፍ ሰሌዳ አስራ ስድስት ቁልፎች ያሉት ቢሆንም ለመገናኘት ስምንት ፒኖች ብቻ ይፈልጋል፣ ይህም ለተለያዩ ፕሮጀክቶች የታመቀ እና ቀልጣፋ የግቤት መሳሪያ ያደርገዋል። በዚህ መመሪያ መጨረሻ ላይ፣ ከቁልፍ ሰሌዳው ግቤቶችን ማንበብ እና በእነዚያ ግቤቶች ላይ ተመስርተው እርምጃዎችን መቀስቀስ ይችላሉ።

ከቁልፍ ሰሌዳው ጋር ለመገናኘት የKeypad ቤተ-መጻሕፍትን እንጠቀማለን፣ ይህም የትኛው ቁልፍ እንደተጫነ በቀላሉ እንድናውቅ ያስችለናል። የምንተገብረው ፕሮግራም የተጫነውን ቁልፍ በተከታታይ መቆጣጠሪያ ላይ ያሳያል እና እንደ ቁልፍ '4' ያሉ የተወሰኑ ቁልፎች ሲጫኑ እርምጃ ይወስዳል። ለበለጠ ምስላዊ መመሪያ፣ ቪዲዮውን መመልከትዎን ያረጋግጡ (በቪዲዮው 00:00 ላይ)።
ሃርድዌር ተብራርቷል
የዚህ ፕሮጀክት ዋና አካል ባለ 4x4 ለስላሳ የቁልፍ ሰሌዳ ነው፣ እሱም በፍርግርግ የተደረደሩ 16 አዝራሮችን ያካትታል። እ প্রতিটি አዝራር በአርዱኖ ላይ ካለ የተወሰነ ፒን ጋር ይገናኛል፣ ይህም አንድ አዝራር ሲጫን እንዲያውቅ ያስችለዋል። የቁልፍ ሰሌዳው የማትሪክስ ቅኝት ዘዴን ይጠቀማል፣ በዚህም ረድፎች እና ዓምዶች የትኛው ቁልፍ እንደተጫነ ለማወቅ በቅደም ተከተል ይነቃሉ።
የቁልፍ ሰሌዳውን ለማገናኘት፣ በአርዱኖ ላይ ስምንት ዲጂታል ፒኖችን መጠቀም ያስፈልግዎታል። ረድፎቹ በተለምዶ ከፒን 2 እስከ 5 ጋር ይገናኛሉ፣ ዓምዶቹ ደግሞ ከፒን 6 እስከ 9 ጋር ይገናኛሉ። ይህ አደረጃጀት አርዱኖ የእያንዳንዱን ቁልፍ ሁኔታ ውጤታማ በሆነ መንገድ እንዲያነብ ያስችለዋል።
የዳታሼት ዝርዝሮች
| ስፋት | 69ሚሜ |
|---|---|
| ርዝመት | 76ሚሜ |
| የኬብል ርዝመት | 84ሚሜ |
| የኮኔክተር ስፋት | 20ሚሜ |
| የኮኔክተር ቀዳዳ ክፍተት | 2.56ሚሜ |
- የተሳሳተ ንባብ ለማስቀረት የረድፍ እና የዓምድ ፒኖች ትክክለኛ ሽቦ መሆኑን ያረጋግጡ።
- የግቤት ንባቦችን ለማረጋጋት አስፈላጊ ከሆነ የመጎተት-ወደላይ ተቃዋሚዎችን ይጠቀሙ።
- ለአንድ ጫና ብዙ ንባቦችን ለማስቀረት ቁልፎችን በሶፍትዌር ውስጥ ያረጋግጡ (ዴቦንስ)።
- ተግባራዊነቱን ለማረጋገጥ እያንዳንዱን ቁልፍ በተናጠል ይሞክሩ።
- አፈጻጸሙን ለመጠበቅ የቁልፍ ሰሌዳውን ደረቅ እና ንጹህ ያድርጉት።
የሽቦ መመሪያዎች

ባለ 4x4 የቁልፍ ሰሌዳውን ከአርዱኖ ጋር ለማገናኘት፣ የቁልፍ ሰሌዳውን የረድፍ ፒኖች በአርዱኖ ላይ ካሉት ዲጂታል ፒኖች ጋር እንደሚከተለው ያገናኙ፡ የመጀመሪያውን ረድፍ ከፒን 2፣ ሁለተኛውን ረድፍ ከፒን 3፣ ሦስተኛውን ረድፍ ከፒን 4፣ እና አራተኛውን ረድፍ ከፒን 5 ጋር ያገናኙ። ለዓምድ ፒኖች፣ የመጀመሪያውን ዓምድ ከፒን 6፣ ሁለተኛውን ዓምድ ከፒን 7፣ ሦስተኛውን ዓምድ ከፒን 8፣ እና አራተኛውን ዓምድ ከፒን 9 ጋር ያገናኙ።
ይህ ውቅር አርዱኖ በረድፎች እና ዓምዶች ላይ በብቃት እንዲቃኝ ያስችለዋል። እያንዳንዱ ፒን ከተመደበው ረድፍ ወይም ዓምድ ጋር በትክክል መዛመዱን ለማረጋገጥ ግንኙነቶቹን ሁለት ጊዜ መፈተሽዎን ያረጋግጡ። በቪዲዮው ውስጥ፣ አማራጭ የሽቦ ውቅሮች በአጭሩ ተብራርተዋል (በቪዲዮው 01:15 ላይ)። በተለየ መንገድ ለማገናኘት ከመረጡ፣ በኮዱ ውስጥ ያሉትን የፒን ቁጥሮች በዚሁ መሠረት ያዘምኑ።
የኮድ ምሳሌዎች እና ማብራሪያ
በኮዱ ውስጥ፣ የKeypad ቤተ-መጻሕፍትን በማካተት እና የቁልፍ ሰሌዳውን አቀማመጥ በመግለጽ እንጀምራለን። ረድፎቹ እና ዓምዶቹ ድርድሮችን በመጠቀም ይዘጋጃሉ፣ በዚህም rowPins ከረድፎቹ ጋር የተገናኙትን ዲጂታል ፒኖች እና colPins ደግሞ ዓምዶቹን ያመለክታል።
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'}
};
በዚህ ክፍል፣ የረድፎችን እና የዓምዶችን ብዛት፣ እንዲሁም የቁልፎቹን የቁምፊ አቀማመጥ እንገልጻለን። ይህ ውቅር በነቃው ረድፍ እና ዓምድ ላይ በመመስረት የትኛው ቁልፍ እንደተጫነ ለመለየት ወሳኝ ነው።
void setup(){
Serial.begin(9600);
}
የsetup ተግባር በ9600 ባውድ መጠን የተከታታይ ግንኙነትን ያስጀምራል። ይህ የቁልፍ ጫና ውሂብን ለማረም እና ለማረጋገጥ ወደ ተከታታይ መቆጣጠሪያ ለመላክ አስፈላጊ ነው።
void loop(){
char key = keypad.getKey();
if (key){
Serial.println(key);
}
if (key =='4'){
Serial.println("ቁልፍ 4 ተጭኗል");
}
}
በloop ተግባር ውስጥ፣ keypad.getKey() በመጠቀም የተጫነ ቁልፍ መኖሩን ያለማቋረጥ እንፈትሻለን። ቁልፍ ከተጫነ፣ የቁልፍ ዋጋውን በተከታታይ መቆጣጠሪያ ላይ ያትማል። በተጨማሪም፣ ቁልፍ '4' ከተጫነ፣ ቁልፍ '4' መነቃቃቱን የሚያመለክት የተለየ መልእክት ያትማል። ይህ የኮድ ክፍል በተጠቃሚ ግቤት ላይ በመመስረት በቅጽበት መስተጋብር እንዲፈጠር ያስችላል።
ማሳያ / ምን እንደሚጠበቅ
ሁሉም ነገር ከተዘጋጀ እና ኮዱ ወደ አርዱኖዎ ከተጫነ በኋላ፣ የተጫኑት ቁልፎች በተከታታይ መቆጣጠሪያ ላይ ሲታዩ ማየት ይችላሉ። ቁልፍ '4' ከተጫነ፣ "ቁልፍ 4 ተጭኗል" የሚለው መልእክት ይታያል፣ ይህም ግቤቱ በተሳካ ሁኔታ መገኘቱን ያረጋግጣል። እንደ ተንሳፋፊ ግቤቶች ወይም የተሳሳተ ሽቦ ያሉ የተለመዱ ችግሮችን ይጠንቀቁ፣ ምክንያቱም እነዚህ የተሳሳቱ ንባቦችን ሊያስከትሉ ይችላሉ (በቪዲዮው 02:30 ላይ)።
የቪዲዮ ጊዜ አመልካቾች
- 00:00 - ለቁልፍ ሰሌዳው መግቢያ
- 01:15 - የሽቦ መመሪያዎች
- 02:30 - የኮድ ማብራሪያ እና ማሳያ
ይህ ትምህርት አካል ነው: የቁልፍ ሰሌዳዎች
- የ4x3 ቁልፍ ሰሌዳን ከአርዱኖ ጋር መጠቀም
- የአርዱኖ ኮድ እና ቪዲዮ ለአራት-ቁልፍ ቁልፍ ሰሌዳ
- አርዱኖ ኮድ እና ቪዲዮ፡ 4x4 ማትሪክስ ጥቁር ቁልፍ ሰሌዳ
- Build a Simple Electronic Lock with Keypad and LCD Using Arduino
- Controlling an 8-channel relay with a 4x3 keypad
- How to Use a 5x4 20-Key Keypad with Arduino to Detect Strings
- Lesson 67: Controlling an 8-Channel Relay with a Keypad Using Arduino
- 1602 ኤልሲዲ ቁልፍ ሰሌዳ ጋሻ፡ መሰረታዊ ኮድ
/*
* Original source: https://playground.arduino.cc/Code/Keypad
* This is the Arduino code for a 4x4 keypad.
* Watch the video for details and demo: http://youtu.be/qIDzzG2LUtg
*
* Written by Ahmad Nejrabi for Robojax Video channel: www.Robojax.com
* Date: December 18, 2017, in Ajax, Ontario, Canada
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
* This code has been downloaded from https://robojax.com
*
*/
/* @file HelloKeypad.pde
|| @version 1.0
|| @author Alexander Brevig
|| @contact alexanderbrevig@gmail.com
||
|| @description
|| | Demonstrates the simplest use of the matrix Keypad library.
|| #
*/
#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] = {2, 3, 4, 5}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {6,7,8,9}; //connect to the column pinouts of the keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup(){
Serial.begin(9600);
}
void loop(){
char key = keypad.getKey();
// Just print the pressed key
if (key){
Serial.println(key);
}
// This checks if 4 is pressed, then do something. Here we print the text, but you can control something.
if (key =='4'){
Serial.println("Key 4 is pressed");
}
}
እንደሚያስፈልግዎት ይችላል
-
አማዞንBuy 4x4 keypad from Amazonamzn.to
-
አሊኤክስፕሬስBuy soft keypad from AliExpresss.click.aliexpress.com
ምንጮች እና ምንጮች
አሁን ምንም ምንጮች የለም።