ESP: GPIO
Z MiS
				
				
				
				
																
				
				
								
				
Obsah | 
Porty GPIO
- Piny sběrnice GPIO slouží pro digitální vstup a výstup a pro digitální vstup.
 - Pro analogový vstup je vyhraze speciálně port A0 devboardu NodeMCU.
 -  Pokud chceme pin použít, musíme:
- Nastavit mód pinu
 - Přečíst/nastavit hodnotu
 
 
Nastavení módu
- Nastavení módu pro pin:
 
pinMode(číslo_pinu, mód)
-  Módy:
- OUTPUT
 - INPUT
 - INPUT_PULLUP
 
 
Digitální výstup
- Digitální výstup nastavuje pouze hodnoty 0 nebo 1.
 -  Tyto hodnoty jsou reprezentovány napětím 0 V nebo 3,3 V vzhledem k zemi (pin 
GND). 
digitalWrite(číslo_pinu, hodnota)
-  Hodnoty:
- LOW
 - HIGH
 
 
Analogový výstup
- Analogový výstup nastavuje libovolnou hodnotu v rozmezí 0 až 1.
 -  Tyto hodnoty jsou reprezentovány napětím 0 V nebo 3,3 V vzhledem k zemi (pin 
GND) a jsou realizovány střídáním hodnot 0 a 1 (PWM). 
analogWrite(číslo_pinu, hodnota)
-  Hodnota: 
0-1023 
Čísla pinů (pinout)
- Číslo pinu v kódu je třeba převést na odpovídající číslo portu GPIO a najít odpovídající pin devboardu.
 -  Na devboardu NodeMCU jsou výstupy označeny kódy 
D0...D12a dalším. - Přiřazení pinů najdete například na odkazu: IoTBytes.Wordpress.com → NodeMCU-pinout.
 - Vybrané hodnoty uvádíme dále:
 
| Číslo pinu | I/O v kódu |  Označení na devboardu NodeMCU 1.0  | 
Funkce | 
|---|---|---|---|
| GPIO 16 | 3 | D0 |  Na některých zařízeních ovládá vestavěnou diodu. Neměl by být používán pro vstup a připojování zařízení. Používá se při nahrávání firmware. ?Nelze zde použít PWM?  | 
| GPIO 5 | 1 | D1 | |
| GPIO 4 | 2 | D2 | Na některých zařízeních ovládá vestavěnou diodu. | 
Příklady
- Analogové zhasínání diody
 
int pin = 5;
void stmivej() {
    for (int i = 1023; i > 0; i -= 255) {
        analogWrite(pin, i);
        delay(500);
    }
}
void setup() {
    pinmode(5, OUTPUT);
}
void loop() {
    stmivej();
}
Zdroje
- Arduino.ESP8266.com → Reference
 - Alokace pinů na NodeMCU: ESP8266.com > Wiki > Doku