4/4-näppäimistön käyttöliittymä Arduinon kanssa

Kokeile Instrumenttia Ongelmien Poistamiseksi





Tässä viestissä opimme kuinka 4x4-näppäimistö liitetään Arduinoon. Aiomme nähdä, mikä on näppäimistö, miten se on rakennettu ja miten Arduino ohjelmoidaan vastaanottamaan näppäimistön muodostavat näppäimistön ja tulostamaan ne sarjavalvontaan.



Mikä on näppäimistö?

Näppäimistö on pienikokoinen kannettava näppäimistö, jossa on joukko numeroita, aakkosia ja erikoismerkkejä tai näiden kolmen yhdistelmä. Tässä projektissa aiomme tarkastella 4x4-matriisinäppäimistöä, jossa on kaikki edellä määritellyt kolme näppäintyyppiä.

Sitä kutsutaan 4x4: ksi, koska siinä on 4 riviä ja 4 saraketta, jotka on järjestetty matriisimuodossa. Siinä on numeroita 0-9, erikoismerkit '#' ja '*' ja aakkoset A: sta D: hen. Muita näppäimistötyyppejä on 4x3, 8x8 jne. Yleisimmät tyypit ovat 4x4 ja 4x3.



4x4-näppäimistölle tehdään neljä liitäntää riveistä ja neljä liitäntäsaraketta kommunikointiin mikrokontrollerin kanssa, joten kaikkiaan 8 nastaa.

Tämä voi kuluttaa paljon Arduinon I / O-nastoja ja jättää vähemmän I / O-nastoja muille oheislaitteille, ja muita tapoja vastaanottaa näppäinpainalluksia käyttämällä muutamia Arduinon nastoja, joita ei käsitellä tässä artikkelissa.

Rakennustiedot:

Liitäntäpiiri on esitetty alla:

Kuten voimme päätellä yllä olevasta kaaviosta, kukin avain on kytketty yhteen riviin ja yhteen sarakkeeseen. Kun jokin heistä on painettuna, esimerkiksi numero 1, R1 ja C1 kytkeytyvät, arduino tai mikä tahansa mikro-ohjain vastaanottaa tämän signaalin ja määrittää, mitä näppäintä painetaan, jokaiselle näppäimelle tehdään ainutlaatuiset yhteydet.

Voimme saada 4x4-näppäimistön verkkokaupan verkkosivustolta tai paikalliselta elektroniikkakauppiaalta tai voit tehdä sellaisen yllä olevasta kaaviosta. Tarvitset vain 16 painonappia 4x4-näppäimistöä varten ja yleiskäyttöistä piirilevyä. Liitännät voidaan tehdä yllä olevasta kaaviosta ja teit sellaisen itsellesi.

Arduino-näppäimistön piirikaavio ja ohjelma:

4x4-näppäimistön käyttöliittymä Arduinon kanssa

Tässä on prototyyppi, jossa yhteydet muodostetaan käyttämällä uros-uros otsikkotappeja. Piirin loppuosa on itsestään selvä.

Näin se on kytketty Arduinoon:

Huomaa: Ole varovainen, kun nastat kytketään näppäimistöltä arduinoon, väärät liitännät tai johdot vaihdettu, se voi sotkea koko projektisi.

Kaikki liitännät tehdään peräkkäin nastasta # 2 Arduinon ja näppäimistön nastaan ​​# 9. Tässä kaikki laitteistoyhteyksistä. Siirrytään nyt koodausosaan.

Ohjelmakoodi:

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

Tuotos:

Näppäimistön käyttäminen

Ohjelmassa hyödynnetään kaksiulotteista matriisikonseptia, kuten näemme, että ohjelmassa tehdään sama asettelu kuin näppäimistöllä. Rivinastat ovat 9, 8, 7, 6 ja nastat ovat 5, 4, 3 ja 2.

Käytimme riviä 'char key = keypad.waitForKey ()', mikä tarkoittaa, että ohjelmat odottavat näppäimen painamista ja painettu näppäin tallennetaan muuttujaan 'key'. Tämä muuttuja tulostetaan sarjamoduulissa käyttämällä “Serial.print ().

Jos mietit missä näppäimistöjä käytetään? No, tässä on vastaus. Sitä käytetään kaikkialla, missä käyttäjän on syötettävä tietoja mihin tahansa koneeseen, esimerkiksi: älypuhelimeen tai tietokoneeseen, jota käytät juuri nyt, pankkiautomaatteihin, myyntiautomaateihin, tulostimiin, television kaukosäätimen ohjaimiin jne.

Tähän mennessä tiedät melko vähän näppäimistöistä ja niiden liittämisestä Arduinoon. Nyt on aika käyttää mielikuvitustasi omien projektien rakentamiseen.

Sinun on ladattava ja lisättävä näppäimistökirjasto seuraavasta linkistä: github.com/Chris--A/Keypad. muuten yllä olevaa ohjelmaa ei käännetä




Edellinen: Kuinka tuottaa sähköä Piezosta Seuraava: Sunrise Sunset Simulator LED -piiri