GPIO
Az ESP8266ex chip rendelkezik 9db digitális szabadon felhasználható lábbal. Mindegyik lehet bemenet, kimenet, PWM (kvázi analóg kimenet).
Minden lábnak van szoftveresen kapcsolható 50k körüli felhúzó ellenállása. A bemenetek 5V toleránsak. Ez azt jelenti, hogy hiába 3.3V a modul tápja,
ha a láb bemenetnek van programozva kikapcsolt PULL-UP ellenállással, illetve OPEN-DRAIN kimenetnek van állítva, kerülhet rá 5V, nem megy tönkre.
Kimenetnek programozva max 12mA árammal terhelhető egy láb az IC adatlapla szerint. A GPIO parancs ezek vezérlésére, állapotának beolvasására szolgál. Bizonyos események bekövetkeztekor tud egyéb parancsokat automatikusan futtatni.
Jelölésük: D0-D8, A0. WeMos D1 mini modulon feliratozva vannak. Ezek a jelölések nem a chip IO portjai!
WeMos PIN | ESP8266 PIN | Function | WeMos resistor | BOOT OK |
D0 | io16 | WakeUP | Not internal | x |
D1 | io5 | I2C CLOCK | x | x |
D2 | io4 | I2C DATA | x | x |
D3 | io0 | x | 10k pullup | HIGH |
D4 | io2 | Built in LED | 10k pullup | HIGH |
D5 | io14 | SPI SCLK | x | x |
D6 | io12 | SPI MISO | x | x |
D7 | io13 | SPI MOSI | x | x |
D8 | io15 | SPI CS | 10k pulldown | LOW |
A0 | A0 | Analog Input | x | x |
RESET | RESET | RESET | 10k pullup | HIGH |
A D3, D4, D8 lábakat bemenetnek nem célszerű használni, bekapcsoláskor nem megfelelő jelszintek esetén nem bootol be a modul!
ESP8266 A0 analóg bemenete 0V-1V között használható. A WeMos modul A0 lába osztóval megy a chip-re, így 0V-3.3V a bemeneti tartomány.
TXD, RXD láb WeMos modul CH341 USB-SERIAL átalakítójára csatlakozik, nincsenek használva.
Digitális be/kimenet
GPIO[D0]@
Lekérdezi a láb állapotát adatiránytól függetlenül.
GPIO[D5]CL:LED(OFF);STD@OFF
Ha a láb HIGH szintről LOW szintre vált, a LED kikapcsol. Adatirány nem számít. (Command Low)
GPIO[D5]CH:LED(ON);STD@ON
Ha a láb LOW szintről HIGH szintre vált, a LED bekapcsol. Adatirány nem számít. (Command High)
GPIO[D5]C
Végrehajtja a láb állapotának megfelelő parancsot
GPIO[D5]PU
Bekapcsolja a PullUp ellenállást. Default: OFF
GPIO[D5]PU!
Kikapcsolja a PullUp ellenállást.
GPIO[D5]IN
Bemenetnek állítja a lábat.
GPIO[D5]@IN
Bemenetnek állítja a lábat és STDOUT-ra küldi az állapotát.
Ebben a formában a többi parancsban is használható a @ karakter.
GPIO[D5]INP
Bemenetnek állítja a lábat bekapcsolt PullUp ellenállással.
GPIO[D5]INR
Bemenetnek állítja a lábat, ismétli a CL: CH: parancsokat.
GPIO[D5]INPR
Bemenetnek állítja a lábat bekapcsolt PullUp ellenállással, ismétli a CL: CH: parancsokat.
GPIO[D]IR=1000
Ismétlés idejét állítja be, egység: millisecundum. Defaut:50, Min:5
Ez az összes GPIO lábra egyszerre érvényes.
GPIO[D1]OD
Bekapcsolja az OpenDrain kimeneti módot. Default: OFF
GPIO[D1]OD!
Kikapcsolja az OpenDrain kimeneti módot.
GPIO[D1]L
Kimenetnek állítja a lábat LOW logikai szinttel.
GPIO[D1]H
Kimenetnek állítja a lábat HIGH logikai szinttel.
GPIO[D1]I
Kimenetnek állítja a lábat INVERZ logikai szinttel.
GPIO[D1]LC
Kimenetnek állítja a lábat LOW logikai szinttel és végrehajtja Command Low parancsot.
GPIO[D1]HC
Kimenetnek állítja a lábat HIGH logikai szinttel és végrehajtja Command High parancsot.
GPIO[D1]$
Menti a láb állapotát a flash memóriába.
GPIO[D1]!$
Törli a mentett állapotot a flash memóriából.
GPIO[D1]RS
Törli a beállításokat (CL, CH, PU, OD, IR),
kikapcsolt felhúzólellenállással bemenetnek állítja a lábat.
GPIO[D]IN
Bemenetnek állítja az összes lábat.
GPIO[D]INP
Bemenetnek állítja az összes lábat bekapcsolt felhúzó ellenállással.
GPIO[D]L
Kimenetnek állítja az összes lábat LOW logikai szinttel.
GPIO[D]LO
Kimenetnek állítja az összes lábat OpenDrain módban LOW logikai szinttel.
GPIO[D]H
Kimenetnek állítja az összes lábat HIGH logikai szinttel.
GPIO[D]HO
Kimenetnek állítja az összes lábat OpenDrain módban HIGH logikai szinttel.
Analóg bemenet
GPIO[A0]@
A0 értékét STDOUT-ra küldi.
GPIO[A0]CC:NUM[0]@=%A0
Ha a láb analóg szintje megváltozik, az aktuális érték NUM[0] helyen tárolódik, STDOUT-ra kiírásra kerül. (Command Changed)
GPIO[A0]AR=100
A0 tartományát adja meg. Defaut:255 (0V=0, 3.3V=255)
A parancs kiadása után 0V=0 3.3V=100 Valid: 2-1024.
GPIO[A0]RS
Törli a beállításokat (CC, AR).
PWM kimenet
GPIO[D1]@
D1 értékét STDOUT-ra küldi.
GPIO[D1]P=128
D1 lábon 50% kitöltésű PWM jel jön ki.
GPIO[D1]PI=25
D1 lábon 90% kitöltésű PWM jel jön ki (inverz).
Ez akkor jön jól, ha pl egy OpenDrain láb és az 5V közé van kötve valami.
GPIO[D1]P=NUM[0]
GPIO[D1]PI=NUM[0]
D1 kitöltési tényezőjét NUM[0] értéke adja meg.
GPIO[D1]P+10
GPIO[D1]PI+10
D1 kitöltési tényezője 10 egységgel nő.
GPIO[D1]P-10
GPIO[D1]PI-10
D1 kitöltési tényezője 10 egységgel csökken.
GPIO[D]PR=100
PWM tartományát adja meg. Defaut:255 (0=0%, 255=100%)
A parancs kiadása után ez 0=0% 100=100% -ra változik. Valid:15(!!!)-65535
Ez az összes GPIO lábra egyszerre érvényes.
GPIO[D]PF=8000
A PWM frekvenciáját állítja be. Default:1000. Egysége: Hz
A parancs kiadása után ez 8kHz lesz. Valid:100-40000.
Ez az összes GPIO lábra egyszerre érvényes.
GPIO[D1]P=A0
GPIO[D1]PI=A0
D1 kitöltési tényezője A0 értéke.
Tartományoknak egyezni kell! Pl: GPIO[D]PR=100|GPIO[D]AR=100
GPIO[D1]P==A0
GPIO[D1]PI==A0
D1 kitöltési tényezője A0 értéke. Automatikusan frissül.
NVR
NVR[0]=P=210
GPIO[4]=NVR[0]
NVR[0] nem felejtő memória értéke lesz GPIO[4] állapota.