Tlačidlo s ESP32 – Arduino IDE

Tlacidlo S Esp32 Arduino Ide



ESP32 je doska IoT, ktorá môže byť prepojená s rôznymi externými perifériami na generovanie výstupov. ESP32 prijíma vstup zo zariadení, ako sú tlačidlá, a generuje odpovede podľa prijatého vstupu. Tlačidlá je možné použiť na ovládanie viacerých senzorov a zariadení, ako je ovládanie LED alebo udržiavanie rýchlosti motorov. Tu v tejto lekcii budeme diskutovať o prepojení tlačidiel s ESP32.

Nasleduje obsah tejto lekcie:







1: Úvod do Push Button



2: Fungovanie tlačidla



2.1: Pracovné režimy tlačidla





3: Prepojenie tlačidla s ESP32

3.1: Digitálny vstup a výstupné kolíky v ESP32



3.2: Ako čítať digitálne vstupy v ESP32

3.3: Prepojenie tlačidla s ESP32 pomocou funkcie digitálneho čítania

3.4: Vyžaduje sa hardvér

3.5: Schéma

3.6: Kód pre prepojenie ESP32 s tlačidlom

3.7: Výstup

1: Úvod do Push Button

Tlačidlo je jednoduché tlačidlo s mechanizmom na ovládanie stavov rôznych strojov alebo procesov. Tlačidlo je vyrobené z tvrdého materiálu, ako je plast alebo kov, a horný povrch je zvyčajne plochý, čo umožňuje používateľom ho stlačiť.

V projektoch ESP32 sa tlačidlo široko používa na ovládanie vstupných a výstupných stavov kolíka. Prepínače a tlačidlá fungujú na mierne odlišných princípoch. Konvenčný alebo prepínač sa po stlačení zastaví, zatiaľ čo tlačidlo je dvojpolohové zariadenie, ktoré sa zvyčajne zastaví po uvoľnení.

Pozrime sa podrobnejšie na princíp fungovania tlačidla:

2: Fungovanie tlačidla

Tlačidlo má normálne 4 kolíky. Tieto 4 kolíky sú spojené vo forme páru, napríklad dva horné kolíky sú vnútorne spojené podobne, ostatné dva sú tiež vnútorne spojené.


Ak chcete vedieť, ktoré dva kolíky sú pripojené, vezmite multimeter (DMM) a nastavte ho na test kontinuity , teraz pripevnite kladnú sondu k ľubovoľnej nohe tlačidla a potom jednu po druhej pripevnite zápornú sondu multimetra k ostatným nožičkám. Ak je spojenie medzi oboma koncami dokončené, z multimetra zaznie pípnutie. Tieto dve nohy, ktoré sú vnútorne spojené, dokončia okruh.

2.1: Pracovné režimy tlačidla

Na použitie tlačidla v obvode potrebujeme jeden kolík z každého vnútorne prepojeného páru. Ak vezmeme kolíky tlačidla z rovnakého páru, ktoré sú vnútorne spojené, bude to mať za následok skrat, pretože tieto sú už spojené, obíde sa mechanizmus tlačidla.

Na základe tohto mechanizmu môže tlačidlo pracovať v nasledujúcich dvoch režimoch:


Ak si vezmeme príklad režimu znázorneného na obrázku nižšie. Vidíme, že keď tlačidlo nie je stlačené, vnútorné spojenie je otvorené, keď je tlačidlo stlačené, interné svorky A a B sa spoja a obvod sa dokončí.


Teraz sme dokončili základný princíp fungovania tlačidiel. Ďalej prepojíme jednoduché tlačidlo s ESP32 a pomocou neho budeme ovládať LED.

3: Prepojenie tlačidla s ESP32

Pred prepojením tlačidla s ESP32 je potrebné poznať piny GPIO, ktoré možno použiť ako vstup. Teraz budeme diskutovať o digitálnych vstupných výstupných kolíkoch v ESP32.

3.1: Digitálny vstup a výstupné kolíky v ESP32

ESP32 má celkom 48 kolíky, z ktorých každý je špecifický pre určitú funkciu, spomedzi 48 kolíkov nie sú niektoré fyzicky odkryté, čo znamená, že ich nemôžeme použiť na externé účely. Tieto kolíky sú integrované vo vnútri ESP32 pre rôzne funkcie.

Doska ESP32 má 2 rôzne varianty 36 špendlíky a 30 špendlíky. Tu je rozdiel 6 pinov medzi oboma doskami kvôli 6 integrovaným SPI flash pinom dostupným pre SPI komunikáciu na 36 kolíky variant dosky ESP32. Týchto 6 pinov SPI však nemožno použiť na iné účely, ako je vstupný výstup.

