Sisukord:

ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine: 4 sammu
ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine: 4 sammu

Video: ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine: 4 sammu

Video: ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine: 4 sammu
Video: Electronics: ESP8266, GPIO0 or GPIO2 as input 2024, November
Anonim
ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine
ESP8266 GPIO0/GPIO2/GPIO15 tihvtide kasutamine

Värskendus 1. juuli 2018-lisatud märkus ümberprogrammeerimise kohta, kui GPIO0 on väljund

See on väga lühike märkus selle kohta, kuidas kasutada GPIO0 / GPIO2 ja GPIO15 kontakte ESP8266 moodulis.

Värskendus: vaadake ka seda, kuidas kasutada tihvte ESP8266-01

Sissejuhatus

ESP8266 on odav WiFi -kiip. Seda on erinevat tüüpi mooduleid ja seda saab programmeerida mitmel viisil. Kõik moodulid muudavad GPIO0 ja GPIO2 juurdepääsetavaks. Enamik mooduleid, välja arvatud ESP8266-01, muudavad GPIO15 juurdepääsetavaks. Need GPIO -d juhivad mooduli käivitamist ja nõuavad sellisena spetsiaalset käsitsemist, kui neid üldse kasutada soovitakse. GPIO6-GPIO11 vajavad ka erikohtlemist, nagu allpool kirjeldatud.

Samm 1: Välk GPIO pins - GPIO6 kuni GPIO11

Enamikul ESP8266 tahvlitest on välklamp ühendatud mõne või kõigi GPIO6-GPIO11-ga. Enamik programme kasutab välkmälu ja ka RAM -i, nii et kui te ei veendu, et teie kood töötab ainult RAM -ist, ei saa te neid nööpnõelu kasutada muudel eesmärkidel.

Vahemikus GPIO6 kuni GPIO11 kasutatavate tihvtide täpne arv sõltub teie moodulis kasutatava välklambi tüübist. Quad IO kasutab andmete jaoks 4 rida (kokku 6 tihvti) kuni 4 -kordse kiirusega. Dual IO kasutab andmete jaoks 2 rida (kokku 4 tihvti) Standard kasutab andmete jaoks ühte rida (kokku 3 tihvti).

Kui te ei tea täpselt, mida teie plaat nõuab, on parem GPIO6 -d GPIO11 -le lihtsalt ignoreerida ja oma koodist neile mitte viidata.

Samm: GPIO0, GPIO2 ja GPIO15 tihvtid

GPIO0, GPIO2 ja GPIO15 tihvtid
GPIO0, GPIO2 ja GPIO15 tihvtid

Need tihvtid määravad, millises režiimis kiip käivitub.

Programmi normaalseks täitmiseks tuleb GPIO0 ja GPIO2 tõmmata kuni Vcc (3.3V) ja GPIO15 tõmmata GND -le, kumbki takisti on vahemikus 2K kuni 10K. 2K takisti tagab parema mürakindluse. OLIMEX kasutab 2K takistit SparkFun kasutab 10K takistit. Kasutan 3K3 takistit.

Nende sisendite seadeid kontrollitakse ainult kiibi sisselülitamisel (või lähtestamisel). Pärast seda on tihvtid üldkasutatavad, kuid nagu allpool kirjeldatud, piiravad nende kasutamist need välised tõmbetakistid.

Samm 3: GPIO0, GPIO2 ja GPIO15 kasutamine väljunditena

Väljunditena GPIO0, GPIO2 ja GPIO15 kasutamine
Väljunditena GPIO0, GPIO2 ja GPIO15 kasutamine

Nagu eespool märgitud, on neil tihvtidel juba takisti ühendatud kas VCC -ga (GPIO0 ja GPIO2) või GPIO15 jaoks GND -ga. See määrab kindlaks, kuidas tuleb ühendada mis tahes väline seade, näiteks relee või led+takisti. GPIO0 ja GPIO2 puhul tuleb VCC ja tihvti vahele ühendada väline relee, et see ei segaks tõmbetakisti tööd. Seevastu GPIO15 -ga ühendatud väline relee tuleb ühendada GND ja tihvti vahele nii, et see ei segaks tõmbetakistuse tööd.

