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 pogramozva kikapcsolt PULL-UP ellenállással, illetve OPEN-DRAIN kimenetnek van állítva, kerülhet rá 5V, nem megy tönkre.
A GPIO parancs ezek vezérésére, állaptá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 PINESP8266ex PINFunctionWeMos resistorBOOT OK
D0io16WakeUPxx
D1io5I2C CLOCKxx
D2io4I2C DATAxx
D3io0x10k pullupHIGH
D4io2Built in LED10k pullupHIGH
D5io14SPI SCLKxx
D6io12SPI MISOxx
D7io13SPI MOSIxx
D8io15SPI CS10k pulldownLOW
A0A0Analog Inputxx
RESETRESETRESET10k pullupHIGH

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áható. 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. A lábak nincsenek hasznáva.


Digitális be/kimenet

GPIO[D0]@
Lekérdezi a láb állapotát adatiránytól függetlenül.

GPIO[D5]CL:LED(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)
Ha a láb LOW szintről HIGH szintre vált, a LED bekapcsol. Adatirány nem számít. (Command High)

GPIO[D5]PU=ON
Bekapcsolja a PullUp ellenállást. Default: OFF

GPIO[D5]PU=OFF
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=ON
Bekapcsolja az OpenDrain kimeneti módot. Default: OFF

GPIO[D1]OD=OFF
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[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áis érték NUM[0] helyen tárolódik, STDOUT-ra kiírásra kerül. (Command Changed)
Célszerű ennek lenni az utolsó konfigurációs parancsnak, mert a : utáni parancsokat az utasítás kiadása után végrehajtja.

GPIO[A0]AR=100
A0 tartmányát adja meg. Defaut:255 (0V=0, 3.3V=255)
A parancs kiadása után ez 0V=0 3.3V=100 -ra változik Valid: 2-1024.


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 tartmá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. Defaut: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.
Tartmá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.


Példák
Az alábbi bekötéssel tesztelhetők a példák .
A 9. példa gomb reseteli a használt lábakat, új példa kipróbálása előtt meg kell nyomni!

WeMos D1 mini