Nižšie uvedený pinout je z 30 pinov Doska ESP32:


Spomedzi všetkých GPIO iba 4 kolíky ( 34, 35, 36 a 39 ) sú len vstupné, zatiaľ čo všetky ostatné kolíky možno použiť na vstup aj výstup. Ako bolo uvedené vyššie, 6 pinov SPI nemožno použiť na vstup alebo výstup.

3.2: Ako čítať digitálne vstupy v ESP32

Vstup tlačidla je možné čítať na definovanom GPIO pine, pre ktorý je funkcia pinMode() je potrebné najskôr definovať v kóde Arduino. Táto funkcia nastaví pin GPIO ako vstup. pinMode() Syntax funkcie je nasledovná:

pinMode ( GPIO, VSTUP ) ;


Na čítanie údajov z definovaného pinu GPIO digitalRead() funkcia sa zavolá. Nasleduje príkaz, ktorý môžete použiť na získanie údajov z tlačidla na kolíku GPIO:

digitalRead ( GPIO ) ;

3.3: Prepojenie tlačidla s ESP32 pomocou funkcie digitálneho čítania

Teraz prepojíme ESP32 s tlačidlom pomocou digitálne čítanie fungovať na akomkoľvek pine GPIO. Prijatím vstupu z tlačidla sa LED rozsvieti alebo zhasne.

3.4: Vyžaduje sa hardvér

Nižšie je uvedený zoznam požadovaných komponentov:

    • Doska ESP32
    • LED
    • 220 Ohm odpory
    • 4kolíkové tlačidlo
    • Breadboard
    • Pripojenie prepojovacích vodičov

3.5: Schéma

Na obrázku nižšie je schematický diagram tlačidla s ESP32. Tu sa vstup číta z tlačidla na GPIO kolíku 15 a LED je pripojená na GPIO kolíku 14.

3.6: Kód pre prepojenie tlačidla s ESP32

Teraz na nahranie kódu do ESP32 sa použije editor IDE Arduino. Otvorte IDE a pripojte dosku ESP32, potom vyberte port COM v sekcii nástrojov. Keď je doska ESP32 pripravená, vložte kód do IDE a kliknite na upload:

const int Push_Button = pätnásť ; /* Digitálny špendlík pätnásť definované pre Stlačte tlačidlo */
const int LED_Pin = 14 ; /* Digitálny špendlík 14 definované pre LED */
int Button_State = 0 ;
neplatné nastavenie ( ) {
Serial.začať ( 115200 ) ;
pinMode ( Push_Button, INPUT ) ; /* GPIO pätnásť nastaviť ako Vstup */
pinMode ( LED_Pin, VÝSTUP ) ; /* GPIO 14 nastaviť ako Výkon */
}
prázdna slučka ( ) {
Button_State = digitalRead ( Push_Button ) ; /* Skontrolujte stav tlačidla */
Serial.println ( Button_State ) ;
ak ( Button_State == VYSOKÁ ) { /* ak stav na kontrolu stavu tlačidla */
digitalWrite ( LED_Pin, VYSOKÝ ) ; /* LED indikátor stavu HIGH Svieti */
} inak {
digitalWrite ( LED_Pin, LOW ) ; /* Inak LED nesvieti */
}
}


Kód začal definovaním GPIO pinov pre LED a tlačidlo. Potom je LED GPIO deklarovaná ako výstup, zatiaľ čo tlačidlo GPIO je nastavené ako vstup.

Na konci skontrolovaný stav tlačidla pomocou podmienky if. Stav tlačidla je tiež vytlačený na sériovom monitore pomocou Serial.println(Button_State) .

Ak je LED vstup tlačidla HIGH, zapne sa, inak zostane vypnutý.

3.7: Výstup

Najprv môžeme vidieť, že LED dióda je VYPNUTÁ.


Teraz stlačte tlačidlo, signál HIGH sa odošle do ESP32 GPIO 15 a LED sa rozsvieti.


Rovnaký výstup je možné vidieť aj na sériovom monitore Arduino.

Záver

ESP32 má viacero GPIO pinov, ktoré dokážu čítať digitálne dáta zo senzorov, ako sú tlačidlá. Pomocou tlačidla funkcie digitálneho čítania možno jednoducho prepojiť s ESP32 na ovládanie rôznych zariadení. Jedným použitím tohto článku môžete prepojiť tlačidlo s akýmkoľvek GPIO pinom ESP32.