Välisseadme aktiveerimiseks tuleb GPIO0 või GPIO2 juhtida LOW (Active LOW), GPIO15 aga HIGH (Active HIGH).

Ülaltoodud skeem näitab, kuidas kasutada väljunditena GPIO0 ja GPIO2 ning GPIO15. See vooluahel sisaldab ka vajalikke tõmbe-/väljatõmbetakistusi. Pange tähele, et 5 V releemoodul, mida juhib GPIO0, on optoisolatsiooniga ja sellel on sisendi jaoks eraldi ühine ühendus. On oluline, et 5 V VCCA pinget ei rakendata ESP8266 tihvtile.

GPRO0 väljundina kasutamisel ümberprogrammeerimine

Märkus. Programmeerimisrežiimi sisenemiseks peab GPIO0 olema maandatud. Kui visand ajab selle kõrgele, võib selle maandamine kahjustada ESP8266 kiipi. Turvaline viis ESP8266 ümberprogrammeerimiseks, kui teie kood juhib GPIO0 väljundit, on:- a) lülitada plaat välja b) lühike GPIO0 kuni gnd c) lülitada sisse tahvel, mis läheb GPIO0 lühise tõttu programmirežiimi d) eemaldada lühis GPIO0 -st, nii et te ei käivita programmi käivitamisel väljundit. e) plaadi ümberprogrammeerimine; f) vajadusel lülitage plaat sisse.

Samm 4: GPIO0, GPIO2 ja GPIO15 kasutamine sisenditena

GPIO0, GPIO2 ja GPIO15 kasutamine sisenditena
GPIO0, GPIO2 ja GPIO15 kasutamine sisenditena

Nende tihvtide kasutamine sisenditena on natuke keeruline. Nagu ülalpool sisselülitamisel ja lähtestamise ajal märgitud, tuleb need tihvtid vastavalt vajadusele üles või alla tõmmata, et ESP8266 moodul käivituks tavarežiimis. See tähendab, et üldiselt ei saa te nendele tihvtidele lihtsalt välist lülitit kinnitada, sest sisselülitamisel ei saa tavaliselt garanteerida, et lüliti ei tõmba sisendit maapinnale ja takistab seega mooduli õiget käivitamist.

Nipp on selles, et välist lülitit ei tohi ühendada otse GPIO0 või GPIO2 juurest GND -ga, vaid ühendada see hoopis teise GPIO -pistikuga, mis on maandatud (väljundina) alles pärast ESP8266 käivitamist. Pidage meeles, et kui väljundina kasutatakse, pakuvad GPIO tihvtid väga madala takistusega ühendust kas VCC või GND -ga sõltuvalt sellest, kas neid juhitakse KÕRGE või MADAL.

Siin võetakse arvesse ainult GPIO0 ja GPIO2. Seda meetodit kasutades saate ühe (1) lisasisendi, kasutades neid kahte (2) GPIO -d.

Sarnast meetodit saab kasutada ka GPIO15 puhul, kasutades selle lüliti ühendamiseks +VCC -ga teist GPIO -nööpi, kuid see ei anna täiendavat sisendit, vaid võite kasutada ka teist GPIO -nööpi otse sisendina.

Ülaltoodud vooluahel kasutab näitena ESP8266-01 moodulit. Seda trikki kasutamata ei ole ESP8266-01 sisendina ühtegi vaba tihvti, kui kasutate juba tihvte RX/TX UART-ühenduse jaoks.

Kuna visandi setup () meetod käivitatakse alles pärast ESP8266 mooduli käivitamist, on ohutu muuta GPIO0 väljund siis madalaks ja seega luua alus GPIO2 -ga ühendatud S1 -le. Seejärel saate lüliti sätte lugemiseks kasutada oma visandis mujal oma digitaalset lugemist (2).

Järeldus

See lühike märkus näitab, kuidas kasutada väljunditena GPIO0, GPIO2 ja GPIO15 ning kuidas kasutada täiendavat sisendit, kasutades GPIO0 ja GPIO2 koos.

Soovitan: