Bincika Lambar

Lambar Arduino da Bidiyo: 4x4 Matrix Black Keypad

Lambar Arduino da Bidiyo: 4x4 Matrix Black Keypad

A cikin wannan koyawa, za mu bincika yadda ake amfani da madannin matrix 4x4 tare da Arduino don aiwatar da ayyuka bisa ga latsa maɓallai. Madannin yana ba ka damar shigar da ƙimomi, kamar '6', 'A', 'B', 'D', da aiwatar da takamaiman ayyuka lokacin da aka latsa waɗannan maɓallan. Ta hanyar bin jagorar, za ka koyi yadda ake saita madannin da rubuta lambar da ake buƙata don mu'amala da shi yadda ya kamata. Don ƙarin bayani, tabbatar ka duba bidiyon (a cikin bidiyo a 00:00).

Bayanin Kayan Aiki

Madannin matrix 4x4 ya ƙunshi maɓallai 16 da aka tsara a cikin grid 4x4. Kowane latsa maɓalli yana haɗa layuka da ginshiƙai na musamman, wanda ke ba da damar microcontroller ya gane wane maɓalli aka latsa. An haɗa madannin zuwa Arduino ta amfani da fil ɗin dijital, waɗanda za a saita su a cikin lambar don karanta latsa maɓallai.

A cikin wannan aikin, za mu yi amfani da ɗakin karatu na Keypad, wanda ke sauƙaƙa tsarin karanta shigarwa daga madannin. Ɗakin karatu yana sarrafa dabilar bincika layuka da ginshiƙai, yana sauƙaƙa maka ka mai da hankali kan aikin aikinka.

Bayanan Datasheet

Mai ƙeraJanar
Lambar sashiMadannin Matrix 4x4
Wutar Logic/IO5 V
Tsawon rayuwar maɓalliLatsa 1,000,000
Girman68.5 mm x 9.8 mm
Nauyi23 g

  • Haɗa fil ɗin layuka zuwa fil ɗin dijital 2-5.
  • Haɗa fil ɗin ginshiƙai zuwa fil ɗin dijital 6-9.
  • Tabbatar da ingantaccen waya don guje wa kuskuren karatu.
  • Yi amfani da resistors na pull-up idan an buƙata don kwanciyar hankali.
  • Dakatar da latsa maɓallai a cikin software don guje wa karatu da yawa.

Umarnin Waya

Don haɗa madannin matrix 4x4 zuwa Arduino, fara da haɗa fil ɗin layuka. Haɗa fil ɗin layuka na farko zuwa fil ɗin dijital 5, fil ɗin layuka na biyu zuwa 4, fil ɗin layuka na uku zuwa 3, da fil ɗin layuka na huɗu zuwa 2. Na gaba, haɗa fil ɗin ginshiƙai, farawa da fil ɗin ginshiƙai na farko zuwa fil ɗin dijital 9, fil ɗin ginshiƙai na biyu zuwa 8, fil ɗin ginshiƙai na uku zuwa 7, da fil ɗin ginshiƙai na huɗu zuwa 6. Wannan saitin yana bin tsarin waya daga dama zuwa hagu kamar yadda aka bayyana a cikin bidiyon (a cikin bidiyo a 00:00).

Tabbatar da amintaccen haɗa wayoyi zuwa madannin da Arduino don hana haɗin da ba su da ƙarfi. Kana iya amfani da female headers don sauƙaƙa haɗin. Idan kana amfani da breadboard, tabbatar da cewa duk haɗin sun zauna da ƙarfi.

Misalan Lamba & Bayani

Lambar da ke gaba tana fara madannin kuma tana saita sadarwar serial. Wannan yana ba ka damar ganin wane maɓalli aka latsa a cikin serial monitor.

#include 

const byte ROWS = 4; //layuka huɗu
const byte COLS = 4; //ginshiƙai huɗu
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

A cikin wannan ɓangaren, mun ayyana adadin layuka da ginshiƙai kuma mun ƙirƙiri tsararrun haruffa keys wanda ke taswirar maɓallan a kan madannin. Wannan tsarar za a yi amfani da ita don gane wane maɓalli aka latsa.

void setup(){
  Serial.begin(9600);
}

A cikin aikin setup, mun fara sadarwar serial a ƙimar baud 9600. Wannan yana ba mu damar buga latsa maɓallai zuwa serial monitor don gyara kurakurai da dubawa.

void loop(){
  char key = keypad.getKey();
  if (key){
    Serial.print("Key ");
    Serial.print(key);
    Serial.println(" is pressed");
  } 
}

Aikin loop yana ci gaba da duba latsa maɓallai ta amfani da keypad.getKey(). Idan an latsa maɓalli, yana buga ƙimar maɓallin zuwa serial monitor. Wannan shine inda za ka ga amsawar lokaci-lokaci na shigarwarka.

4x4 matrix black keypad

Nuni / Abin da Za Ka Yi Tsammani

Da zarar waya da lambar sun kasance daidai, ya kamata ka ga latsa maɓallai suna nunawa a cikin serial monitor. Latsa '4' zai haifar da takamaiman aiki, wanda za ka iya keɓancewa a cikin lambar. Wannan saitin yana ba da damar aikace-aikace daban-daban, kamar sarrafa na'urori bisa ga shigarwar mai amfani. Yi hattara da jujjuya polarity kuma tabbatar da cewa duk haɗin sun amintu don guje wa matsaloli (a cikin bidiyo a 00:00).

Lokutan Bidiyo

  • 00:00 Gabatarwa
  • 01:30 Haɗa madannin
  • 02:45 Bayanin lamba
  • 04:00 Nuni na latsa maɓallai

Hotuna

4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad
4x4 matrix black keypad  back
4x4 matrix black keypad back
4x4 matrix black keypad
4x4 matrix black keypad dimensions
4x4 matrix black keypad
4x4 matrix black keypad
92-Arduino Code for 4x4 Black hard key keypad
Harshe: C++
/*
 * Original source: https://playground.arduino.cc/Code/Keypad
 * This is the Arduino code for a 4x4 keypad.
 * Watch the video for details and demo: https://youtu.be/1rfrvOTxtrg	
 *  * 
 * Written by Ahmad S. for Robojax Video channel www.Robojax.com
resources page for this code robojax.com/RJT75
 * Date: April 15, 2018, 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'}
};

// connect the pins from right to left to pins 2, 3, 4, 5, 6, 7, 8, 9
byte rowPins[ROWS] = {5,4,3,2}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {9,8,7,6}; //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.print("Key ");
    Serial.print(key);
    Serial.println(" is pressed");
  } 
  
  // This checks if 4 is pressed, then do something. Here we print the text, but you can control something.
  if (key =='4'){
    // Do something here if 4 is pressed
    Serial.println("Key 4 is pressed -> Action");
  }
}

Abin da zaka iya bukata

Albarkatun da kuma shafukan da za a duba

Babu kayan aiki tukuna.

Fayiloli📁

Littattafan Arduino (zip)