INHOUDSOPGAWE:

ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne: 4 stappe
ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne: 4 stappe

Video: ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne: 4 stappe

Video: ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne: 4 stappe
Video: P2 ESP01 4CH Relay Module (Subtittled) 2024, November
Anonim
ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne
ESP8266 Gebruik GPIO0/GPIO2/GPIO15 penne

Opdatering 1 Julie 2018-Opmerking bygevoeg oor herprogrammering wanneer GPIO0 'n uitset is

Dit is 'n baie kort opmerking oor hoe om GPIO0 / GPIO2 en GPIO15 penne op die ESP8266 -module te gebruik.

Opdatering: Kyk ook hoe om die ESP8266-01-penne te gebruik

Inleiding

ESP8266 is 'n goedkoop wifi -chip. Dit kom in verskillende tipes modules voor en kan op verskillende maniere geprogrammeer word. Alle modules maak GPIO0 en GPIO2 toeganklik. Die meeste modules, behalwe ESP8266-01, maak GPIO15 ook toeganklik. Hierdie GPIO's beheer hoe die module begin en vereis as sodanig spesiale hantering om dit enigsins te gebruik. GPIO6-GPIO11 benodig ook spesiale behandeling soos hieronder beskryf.

Stap 1: Flits GPIO -penne - GPIO6 tot GPIO11

Die meeste ESP8266-borde het 'n flitsskyfie gekoppel aan sommige of alle GPIO6-GPIO11. Die meeste programme gebruik flitsgeheue sowel as RAM, dus tensy u spesifiek seker maak dat u kode slegs vanaf RAM loop, kan u hierdie penne nie vir ander doeleindes gebruik nie.

Die presiese aantal penne wat in die reeks GPIO6 tot GPIO11 gebruik word, hang af van die tipe flitshardeware wat op u module gebruik word. Quad IO gebruik 4 reëls vir data (totaal 6 penne) vir tot 4 keer die spoed van standaard. Dual IO gebruik 2 reëls vir data (4 penne totaal) Standaard gebruik 'n enkele reël vir data (3 penne totaal).

Tensy u presies weet wat u bord benodig, is dit die beste om GPIO6 tot GPIO11 te ignoreer en nie na u kode te verwys nie.

Stap 2: GPIO0-, GPIO2- en GPIO15 -penne

GPIO0, GPIO2 en GPIO15 penne
GPIO0, GPIO2 en GPIO15 penne

Hierdie penne bepaal in watter modus die chip begin.

Vir normale programuitvoering moet GPIO0 en GPIO2 opgetrek word na Vcc (3.3V) en GPIO15 moet na GND getrek word, elk met 'n weerstand in die reeks 2K tot 10K weerstand. 'N 2K -weerstand bied 'n beter geraas -immuniteit. OLIMEX gebruik 2K weerstande SparkFun gebruik 10K weerstande. Ek gebruik 3K3 weerstande.

Die instellings van hierdie insette word slegs nagegaan tydens die aanskakel (of herstel) van die skyfie. Daarna is die penne beskikbaar vir algemene gebruik, maar soos hieronder bespreek, word die gebruik daarvan beperk deur hierdie eksterne op/af weerstande.

Stap 3: Gebruik GPIO0, GPIO2 en GPIO15 as uitsette

Gebruik GPIO0, GPIO2 en GPIO15 as uitsette
Gebruik GPIO0, GPIO2 en GPIO15 as uitsette

Soos hierbo genoem, sal hierdie penne reeds 'n weerstand hê wat gekoppel is aan VCC (GPIO0 en GPIO2) of GND vir GPIO15. Dit bepaal hoe 'n eksterne toestel, soos 'n relais of led+weerstand, verbind moet word. Vir GPIO0 en GPIO2 moet 'n eksterne relais tussen VCC en die pen verbind word sodat dit nie die werking van die optrekweerstand belemmer nie. Omgekeerd moet 'n eksterne relais wat aan GPIO15 gekoppel is, tussen GND en die pen verbind word, sodat dit nie die werking van die aftrekweerstand belemmer nie.

