Jak propojit klávesnici 4 × 4 s Arduino

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





V tomto příspěvku se naučíme, jak propojit klávesnici 4x4 s Arduino. Uvidíme, co je to klávesnice, jak je konstruována a jak naprogramovat Arduino na příjem úhozů z klávesnice a jejich tisk na sériovém monitoru.



Co je to klávesnice?

Klávesnice je přenosná klávesnice v malém provedení se sadami čísel, abeced a speciálních znaků nebo kombinací všech tří. V tomto projektu se podíváme na maticovou klávesnici 4x4, která má všechny tři výše uvedené typy kláves.

Nazývá se 4x4, protože má 4 řádky a 4 sloupce, uspořádané do maticové podoby. Má čísla od 0 do 9, speciální znak „#“ a „*“ a abecedy od A do D. Existují i ​​jiné typy klávesnic, jako jsou 4x3, 8x8 atd. Nejběžnější typy jsou 4x4 a 4x3.



U klávesnice 4x4 jsou pro komunikaci s mikrokontrolérem vytvořena čtyři připojení z řádků a čtyři sloupce připojení, takže celkem je 8 pinů.

To může spotřebovat spoustu I / O pinů z Arduina a ponechat menší počet I / O pinů pro ostatní periferie, existují i ​​jiné metody pro příjem stisků kláves pomocí několika pinů Arduina, které nejsou v tomto článku popsány.

Konstrukční detaily:

Připojovací obvod je znázorněn níže:

Jak můžeme odvodit z výše uvedeného diagramu, každá klávesa je spojena s jedním řádkem a jedním sloupcem. Když je některý z nich v depresi, například se připojí číslo 1, R1 a C1, tento signál přijme arduino nebo jakýkoli mikrokontrolér a určí, která klávesa je stisknuta, pro každou klávesu jsou vytvořena jedinečná spojení.

Můžeme získat klávesnici 4x4 z webu elektronického obchodu nebo místního prodejce elektroniky nebo si ji můžete vytvořit z výše uvedeného diagramu. Potřebujete pouze 16 tlačítek pro klávesnici 4x4 a univerzální desku plošných spojů. Spojení lze provést z výše uvedeného schématu a vy jste si je vytvořili sami.

Schéma zapojení a program klávesnice Arduino:

Jak propojit klávesnici 4x4 s Arduino

Zde je prototyp, kde se připojení provádí pomocí kolíků záhlaví typu muž-muž. Zbytek okruhu je samozřejmý.

Takto je připojen k Arduinu:

Poznámka: Při připojování kolíků z klávesnice k arduinu je třeba postupovat opatrně, při nesprávném připojení nebo záměně vodičů může dojít k poškození celého projektu.

Všechna připojení jsou prováděna postupně od pinu č. 2 ke pinu č. 9 Arduina a klávesnice. To je vše o hardwarových připojeních, pojďme nyní přejít na část kódování.

Programový kód:

//---------------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ýstup:

Pomocí klávesnice

V programu je použit koncept dvourozměrného pole, protože vidíme, že v programu je vytvořeno stejné rozložení jako na klávesnici. Kolíky řádků jsou 9, 8, 7, 6 a sloupce kolíků jsou 5, 4, 3 a 2.

Použili jsme řádek „char key = keypad.waitForKey ()“, což znamená, že programy počkají na stisknutí klávesy a stlačená klávesa se uloží do proměnné „key“. Tato proměnná je vytištěna na sériovém monitoru pomocí „Serial.print ().

Pokud vás zajímá, kde se používají klávesnice? Tady je odpověď. Používá se všude, kde uživatel potřebuje dát vstup do jakéhokoli zařízení, například: smartphone nebo počítač, který právě používáte, bankomaty, prodejní automaty, tiskárny, ovládací prvky na dálkovém ovladači televizoru atd.

Nyní už toho o klávesnicích víte hodně a jak je propojit s Arduinem, nyní je čas použít svou fantazii k vytváření vlastních projektů.

Knihovnu klávesnic si musíte stáhnout a přidat z následujícího odkazu: github.com/Chris--A/Keypad. jinak se výše uvedený program nebude kompilovat




Předchozí: Jak vyrábět elektřinu z piezo Další: Sunrise Sunset Simulator LED Circuit