Kuidas 4 × 4 klaviatuuri liidestada Arduinoga

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Selles postituses õpime, kuidas 4x4 klaviatuuri Arduinoga liidestada. Vaatame, mis on klahvistik, kuidas see on üles ehitatud ja kuidas programmeerida Arduino klaviatuuri vastu võtma klahvivajutusi ja printima need seeriamonitoris.



Mis on klaviatuur?

Klahvistik on väikeses vormis kaasaskantav klaviatuur, mis koosneb numbrite, tähestike ja erimärkide komplektidest või kõigi kolme kombinatsioonist. Selles projektis vaatame 4x4 maatriksklaviatuuri, millel on kõik kolm ülaltoodud tüüpi klahvi.

Seda nimetatakse 4x4-ks, kuna sellel on 4 rida ja 4 veergu, mis on paigutatud maatriksi kujul. Sellel on numbrid vahemikus 0 kuni 9, erimärgid “#” ja “*” ning tähestikud A-st D. On ka muud tüüpi klaviatuure nagu 4x3, 8x8 jne. Levinumad tüübid on 4x4 ja 4x3.



4x4 klahvistiku jaoks on mikrokontrolleriga suhtlemiseks loodud neli ühendust ridadest ja neli ühenduste veergu, seega on kokku 8 kontakti.

See võib tarbida palju Arduino sisend- / väljundnõelu ja jätta vähem välisseadmeid teistele välisseadmetele, samuti on muid meetodeid klahvivajutuste saamiseks Arduino väheste tihvtide abil, mida see artikkel ei käsitle.

Ehituse detailid:

Ühendusahel on illustreeritud allpool:

Nagu ülaltoodud skeemilt võime järeldada, on kõik klahvid ühendatud ühe rea ja ühe veeruga. Kui mõni neist on alla surutud, näiteks ühendatakse number 1, R1 ja C1, võtab arduino või mõni mikrokontroller selle signaali vastu ja määrab, millisele klahvile vajutatakse.

4x4 klahvistiku saame e-kaubanduse veebisaidilt või kohalikult elektroonika jaemüüjalt või saate selle teha ülaltoodud skeemilt. 4x4 klaviatuuri jaoks on vaja lihtsalt 16 nuppu ja üldotstarbelist PCB-d. Ühendusi saab teha ülaltoodud skeemi põhjal ja teete selle endale.

Arduino klaviatuuri skeem ja programm:

4x4 klaviatuuri liidestamine Arduinoga

Siin on prototüüp, kus ühenduste loomiseks kasutatakse mees-mees päise nööpnõelu. Ülejäänud vooluring on enesestmõistetav.

Nii on see Arduinoga ühendatud:

Märkus: tuleb olla ettevaatlik, kui ühendate tihvtid klaviatuurilt arduinoga, valed ühendused või kõik juhtmed on omavahel ühendatud, see võib kogu teie projekti segamini ajada.

Kõik ühendused tehakse järjestikku Arduino ja klahvistiku tihvtist nr 2 kuni tihvtini nr 9. See kõik käib riistvaraühenduste kohta. Läheme nüüd kodeerimise osale.

Programmi kood:

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

Väljund:

Klahvistiku kasutamine

Programmis kasutatakse kahemõõtmelise massiivi kontseptsiooni, kuna näeme, et programmis tehakse sama paigutus nagu klaviatuuril. Rea tihvtid on 9, 8, 7, 6 ja tihvtide veerud on 5, 4, 3 ja 2.

Kasutasime rida 'char key = keypad.waitForKey ()', mis tähendab, et programmid ootavad klahvi vajutamist ja vajutatud klahv salvestatakse muutuvasse 'key'. See muutuja trükitakse seeriamonitorisse, kasutades “Serial.print ().

Kui te ei tea, kus kasutatakse klaviatuure? Noh, siin on vastus. Seda kasutatakse kõikjal, kus kasutaja peab sisestama sisendi näiteks igale seadmele: nutitelefon või arvuti, mida praegu kasutate, sularahaautomaadid, müügiautomaadid, printerid, teleripuldi juhtnupud jne.

Nüüdseks teate üsna palju klaviatuuridest ja nende ühendamisest Arduinoga, nüüd on aeg oma projektide loomiseks kasutada fantaasiat.

Klaviatuuriteek tuleb alla laadida ja lisada järgmiselt lingilt: github.com/Chris--A/Klahvistik. muidu ülaltoodud programm ei kompileeru




Eelmine: Kuidas Piezost elektrit toota Järgmine: Sunrise Sunset Simulator LED-ahel