Om die eksterne toestel te aktiveer, moet GPIO0 of GPIO2 LOW (Active LOW) gedryf word terwyl GPIO15 HIGH (Active HIGH) aangedryf moet word.

Die skema hierbo toon hoe u GPIO0 en GPIO2 en GPIO15 as uitsette kan gebruik. Hierdie kring bevat ook die nodige pullup/pull down -weerstande. Let op dat die 5V-aflosmodule wat deur GPIO0 aangedryf word, opto-geïsoleer is en 'n aparte gemeenskaplike verbinding vir die invoer het. Dit is belangrik dat die 5V VCCA -spanning nie op die ESP8266 -pen toegepas word nie.

Hoe om te herprogrammeer as u GPIO0 as uitvoer gebruik

Opmerking: GPIO0 moet geaard wees om in die programmeermodus te kom. As u 'n skets maak, kan u die ESP8266 -chip beskadig deur dit op 'n grondslag te plaas. Die veilige manier om die ESP8266 te herprogrammeer wanneer u kode die GPIO0-uitset aandryf, is om:- a) die bord af te skakel b) die kort GPIO0 tot gnd c) die bord aanskakel wat na die programmodus oorgaan as gevolg van die kort op GPIO0 d) verwyder die kort van GPIO0 sodat u nie die uitset onderbreek wanneer die program uitgevoer word nie; e) herprogrammeer die bord f) skakel die bord indien nodig.

Stap 4: Gebruik GPIO0, GPIO2 en GPIO15 as insette

Gebruik GPIO0, GPIO2 en GPIO15 as insette
Gebruik GPIO0, GPIO2 en GPIO15 as insette

Dit is 'n bietjie moeilik om hierdie penne as insette te gebruik. Soos hierbo opgemerk tydens die aanskakel en tydens die herstel, moet hierdie penne opgetel of afgetrek word soos benodig om die ESP8266 -module in die normale werkmodus te laat begin. Dit beteken dat u oor die algemeen nie net 'n eksterne skakelaar aan hierdie penne kan koppel nie, want as u aanskakel, kan u gewoonlik nie waarborg dat die skakelaar die ingang na die grond trek nie, en dit verhoed dat die module korrek begin.

Die truuk is om nie die eksterne skakelaar direk van die GPIO0 of GPIO2 aan die GND te koppel nie, maar om dit in plaas daarvan aan te sluit op 'n ander GPIO -pen wat eers na die grond gedryf word (as 'n uitset) nadat die ESP8266 begin is. Onthou, as dit as uitsette gebruik word, bied die GPIO -penne 'n baie lae weerstandsverbinding met VCC of GND, afhangende van of hulle HOOG of LAAG aangedryf word.

Hier sal slegs GPIO0 en GPIO2 oorweeg word. Deur hierdie metode te gebruik, kan u een (1) toevoegingsinvoer kry met behulp van hierdie twee (2) GPIO's.

'N Soortgelyke metode kan vir GPIO15 gebruik word deur 'n ander GPIO -pen te gebruik om die skakelaar aan +VCC te koppel, maar dit kry nie 'n ekstra invoer nie; u kan net sowel die ander GPIO -pen direk as 'n invoer gebruik.

Die kring hierbo gebruik die ESP8266-01-module as voorbeeld. Sonder om hierdie truuk te gebruik, het die ESP8266-01 geen gratis penne om as invoer te gebruik as u reeds penne RX/TX gebruik vir 'n UART-verbinding nie.

Aangesien die opset () -metode van die skets eers uitgevoer word nadat die ESP8266 -module begin is, is dit veilig om GPIO0 -uitset dan LAAG te maak en sodoende 'n grond te bied vir S1 wat aan GPIO2 gekoppel is. U kan dan digitaal lees (2) elders in u skets gebruik om die skakelaarinstelling te lees.

Afsluiting

Hierdie kort nota wys hoe u GPIO0, GPIO2 en GPIO15 as uitsette gebruik, en hoe u 'n ekstra inset kan gebruik deur GPIO0 en GPIO2 saam te gebruik.

Aanbeveel: