Sadržaj:
- Uvod
- Korak 1: Flash GPIO pinovi - GPIO6 do GPIO11
- Korak 2: Igle GPIO0, GPIO2 i GPIO15
- Korak 3: Korištenje GPIO0, GPIO2 i GPIO15 kao izlaza
- Korak 4: Korištenje GPIO0, GPIO2 i GPIO15 kao ulaza
- Zaključak
Video: ESP8266 Korištenje pinova GPIO0/GPIO2/GPIO15: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:36
Ažuriranje 1. srpnja 2018.-Dodana napomena o ponovnom programiranju kada je GPIO0 izlaz
Ovo je vrlo kratka napomena o tome kako koristiti pinove GPIO0 / GPIO2 i GPIO15 na modulu ESP8266.
Ažuriranje: Provjerite i Kako koristiti pinove ESP8266-01
Uvod
ESP8266 je jeftin čip koji podržava WiFi. Dolazi u različitim vrstama modula i može se programirati na različite načine. Svi moduli čine GPIO0 i GPIO2 pristupačnim. Većina modula, osim ESP8266-01, također čini GPIO15 pristupačnim. Ovi GPIO kontroliraju kako se modul pokreće i kao takvi zahtijevaju posebno rukovanje ako se uopće trebaju koristiti. GPIO6-GPIO11 također zahtijeva poseban tretman kako je dolje opisano.
Korak 1: Flash GPIO pinovi - GPIO6 do GPIO11
Većina ploča ESP8266 ima flash čip povezan s nekim ili svim GPIO6-GPIO11. Većina programa koristi flash memoriju, kao i RAM, pa osim ako se posebno pobrinete da vaš kôd radi samo iz RAM -a, ove pinove ne možete koristiti u druge svrhe.
Točan broj pinova koji se koriste u rasponu GPIO6 do GPIO11 ovisi o vrsti flash hardvera koji se koristi na vašem modulu. Quad IO koristi 4 linije za podatke (ukupno 6 pinova) za do 4 puta veću brzinu od standardne. Dvostruki IO koristi 2 retka za podatke (ukupno 4 pinova) Standard koristi jedan redak za podatke (ukupno 3 pinova).
Osim ako ne znate što vaša ploča zahtijeva, najbolje je zanemariti GPIO6 na GPIO11 i ne pozivati se na njih iz svog koda.
Korak 2: Igle GPIO0, GPIO2 i GPIO15
Ove pinove određuju u kojem načinu se čip pokreće.
Za normalno izvršavanje programa GPIO0 i GPIO2 moraju se povući na Vcc (3,3 V), a GPIO15 na GND, svaki s otpornikom u rasponu od 2K do 10K otpornika. 2K otpornik daje bolju otpornost na buku. OLIMEX koristi 2K otpornike SparkFun koristi 10K otpornike. Koristim 3K3 otpornike.
Postavke ovih ulaza provjeravaju se samo tijekom uključivanja (ili resetiranja) čipa. Nakon toga su pinovi dostupni za opću uporabu, ali kao što je dolje objašnjeno njihova je upotreba ograničena ovim vanjskim otpornicima za povlačenje/spuštanje.
Korak 3: Korištenje GPIO0, GPIO2 i GPIO15 kao izlaza
Kao što je gore navedeno, ove pinove će već imati otpornik spojen na VCC (GPIO0 i GPIO2) ili GND za GPIO15. To određuje kako se mora spojiti bilo koji vanjski uređaj, poput releja ili LED+otpornika. Za GPIO0 i GPIO2, vanjski relej mora biti spojen između VCC -a i pina tako da ne ometa djelovanje pull -up otpornika. Nasuprot tome, vanjski relej spojen na GPIO15 mora biti spojen između GND -a i pina tako da ne ometa djelovanje otpornika za povlačenje.
Da biste aktivirali vanjski uređaj, GPIO0 ili GPIO2 moraju se voziti LOW (Active LOW) dok GPIO15 mora biti vođen HIGH (Active HIGH).
Gornja shema prikazuje kako koristiti GPIO0 i GPIO2 i GPIO15 kao izlaze. Ovaj krug uključuje i potrebne otpornike za izvlačenje/povlačenje. Imajte na umu da je relejni modul 5V koji pokreće GPIO0 optički izoliran i ima zasebnu zajedničku vezu za ulaz. Važno je da se 5V VCCA napon ne primjenjuje na pin ESP8266.
Kako reprogramirati kada koristite GPIO0 kao izlaz
Napomena: GPIO0 mora biti uzemljen da biste ušli u način programiranja. Ako skica radi visoko, uzemljenje može oštetiti čip ESP8266. Siguran način za reprogramiranje ESP8266 kada vaš kôd pokreće izlaz GPIO0 je:- a) Isključivanje ploče b) Kratko GPIO0 do gnd c) Uključivanje ploče koja prelazi u programski način zbog kratkog spoja na GPIO0 d) Uklonite kratki spoj iz GPIO0 kako ne biste smanjili izlaz tijekom rada programa e) reprogramirajte ploču f) po potrebi uključite ploču.
Korak 4: Korištenje GPIO0, GPIO2 i GPIO15 kao ulaza
Korištenje ovih pinova kao ulaza pomalo je nezgodno. Kao što je gore navedeno pri uključivanju i tijekom resetiranja, ti se pinovi moraju povući prema gore ili prema dolje kako bi se modul ESP8266 pokrenuo u normalnom načinu rada. To znači da općenito ne možete jednostavno priključiti vanjski prekidač na ove pinove jer pri uključivanju obično ne možete jamčiti da prekidač neće povući ulaz na masu i tako spriječiti ispravan start modula.
Trik je u tome da vanjski prekidač ne spojite izravno s GPIO0 ili GPIO2 na GND, već ga umjesto toga spojite na drugi GPIO pin koji se dovodi na masu (kao izlaz) tek nakon pokretanja ESP8266. Upamtite, kada se koriste kao izlazi, GPIO pinovi pružaju vezu vrlo niskog otpora na VCC ili GND, ovisno o tome jesu li pogonjeni VISOKO ili NISKO.
Ovdje će se uzeti u obzir samo GPIO0 i GPIO2. Pomoću ove metode možete dobiti jedan (1) dodatni ulaz pomoću ova dva (2) GPIO -a.
Slična metoda može se koristiti za GPIO15 korištenjem drugog GPIO pina za povezivanje sklopke na +VCC, ali time se ne dobiva dodatni ulaz, već biste mogli koristiti i drugi GPIO pin izravno kao ulaz.
Gore navedeni krug koristi modul ESP8266-01 kao primjer. Bez korištenja ovog trika, ESP8266-01 nema slobodnih pinova koji bi se mogli koristiti kao ulaz ako već koristite pinove RX/TX za UART vezu.
Budući da se metoda setup () skice pokreće tek nakon pokretanja modula ESP8266, tada je sigurno učiniti izlaz GPIO0 NISKIM i tako osigurati uzemljenje za S1 spojen na GPIO2. Zatim možete upotrijebiti digitalRead (2) drugdje na skici za čitanje postavke prekidača.
Zaključak
Ova kratka napomena prikazuje kako koristiti GPIO0, GPIO2 i GPIO15 kao izlaze i kako koristiti dobiti dodatni ulaz pomoću GPIO0 i GPIO2 zajedno.
Preporučeni:
4 znamenke 7 segmentni zaslon 14 pinova s Arduinom: 3 koraka
4 znamenke 7 segmentni zaslon 14 pinova s Arduinom: Uvijek je dobra ideja provjeriti radi li uređaj ispravno ili ne ako ta komponenta ima vrlo veliki broj pinova. U ovom projektu testirao sam svoj 4 -znamenkasti 7 -segmentni 14 -pinski zaslon. Svih 7 segmenata istovremeno će se prikazivati od 0 do 9
Neopixel Ws2812 Rainbow LED sjaj s M5stick-C - Pokretanje Rainbow na Neopixelu Ws2812 Korištenje M5stack M5stick C Korištenje Arduino IDE -a: 5 koraka
Neopixel Ws2812 Rainbow LED sjaj s M5stick-C | Pokretanje Rainbow-a na Neopixelu Ws2812 Korištenje M5stack M5stick C Korištenje Arduino IDE-a: Zdravo dečki, u ovim uputama naučit ćemo kako koristiti neopixel ws2812 LED diode ili LED traku ili LED matricu ili LED prsten s razvojnom pločom m5stack m5stick-C s Arduino IDE-om, a mi ćemo napraviti dugin uzorak s njim
Razvoj aplikacija pomoću GPIO pinova na DragonBoard 410c s operativnim sustavima Android i Linux: 6 koraka
Razvoj aplikacija pomoću GPIO pinova na DragonBoardu 410c s operacijskim sustavima Android i Linux: Svrha ovog vodiča je prikazati informacije potrebne za razvoj aplikacija pomoću GPIO pina na DragonBoard 410c proširenju male brzine. Ovaj vodič predstavlja informacije za razvoj aplikacija pomoću GPIO pinova sa SYS -om na Andr -u
Kako izvesti mnogo LED dioda s nekoliko pinova mikrokontrolera .: 6 koraka (sa slikama)
Kako pokrenuti mnogo LED dioda s nekoliko pinova mikrokontrolera .: Uzimajući u obzir činjenicu da mnogi pinovi mikrokontrolera imaju tri stanja (+V, GND ili "visoka impedancija", N*(N-1) LED diode možete upravljati s N pinova . Dakle, mali 8 -pin mikrokontroler poput PIC12Fxxx ili ATtiny11 može pokretati 20 LED dioda na svojih pet dostupnih
ISP utičnica sa 6 i 8 pinova: 4 koraka
ISP 6 -pinski utikač za 8 pinova: Razlog zašto sam uglavnom izgradio ovaj projekt bio je programiranje ATTiny45, koji ima 8 -polnu vezu, dok moj USBtinyISP (iz Ladyade) ima samo 10 -pinsku i 6 -pinsku vezu. Nakon što sam oko 3-4 tjedna njuškao po internetu, nisam našao ništa što