Tlačítka jsou neuvěřitelně běžná v prostoru DIY Arduino, přičemž nespočet projektů po celém webu spoléhá na tyto malé přepínače k aktivaci jejich kódu. Ale jak přesně můžete zapojit a naprogramovat více než jedno tlačítko pro práci s vaším Arduinem? Pojďme to zjistit.
Co vyrábíme?
Toto je jednoduchý projekt, který je navržen tak, aby vám v budoucnu pomohl začít se složitějšími sestaveními Arduina. Našim tlačítkům nedáme práci, ale to znamená, že si můžete vybrat, co chcete, aby pro vás dělaly pomocí jednoho z našich dalších praktických návodů pro kutily Arduino.
Co potřebuješ?
K dokončení tohoto projektu potřebujete pouze několik dílů, z nichž mnohé již budete mít ve své sbírce dílů pro kutily.
- 4 x tlačítkové spínače
- 4 x 10kΩ odpory
- 1 x libovolný typ desky Arduino (používáme Leonardo)
- Drát potažený PVC/silikonem
Zapojení více tlačítek s Arduinem
Zapojení pro tento projekt je jednoduché, ale musíte být opatrní, abyste se při každém zapojení nezamotali, protože každé tlačítko vyžaduje dva různé dráty.
Začněte jednoduše, má smysl zapojit jedno tlačítko s kladnou nohou připojenou k 5V kolíku na našem Arduinu a zemnící noha tlačítka připojená k GND i Digital Pin 2 na našem Arduinu prkno. Rezistor musí být zapojen mezi uzemňovací nohu tlačítka a GND pin na Arduinu.
Po zapojení jednoho tlačítka je čas přidat ostatní. Každé tlačítko potřebuje svůj vlastní digitální pin; vybrali jsme 2, 3, 4 a 5 pro čtyři tlačítka, která používáme, ale bude fungovat kterýkoli z digitálních pinů. Nyní, když je vaše Arduino připojeno, je čas začít pracovat na kódu.
Programování více tlačítek pomocí Arduina
Kód projektu je pěkný a jednoduchý, bez nutnosti jakýchkoli knihoven tříd nebo jiného složitého programování.
Přiřazení tlačítek k pinům
V prvním kroku musíme přiřadit naše tlačítka k různým pinům na naší desce Arduino. Vzhledem k tomu, že jsme použili digitální piny 2, 3, 4 a 5, toto jsou piny, které deklarujeme v našem kódu. To by mělo být umístěno v horní části vašeho projektu Arduino před jakoukoli funkcí.
int vstup4Pin = 5;
int vstup3Pin = 4;
int vstup2Pin = 3;
int vstup1Pin = 2;
Nastavení tlačítek
Stejně jako u většiny projektů Arduino budeme používat funkci, která se spustí jednou na začátku programu, tzv void setup(). Nejprve zahájíme naše sériové připojení s přenosovou rychlostí 57600, po které bude následovat inicializace našich tlačítek. To je vše, co v našem potřebujeme void setup() funkce.
void setup()
{
Serial.begin (57600); // toto zahájí sériové připojení s přenosovou rychlostí 57600
pinMode (input4Pin, INPUT);
pinMode (vstup3Pin, INPUT);
pinMode (vstup2Pin, INPUT);
pinMode (vstup1Pin, INPUT); // tyto řádky deklarují každé z tlačítek jako vstup
}
Detekce stisknutí tlačítka
Tato další fáze je složitější než ostatní, protože budeme vytvářet vlastní funkci, která se bude zabývat proměnnou z funkce hlavní smyčky. Chcete-li začít, musíme deklarovat naši funkci pomocí celočíselné proměnné, jako je kód níže.
void checkPush (int pinNumber)
Poté musíme přiřadit proměnnou, kterou používáme, a vytvořit -li příkaz, který detekuje stisknutí každého tlačítka. Tato funkce může kontrolovat pouze tlačítko najednou pomocí proměnné, kterou získá z funkce hlavní smyčky, takže ví, které tlačítko kontroluje. Náš -li výpis kontroluje stav tlačítka pomocí vestavěného digitální čtení funkce.
void checkPush (int pinNumber)
{
int tlačítkoStisknuto = digitalRead (Číslo PIN);
if (tlačítkoStisknuto == VYSOKÁ) {
// sem přidejte kód pro stisknutí tlačítka
}
jinak {
// sem přidejte kód pro případ, kdy není stisknuto tlačítko
}
}
Kód přidán do -li příkaz se spustí, když je stisknuto tlačítko, zatímco kód je v jiný příkaz se spustí pouze v případě, že není stisknuto žádné tlačítko.
Budování hlavní smyčky
Nakonec, jako poslední část kódu, kterou musíte přidat do svého programu, je čas sestavit prázdná smyčka () funkce. Potřebujeme jen čtyři řádky kódu: jeden pro každé z tlačítek, které jsme připojili k našemu Arduinu. Tyto řádky volají funkci, kterou jsme vytvořili v předchozím kroku, s číslem pinu každého tlačítka.
prázdná smyčka ()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2);
}
Dokončený kód
Jakmile budete mít celý tento kód na svém místě, váš hotový program by měl vypadat jako kód níže. Ke každému řádku jsme přidali komentáře, aby byl srozumitelnější, ale doporučujeme vám vyhledat a přečíst si o čemkoli, co neznáte. To může být skvělý způsob, jak rozšířit své znalosti kódování.
int vstup4Pin = 5;
int vstup3Pin = 4;
int vstup2Pin = 3;
int vstup1Pin = 2;
// to deklaruje každé z našich tlačítek a jejich pinů
// ujistěte se, že používáte piny, ke kterým jsou vaše tlačítka připojena
void setup()
{
Serial.begin (57600); // toto zahájí sériové připojení s přenosovou rychlostí 57600
pinMode (input4Pin, INPUT);
pinMode (vstup3Pin, INPUT);
pinMode (vstup2Pin, INPUT);
pinMode (vstup1Pin, INPUT); // tyto řádky deklarují každé z tlačítek jako vstup
}
prázdná smyčka ()
{
checkPush (5);
checkPush (4);
checkPush (3);
checkPush (2); // každý z těchto řádků volá naši funkci checkPush s jiným číslem PIN
}
void checkPush (int pinNumber) // tato funkce očekává celočíselnou hodnotu, když je volána
{
int tlačítkoStisknuto = digitalRead (Číslo PIN); // toto přečte stav tlačítka na základě jeho čísla PIN
if (buttonPushed == HIGH) { // toto zkontroluje stav tlačítka
// sem přidejte kód pro stisknutí tlačítka
}
jinak {
// sem přidejte kód pro případ, kdy není stisknuto tlačítko
}
}
Úspěch: Zapojení a programování více tlačítek s Arduinem
Toto je snadný projekt, se kterým můžete začít, když se chcete dozvědět o hardwaru a softwaru pro Arduinos. To, co jste vytvořili, můžete snadno rozšířit o další komponenty, což vám dává příležitost prozkoumat množství vzrušujících nápadů a vytvářet věci, na které budete hrdí.
Programování Arduino pro začátečníky: Výukový program k projektu řadiče semaforu
Přečtěte si další
Související témata
- DIY
- Programování
- Arduino
- Elektronika
- Programování
- Návody na DIY projekty
O autorovi

Samuel je technologický spisovatel se sídlem ve Spojeném království s vášní pro vše, co je kutilství. Samuel začal podnikat v oblasti vývoje webu a 3D tisku a řadu let pracoval jako spisovatel a nabízí jedinečný pohled do světa technologií. Zaměřuje se hlavně na DIY technické projekty a nemiluje nic víc než sdílení zábavných a vzrušujících nápadů, které si můžete vyzkoušet doma. Mimo práci lze Samuela obvykle zastihnout, jak jezdí na kole, hraje počítačové videohry nebo se zoufale pokouší komunikovat se svým krabem.
Přihlaste se k odběru našeho newsletteru
Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!
Chcete-li se přihlásit k odběru, klikněte sem