Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Moj namen je deliti svoje izkušnje z ESP8266 prek modulov ESP-01, ESP-12 in NodeMCU.
Bom razložil:
1. Kako povezati ESP-01 z računalnikom
2. Znova naložite vdelano programsko opremo AT
3. Za programiranje čipa uporabite Arduino IDE
4. Izkušnja vozlišča MCU
5. DeepSleep ali napajanje modula z baterijo
6. Pure ESP12 - povežite ga z računalnikom in se pripravite na vdelane projekte
1. korak: ESP -01 - Preskus komunikacije
Potrebujete:
- Seveda modul ESP-01
- Serijski vmesnik USB
- Regulator 3.3V, uporabil sem LE33CZ (max 100mA), deluje, vendar priporočam model z 1A Max.
Sledite shemi.
Opomba: CH_PD mora biti povezan z +VCC, kot je omenjeno v podatkovnem listu ESP8266.
Komunicirajte z ESP:
Običajno pri nakupu takega modula:
- vdelana programska oprema AT je že v pomnilniku
- privzeta serijska hitrost je 115200 b / s
Teoretično lahko uporabite katero koli programsko opremo za serijsko komunikacijo. Pazite, da po vsakem ukazu dodate New Line & Carriage Return.
Poskušal sem uporabiti PutTTY za pošiljanje ukazov AT, vendar brez uspeha zaradi teh znakov New Line & Carriage Return. Nisem našel načina za to
Zato sem uporabil serijski monitor ARDUINO, pazite, da nastavite "Tako NL&CR", drugače ne bo delovalo
Ko ste pripravljeni:
- Poskusite vnesti: AT
- ESP bi moral odgovoriti: V redu
Zdaj ste na strani. Za ukaze AT si oglejte dokumentacijo Espressif.
Z ukazi AT se lahko povežete z WiFi in ustvarite strežnik HTTP. Vendar ne morete ukazovati GPIO.
2. korak: ESP -01 - Znova naložite vdelano programsko opremo AT
V primeru, da ob prejemu modula v njem ni programske opreme (običajno pa je), tukaj razložim, kako ga znova naložim z orodjem za več platform.
Ta korak lahko preskočite, če je bil prejšnji v redu.
Najprej morate vedeti:
- Za vstop v programski način morate nastaviti GPIO0 na 0V in ponastaviti, medtem ko je GPIO0 še vedno na 0V.
- Potem je modul pripravljen za nalaganje vdelane programske opreme v pomnilnik flash
Če želite prenesti SDK, pojdite na Espressif.com:
V mapi bin/at vam bo datoteka README povedala, katere datoteke naložite v pomnilnik in začetne naslove
Primer:
# NAČIN NON-BOOT ## prenos
eagle.flash.bin 0x00000
eagle.irom0text.bin 0x10000
blank.bin
Velikost bliskavice 8Mbit: 0x7e000 & 0xfe000
Velikost bliskavice 16Mbit: 0x7e000 & 0x1fe000
Velikost bliskavice 16Mbit-C1: 0xfe000 & 0x1fe000
Velikost bliskavice 32Mbit: 0x7e000 & 0x3fe000
Velikost bliskavice 32Mbit-C1: 0xfe000 & 0x3fe000
esp_init_data_default.bin (neobvezno)
Velikost bliskavice 8Mbit: 0xfc000
Velikost bliskavice 16Mbit: 0x1fc000
Velikost bliskavice 16Mbit-C1: 0x1fc000
Velikost bliskavice 32Mbit: 0x3fc000
Velikost bliskavice 32Mbit-C1: 0x3fc000
Opomba: Morate poznati velikost in vrsto pomnilnika, ki ga imate v modulu. To je točka, ki jo bomo obravnavali v nekaj sekundah …
Za nalaganje vdelane programske opreme uporabite esptool.py:
- Espressif priporoča uporabo lastne programske opreme, vendar je v sistemu Windows
- Zato je https://github.com/espressif/esptool dobra alternativa
- python esptool.py --port/dev/ttyUSB0 --baud 115200 write_flash 0x00000./at/noboot/eagle.flash.bin
- python esptool.py --port/dev/ttyUSB0 --baud 115200 write_flash 0x10000./at/noboot/eagle.irom0text.bin
- python esptool.py --port/dev/ttyUSB0 --baud 115200 write_flash 0x7e000./bin/blank.bin
- python esptool.py --port/dev/ttyUSB0 --baud 115200 write_flash 0xfc000./bin/esp_init_data_default.bin
- …
Pomembna opomba:
Te stvari ne morete narediti, če ne veste, kakšen pomnilnik imate v modulu.
Ti dam nasvet:
python esptool.py --port /dev /ttyUSB0 --baud 115200 flash_id
Nato si oglejte kombinacijo na
proizvajalec c8 je GigaDevice, naprava 4013 pa GD25Q40, ki je 4Mbit = 512KByte naprava
proizvajalec ef je Winbond (ex Nexcom), naprava 4016 pa W25Q32, ki je naprava 32Mbit = 4MByte
3. korak: Uporabite ARDUINO IDE
V nastavitvah nastavitev dodajte ta URL »Dodatnim URL -jem upravitelja plošč«:
arduino.esp8266.com/stable/package_esp8266c…
Po tem znova zaženite ARDUINO. Nato boste v "TOOL-> BOARD" lahko izbrali Generic ESP8266 Module.
V meniju Datoteka-> Primeri boste našli primere skic, ki vam bodo pomagale začeti programiranje z ARDUINO.
Opombe:
- Ko prenesete program, ne pozabite vstopiti v način programiranja (GPIO0 = 0V in RESET).
- Ko prenesete program arduino na ESP, vdelana programska oprema AT ni več na voljo, zato ukazi AT ne.
- Uporabite možnost: nastavitve skice + wifi
4. korak: MCU vozlišča
Če kupite takšen modul, je to zelo priročno:
- ESP-12 v notranjosti
- Za preprost vstop v način programiranja imate gumb za bliskavico + ponastavitev
- Zatiči
- Vgrajena vrata USB…
Če pa ga želite vključiti v projekt, morda ni najboljši. "Čisti" ESP12 bomo videli na koncu tega navodila.
5. korak: DeepSleep ali napajanje modula z baterijo
Super je imeti WiFi, vendar potrebuje moč. Če pustite modul vklopljen, niste prepričani, da ga lahko dolgo časa vdelate v projekt baterij.
Na srečo lahko ESP vstopi v način globokega spanja. Nato porabi nekaj mikro-amperov.
To je mogoče z ukazi AT.
Vendar bom to pokazal s programiranjem arduino.
Najprej priključite WakeUpPin = GPIO16 na RESET ESP. Ker ko ESP vstopi v način globokega spanja, se zbudi tako, da se ponastavi prek vtiča GPIO16.
Za vstop v način DeepSleep uporabite kodo: ESP.deepSleep (, WAKE_RF_DEFAULT);
je v mikro sekundah. ESP bo med ponastavitvijo med spanjem zaspal.
6. korak: Čisti ESP12 - povežite ga z računalnikom in se pripravite na vdelane projekte
Ne bojte se kupiti čistega modula ESP12. Je poceni, lahek in majhen.
Priključite ga na enak način kot modul ESP-01 z adapterjem Serial-USB.
Ne pozabite, da mora biti CH_PD na Vcc.
Potem lahko izdelate vgrajene projekte, na baterije, z WiFi in zmogljivim mikrokrmilnikom !!