GPIO lábak szerepe, használhatósága

ESP8266, ESP32 chipek és az ESP-xx modulok. Programozási nyelvek, trükkök, hardware tippek.
Avatar
aaszabo
Tranzisztorgyógyász
Hozzászólások: 164
Csatlakozott: 2012. január 22. vasárnap, 7:00
Tartózkodási hely: Budapest

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: aaszabo » 2016. augusztus 16. kedd, 14:27

Kipróbáltam mindkét megoldást az induló pozitív tüske eliminálására (lehúzó ellenállás és invertált kimeneti logika) és számomra meglepő eredményre jutottam.
Alapvetően működtek a megoldások, de nem ugyan úgy. A GPIO 4,5,16,14,12,13 lábakat próbáltam a korábbi bejegyzésben is megadott ESP8266 Witty Cloud modul fejlesztőkészletet (ESP-12F) eszközön.
10k-s lehúzó ellenállást használva a GPIO16 kivételével megszűnt a tüske. A 16-os kivezetésen továbbra is tapasztaltam a tüskét.

A másik eset a két BS170-ből felépített invertáló kimenettel meghajtott eset, amikor is a vezérlési logikát is megváltoztattam és aktív alacsony vezérlést alakítottam ki (azért, mert induláskor HIGH-ra teszem a kimenetet és ez a felhúzó ellenállás miatti tüske hatását érdektelenné teszi, hiszen amúgy is HIGH szintet akarok az ESP kimeneten, hogy inaktív (LOW, 0V) legyen az invertált valódi kimenetem). Ekkor azt tapasztaltam, hogy minden kimeneten jó a működés és az indulási tüske nem jelenik meg az invertáló kimeneten, kivéve a GPIO12. Itt az invertáló után kötött LED továbbra is felvillant.

Magyarázat:
A lehúzó ellenállásos megoldásnál lehet, hogy a 16-os kivezetésre van még valami kötve a Witty modulon, ami miatt nem elég a 10k-s lehúzó ellenállás. Ezt majd még megnézem. Talán valamely lábat a Flash is használja. Rémlik valami ilyesmi. De az is lehet, hogy ezen a lábon valamiért a belső felhúzó ellenállás más értékű. Utána fogok még nézni.

Hogy a FET-es invertáló miért nem működik a 12-es kimeneten annak is az lehet az oka, hogy a Witty modulon van esetleg még valami a 12-es kivezetésen, ami beleszól ez elképzelt működésbe.

Ezeknek még utána nézek...

Avatar
Robert
Elektronbűvölő
Hozzászólások: 10085
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: Robert » 2016. augusztus 16. kedd, 23:23

GPIO12 - az RGB LED zöld ága van rajta.
http://www.tavir.hu - a gazda :)

Avatar
aaszabo
Tranzisztorgyógyász
Hozzászólások: 164
Csatlakozott: 2012. január 22. vasárnap, 7:00
Tartózkodási hely: Budapest

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: aaszabo » 2016. augusztus 19. péntek, 23:19

Leteszteltem ESP07 modul esetére az induláskori tüske kezelésének két megoldását (lehúzó ellenállás, invertáló kimenet).
Itt is azt tapasztaltam, hogy a két megoldás nem azonos eredményt hozott. Az invertáló az általam tesztelt (4,5,16,14,12,13) nem speciális lábakon megoldja a tüske eltüntetését.
A lehúzó ellenállás a GPIO16 kivételével szintén működik. Próbáltam az ESP07 kapcsolási rajzán megtalálni az okot, hogy miért nem működik GPIO16 lábon, de nem találtam. A GPIO16 az XPD_DCDC ESP8266EX lábához van kötve, ami elvileg a Deep-Sleep Wakeup, de ez direktbe ki van vezetve és nem láttam, hogy más rá lett volna kötve. Lehet, hogy a chip belső működése itt eltér.

Minden esetre meg lett az ok és a megoldás is. Én a lehúzó ellenállást választottam, mert kevesebb alkatrészből megoldható, olcsóbb és nem kell inverz vezérlő logikájú programot írni. Az, hogy a 16-os lábon nem működik nem zavar, mert a relét nem erről a lábról vezérlem.

Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: SanyiSay » 2016. augusztus 21. vasárnap, 8:09

Legalább van pár használható láb, Köszi. :)
Az sajnos valós probléma hogy a forgalomba lévő ESP modulok, készülékek hol így hol úgy használják a lábakat és nem minden esetben találunk kapcsolási rajzot hozzá. Fene egye meg őket.

Én a GPIO2-es lábbal szenvedtem, mert azon jön ki a serial1 amit debug portként használ és sehogyan nem sikerül kikapcsolni ezt a funkciót róla. Board beállításokban hiába tiltom le vagy irányítom a debug portot a serial 0-ra. Boot közben mindenképp elküldi az indulási adatokat rajta, és csak utána áll át arra amit beállítottam.

