Vytvorené: 02. 09. 2020 Tlačiť

Stlačením tlačidla dôjde k spojeniu 1.l a 1.r s 2.r a 2.l.

 

 

x Ako je vidieť na obrázku, tlačidlo Arduino sa skladá z dvoch od seba oddelených kusov kovu. x

 

x Keď tlačidlo zopneme, pustíme tým 5 V na pin 7. Sériový monitor píše 1, keď je tlačidlo zopnuté. Pri uvoľnení by mal vracať 0. x

 

Malo by to fungovať, ale nefunguje. Keď sa pozeráme na chat od sériovej linky, narazíme na problém „pinu vo vzduchu“. Pridaním rezistoru medzi pin 7 a GND sa problém vyrieši.  x

 

Tomuto druhu zapojenia rezistoru hovoríme „pull down“ (ťahanie k hodnote nula – GND). Pin procesora je potom vždy buď na 5 V alebo GND. Nie je nikdy vo vzduchu. Pozrime sa na obrázky: 

 

x

Pin 7 číta NÍZKA (0), pretože cesta k 5 V 
nie je prepojená.

 

Prúd tečie cestou s menším odporom.
Po zopnutí je pripojených 5 voltov, pin 7 číta 1.

 

Hardwareové zapojenie je teraz kompletné. Napíšme program, ktorý bude reagovať na stlačenie tlačidla. Budeme používať príkaz if () „ak“. Je to sekcia, ktorá sa vykoná po splnení podmienky (zopnutí tlačidla).

 

 

Nahraj tento program do procesora. Všimni si, ako sa používa funkcia digitalRead() a „if/else“ podmienka (funkcia). 

 

 

Stlač tlačidlo a pozeraj čo sa deje. Presvedčíš sa o tom, že procesor vracia dve rozdielne hodnoty v závislosti na tlačidle.

 

Zapojme obvod podľa nasledujúceho obrázku. Presuň nožičku rezistoru a jeden vodič od tlačidla. x

 

Všimni si, ako otočili svoje chovanie. Je to preto, že teraz používame „Pull-UP“ rezistor na 5 voltovú vetvu. Po zopnutí tlačidla je obvod pripojený na zem.

 

x

Keď tlačidlo nie je zopnuté,
je na pine 7 privedených 5 voltov.

  Po zopnutí tlačidla je na pine 7 nula voltov.

 

Procesor Atmega 328 má Pull-UP rezistory integrované pre všetky digitálne piny!

 

x

 

Keď už má mikrokontrolér interné Pull-UP rezistory, poďme ich využiť. Postará sa o to jednoduchý príkaz.

 

Z kontaktného poľa odpoj 10K Ohm rezistor. Prepoj jednu stranu tlačidla na zemniacu vetvu, druhú pripoj na pin 7. x

 

V tvojom programe nahraď:

pinMODE(7, INPUT);“
za „pinMODE(7, INPUT_PULLUP);“

 

To je takmer všetko. Program je takmer rovnaký, ale obvod je omnoho jednoduchší. Bude to jednoduchšie, ale použijeme viac tlačidiel.

Ale je v tom háčik. LED sa chovajú opačne ako predtým. Je to tým, že máme na pin 7 privedených stále 5 V a nulu, len dovtedy, pokiaľ je tlačidlo zopnuté. Pre opravu zmeň nasledujúci riadok.

 

Hodnotenie užitočnosti článku:


    Umela inteligencia Novy narodopis Teoria poezie 3D-tlac Arduino Nove rekordy Prudove chranice Robotika Priemysel 4.0 Dejiny Slovenska do roku 1945 ang_znacky_fluidsim LOGOSoftComfort Novinky Historia elektromobilov Free e-kurzy Elektrina pre ZŠ Druhá svetová vojna Cvičebnice O troch pilieroch EP je spat Prehlad Fyzika Prehlad Informatika Ako sa učiť a ako učiť Dejiny sveta

     

    · Simulácie z fyziky 
    · O Slovensku po slovensky 
    · Slovenské kroje
    · Kurz národopisu
    · Diela maliarov
    · Kontrolné otázky, Domáce úlohy, E-testy - Priemysel
    · Odborné obrázkové slovníky
    · Poradňa žiadaného učiteľa
    · Rýchlokurz Angličtiny
    . Rozprávky (v mp3)
    · PREHĽADY (PRIBUDLO, ČO JE NOVÉ?)
    Seriály:
    · História sveta (1÷6)
    · História Slovenska (1÷5)
    · História módy (1÷5).

                                       
    Členstvo na portáli
    Mám účet a chcem sa prihlásiť Prihlásiť sa
    Nemám účet, ale chcel by som ho získať Registrovať sa
    Poznámka pre autora

    Ak ste na stránke našli chybu, dajte nám vedieť


    Copyright © 2013-2024 Wesline, s.r.o. Všetky práva vyhradené. Mapa stránky ako tabuľka | Kurzy | Prehľady