Lekce 3 - Připojíme LED diodu a tlačítka
23.12.2012 18:35Dnes si k Arduinu připojíme nějakou LED diodu a poté i dvě tlačítka. Otestujeme si jak digitální výstup, tak i digitální vstup. K našim hrátkám budeme potřebovat:
- Arduino
- nepájivé kontaktní pole
- 2 tlačítka
- LED dioda
- 1ks rezistor 1,2 kΩ
- 2ks rezistor 10 kΩ
- propojovací vodiče
Výrobu propojovacích vodičů jsem si ukázali v předchozí lekci. LED diodu můžete použít liibovolnou. Z tlačítek vzhledem k použití se mi nejvíce osvědčil typ P-DT6SW z nabídky firmy GME za cenu cca 13 Kč. Mikrospínače s nepajivém kontaktním poli často nedrží a je nutná jejich dodatečná úprava.
Po zapojení LED diody podle obrázku níže si naše Arduino napragramuje tak, aby naše dioda blikala.
Led diodu jsme připojili na digitální výstup 10 přes odpor 1,2kOhmu k GND a to z důvodu, že LED dioda není stavěná na 5V, ale na 2,1V. Teď k samotnému programu pro blikání LED.
int LEDka = 10; // LED připojena na pin 10
void setup()
{
pinMode(LEDka, OUTPUT); // pin 10 nastaven jako výstup
}
void loop()
{
digitalWrite(LEDka, HIGH); // pin 10 na vysokou úroveň
delay(500); // čekej 500ms
digitalWrite(LEDka, LOW); // pin 10 na nízkou úroveň
delay(500); // čekej 500ms
}
Těm, co se LED diaoda rozblikala gratuluji a nyní poustoupíme k další části tutoriálu a připojíme tlačitko podle následujícího schématu.
Omlouvám se za chybu na obrázku, tlačítko musí být připojeno k +5V a ne k GND !!!!
Program:
int LEDka = 10; // LED připojena na pin 10
int TLAC = 9; // Tlacitko pripojeno na pin 9
Jak již jste určitě vyzkoušeli LED dioda svítí pouze, když je zmáčkuté tlačítko. Nyní program trošku zmodifuikujeme a tlačítko nyní bude mít funkci tzv. START/STOP. Stiskem LEDku rozsvítíme a dalším stiskem diodu zhasneme.
———
ZpětDiskusní téma: Lekce 3 - Připojíme LED diodu a tlačítka
Datum | 07.05.2017 |
---|---|
Vložil | Petr |
Titulek | pozdě |
sice píšu 5 let po vydání článku, tak nevím zda ještě někdo čte koment, ale chybí mi tam věta: int val = 0; . (doufám, že jsem si jí vymyslel správně, každopádně to funguje). Jinak dík za návody moc mi pomáhají.
P.
———
Datum | 18.10.2021 |
---|---|
Vložil | jenyk_cz |
Titulek | Re: pozdě |
teď jsem to přečetl a stejně to nechápu
———
Datum | 18.10.2021 |
---|---|
Vložil | Pynkas |
Titulek | Re: Re: pozdě |
já taki ne!
———
Datum | 26.07.2023 |
---|---|
Vložil | xxxxxxx |
Titulek | Re: Re: Re: pozdě |
Pokud píšeš "taki" tak se celkem nedivím že to nechápeš.
———
Datum | 16.08.2016 |
---|---|
Vložil | Pharmc513 |
Titulek | Good info |
Very nice site!
———
Datum | 11.08.2016 |
---|---|
Vložil | Pharmk743 |
Titulek | Good info |
Very nice site!
———
Datum | 30.03.2015 |
---|---|
Vložil | Franta |
Titulek | Rezistor 10kOhm |
Z jakého důvodu je ve schématu použit ten rezistor 10kOhm?
———
Datum | 27.05.2015 |
---|---|
Vložil | gilhad |
Titulek | Re: Rezistor 10kOhm |
pullup/pulldown - pokud není pin připojen tlačítkem (něčím jiným) k nějakému napětí (typicky 5V nebo 0V), tak ho "slabě přitáhne" ke svému napětí. Pokut stisknete tlačítko, tak jeho odpor je nepatrný, tudíž přitáhne pin ke svému zdroji a ten odpor přetluče (10kOhm je tolik, že skoro všechno je menší odpor a neteče jím skoro žádný proud).
Účelem je, aby vždy byla na pinu nějaká definovaná hodnota a nevisel jen tak ve vzduchu a nezkoušel chytat radiové vlny a jiné šumy.
———
Datum | 27.01.2015 |
---|---|
Vložil | jarda |
Titulek | zase mi to nefunguje! |
zkoušel jsem nahrát tento zdroják i na pin 2.
int LED = 2;
void setup()
{
pinMode(LED, OUTPUT);
}
void loop()
{
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
}
Ale pořád to nefunguje sem tak nešťastnej ACHJO!
———
Datum | 15.02.2015 |
---|---|
Vložil | George |
Titulek | Re: zase mi to nefunguje! |
Pin D2 = 4. nožička na ATMEGA328. A na arduinu je rozdíl A2 a D2. V tomto případě se to rovná D2