Telectronic
DrótVégénSzéndarab
Hozzászólások: 40
Csatlakozott: 2018. február 26. hétfő, 9:04
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: Telectronic » 2020. október 26. hétfő, 14:30

Próbálom felszabadítani azt a 6 gpio lábat amit semmire sem lehet használni. (GPIO6-7-8-9-10-11)
Próbálkozott már valaki ezzel a feladattal ?
A neten valami flash-hez használható homályos leírást találtam.
Pontosan miért is nem lehet ezeket GPIO-nak használni ? És ha átállítanám function 3-ba akkor sem ?

Köszi
Mindenki azt gondol amit akar, de a szabad világban, szabad országban, bármit csinálhatsz amit szabad !

Avatar
pipi
Biztosítékgyilkos
Hozzászólások: 56
Csatlakozott: 2008. július 6. vasárnap, 6:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: pipi » 2020. október 26. hétfő, 14:56

Nem olyan homályos az: https://randomnerdtutorials.com/esp8266 ... nce-gpios/
A flash, amiben a programodat tárolod, ezeket használja. Párat esetleg használhatsz belőlük, ha a flash kezelést DIO módba állítod. https://github.com/esp8266/Arduino/issues/1446

Telectronic
DrótVégénSzéndarab
Hozzászólások: 40
Csatlakozott: 2018. február 26. hétfő, 9:04
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: Telectronic » 2020. október 26. hétfő, 20:43

Köszönöm.
Nem homályos, de zavaros, főleg így estére :)
Meg mérnöki szinten nem is szeretnék benne elmélyedni. Én csak használni szeretném, és nem azt tudni, hogy miért nem tudom használni, ez kit érdekel :) Azzal semmit sem érek, hogy van 16 portom aztán abból kb.a felét tudom használni, mintha becsaptak volna és elloptak 6 i/o lábat :)
Nekem csak az jön le, hogy alapból 7 GPIO port használható, ha megerőszakolom az RX, TX lábakat akkor a soros monitor kárára 9 GPIO port lesz.
Igazából az SPI port lábait használtam, de most kellene az SPI és az ott lévő drótokat kellene másikra kötnöm.
És itt füstölgök, hogy micsoda pazarlás, kivezetnek 6 GPIO lábat ami kb. semmire sem jó.
Ezért kár volt őket kivezetni meg bearanyozni :)
Ez a DIO mód is csak bizonyos firmwarekben működik és az, hogy most az enyém milyen, hát mittomén :)
Portbővítő nem játszik, már nem fér a panelra meg semmi kedvem sincs újratervezni.
Az egész cucc, már így is 3db pro minivel i2c-n kommunikál + még 2db i2c perifériával +onewire is van. Szóval már nem szívesen nyúlnék bele.

Köszi (futottunk egy kört)
Mindenki azt gondol amit akar, de a szabad világban, szabad országban, bármit csinálhatsz amit szabad !

Avatar
pipi
Biztosítékgyilkos
Hozzászólások: 56
Csatlakozott: 2008. július 6. vasárnap, 6:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: pipi » 2020. október 26. hétfő, 23:13

Sajna egy időben nem használhatsz 2 cuccra 1 lábat. Sajna ezeket elviszi a program memória, vagyis nem "user" láb. Próbálkozz ESP32-vel, jobban jársz, több gpio, gyorsabb, 2 magos - nem kell yield-el küzdeni.
Azért itt is gyorsan elfogyhatnak a lábak pl ESP32-CAM-nál alig marad pár láb.

Avatar
Robert
Elektronbűvölő
Hozzászólások: 10085
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: GPIO lábak szerepe, használhatósága

HozzászólásSzerző: Robert » 2020. október 27. kedd, 6:06

Az újabb modulokon már nem is vezetik ki :(.
ESP8266 helyett inkább ESP32-t érdemes berakni (nagyobb memória, gyorsabb, több láb).
Mondjuk nem semmi panel lehet egy ESP, 3x processzor :)

ESP8266 az inkább önálló miniperifériára jó. A SONOFF 4 csatornás nyomógombor reléjéjez az ESP8266 mellé beraktak egy STM32 chipet, ami a relét, és a gombokat kezeli... Gyakorlatilag egy logikai bővítőchipként az ESP8266 mellett...

Hogy mire jó a SPI lábak - hülye kérdés: ESP8285-ös (Belső flash-es) esetén nem járható?
Vagy a ChipSelecttel sakkozol? Bár a flash memória meg sűrűn van olvasva - lévén az a programé... De mintha tudna az ESP nem csak flash, hanem egyéb tárból is futtatni... Akkor szabad a SPI... (gondolom itt nem játszik)
http://www.tavir.hu - a gazda :)


Vissza: “ExpressIf WiFi”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég