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 izmjena: 2024-01-30 08:07
Ažuriranje 1. jula 2018.-Dodana napomena o ponovnom programiranju kada je izlaz GPIO0
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 tipovima 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đe zahteva poseban tretman kao što je dole 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.
Tačan broj pinova koji se koriste u rasponu GPIO6 do GPIO11 zavisi od vrste 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 linije za podatke (ukupno 4 pina) Standard koristi jednu liniju za podatke (ukupno 3 pina).
Osim ako ne znate što vaša ploča zahtijeva, najbolje je da ignorirate GPIO6 na GPIO11 i ne pozivate se na njih iz svog koda.
Korak 2: Igle GPIO0, GPIO2 i GPIO15
Ovi pinovi određuju u kojem načinu se čip pokreće.
Za normalno izvršavanje programa GPIO0 i GPIO2 moraju biti povučeni do Vcc (3.3V), a GPIO15 na GND, svaki sa 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 pri uključivanju (ili resetiranju) čipa. Nakon toga su pinovi dostupni za opću upotrebu, ali kao što je dolje objašnjeno njihova upotreba je ograničena ovim vanjskim otpornicima za podizanje/spuštanje.
Korak 3: Korištenje GPIO0, GPIO2 i GPIO15 kao izlaza
Kao što je gore navedeno, ove pinove će već imati otpornik spojen ili na VCC (GPIO0 i GPIO2) ili na GND za GPIO15. Ovo određuje kako bilo koji vanjski uređaj, poput releja ili LED+otpornika, mora biti povezan. 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 to 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 na gnd c) Uključivanje ploče koja prelazi u programski način zbog kratkog spoja na GPIO0 d) Uklonite kratki spoj iz GPIO0 tako da ne skraćujete izlaz dok se program pokreće 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 teško. Kao što je gore navedeno pri uključivanju i tijekom resetiranja, ove pinove je potrebno povući prema gore ili prema dolje kako bi se ESP8266 modul 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 garantirati da prekidač neće povući ulaz na masu i tako spriječiti pravilno pokretanje modula.
Trik je u tome da vanjski prekidač ne povežete 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 njegovog prekidača na +VCC, ali to ne daje dodatni ulaz, možete koristiti i drugi GPIO pin direktno kao ulaz.
Gore navedeni krug koristi modul ESP8266-01 kao primjer. Bez korištenja ovog trika, ESP8266-01 nema slobodne pinove koje bi mogao koristiti kao ulaz ako već koristite pinove RX/TX za UART vezu.
S obzirom 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 koristiti digitalRead (2) na drugom mjestu na skici za čitanje postavke prekidača.
Zaključak
Ova kratka napomena pokazuje kako se GPIO0, GPIO2 i GPIO15 koriste kao izlazi i kako se koristi dodatni ulaz pomoću GPIO0 i GPIO2 zajedno.
Preporučuje se:
4 znamenke, 7 segmentni ekran, 14 pinova sa 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 sam testirao svoj 4 -znamenkasti 7 -segmentni 14 -pinski ekran. Svih 7 segmenata će istovremeno prikazivati 0 do 9
3 ATtiny85 pinova Kontrola - Nrf24L01 - Povratak na vrh stranice: 7 koraka
3 ATtiny85 igle Kontrola - Nrf24L01 - التحكم بثلاثة دبابيس فى: بسم الله الرحمن الرحيم
Neopixel Ws2812 Rainbow LED sjaj sa M5stick-C - Pokretanje Rainbow -a na Neopixelu Ws2812 Korištenje M5stack M5stick C Korištenje Arduino IDE -a: 5 koraka
Neopixel Ws2812 Rainbow LED sjaj sa M5stick-C | Pokretanje Rainbow-a na Neopixel Ws2812 Korištenje M5stack M5stick C Korištenje Arduino IDE-a: Zdravo momci 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 sa njim
Razvoj aplikacija pomoću GPIO pinova na DragonBoard 410c sa Android i Linux operativnim sistemima: 6 koraka
Razvoj aplikacija pomoću GPIO pinova na DragonBoard 410c sa Android i Linux operativnim sistemima: Svrha ovog vodiča je prikazati informacije potrebne za razvoj aplikacija pomoću GPIO pina na DragonBoard 410c proširenju pri malim brzinama. 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 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