Sådan interface 4 × 4 tastatur med Arduino

Sådan interface 4 × 4 tastatur med Arduino

I dette indlæg skal vi lære at interface et 4x4-tastatur med Arduino. Vi skal se, hvad der er et tastatur, hvordan det er konstrueret, og hvordan man programmerer Arduino til at modtage tastetryk fra tastaturet og udskrive dem i seriel skærm.



Hvad er et tastatur?

Et tastatur er et bærbart tastatur i lille formfaktor med sæt tal, alfabeter og specialtegn eller en kombination af alle tre. I dette projekt skal vi se på 4x4 matrix tastatur, der har alle de tre typer nøgler, der er angivet ovenfor.





Det kaldes 4x4, fordi det har 4 rækker og 4 kolonner, arrangeret i matrixform. Det har tal fra 0 til 9, specialtegn '#' og '*' og alfabeter fra A til D. Der er andre typer tastaturer som 4x3, 8x8 osv. De mest almindelige typer er 4x4 og 4x3.

For 4x4-tastaturet er fire forbindelser fra rækker og fire forbindelseskolonner lavet til kommunikation med mikrokontroller, så der er totalt 8 ben.



Dette kan forbruge mange I / O-ben fra Arduino og efterlade færre antal I / O-ben til andre perifere enheder. Der er andre metoder til at modtage tastetryk ved at bruge nogle få Arduino-ben, som ikke er dækket af denne artikel.

Bygningsdetaljer:

Forbindelseskredsløbet er illustreret nedenfor:

Som vi kan udlede fra ovenstående diagram, er hver nøgle forbundet til en række og en kolonne. Når en af ​​dem er deprimeret, f.eks. Bliver nummer 1, R1 og C1 tilsluttet, modtages dette signal af arduino eller en hvilken som helst mikrocontroller og bestemmer hvilken tast der trykkes på, for hver tast oprettes der unikke forbindelser.

Vi kan få 4x4-tastatur fra e-handelswebsite eller lokal elektronikforhandler, eller du kan lave et fra diagrammet ovenfor. Du har bare brug for 16 trykknapper til 4x4-tastatur og et generelt printkort. Forbindelserne kan laves fra ovenstående diagram, og du lavede en til dig selv.

Arduino tastatur kredsløbsdiagram og program:

Sådan interface 4x4 tastatur med Arduino

Her er en prototype, hvor forbindelser foretages ved hjælp af mandlige til mandlige header-ben. Resten af ​​kredsløbet er selvforklarende.

Sådan er det forbundet til Arduino:

Bemærk: Der skal udvises forsigtighed, når stifter tilsluttes fra tastaturet til arduino, eventuelle forkert forbindelser eller udskiftede ledninger, det kan ødelægge hele dit projekt.

Alle forbindelser foretages sekventielt fra pin nr. 2 til pin nr. 9 i Arduino og tastatur. Det handler om hardwareforbindelser, lad os nu gå til kodningsdel.

Programkode:

//---------------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------//

Produktion:

Brug af tastaturet

I programmet anvendes et todimensionelt array-koncept, da vi kan se det samme layout er lavet i programmet som på tastaturet. Rækkestifterne er 9, 8, 7, 6, og stifterne er 5, 4, 3 og 2.

Vi brugte en linje 'char-tast = tastatur.waitForKey ()', hvilket betyder, at programmerne venter på, at der trykkes på en tast, og den nedtrykte tast gemmes i en variabel 'tast'. Denne variabel udskrives på den serielle skærm ved hjælp af “Serial.print ().

Hvis du undrer dig over, hvor tastaturer bruges? Nå, her er svaret. Det bruges overalt, hvor en bruger har brug for at give input til enhver maskine, for eksempel: den smartphone eller den computer, du bruger lige nu, pengeautomater, automater, printere, kontrol på din tv-fjernbetjening osv.

Nu ved du en hel del om tastaturer, og hvordan man bruger interface til en Arduino, nu er det tid til at bruge din fantasi til at opbygge dine egne projekter.

Du skal downloade og tilføje tastaturbiblioteket fra følgende link: github.com/Chris--A/Keypad. Ellers kompileres ovenstående program ikke




Forrige: Sådan genereres elektricitet fra Piezo Næste: Sunrise Sunset Simulator LED Circuit