Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Målet mitt her er å dele min erfaring med ESP8266 gjennom modulene ESP-01, ESP-12 og NodeMCU.
Jeg skal forklare:
1. Hvordan koble ESP-01 til datamaskinen
2. Last inn AT -fastvaren på nytt
3. Bruk Arduino IDE til å programmere brikken
4. Node MCU -opplevelse
5. DeepSleep eller slå på modulen med batteri
6. Ren ESP12 - Koble den til datamaskinen din og gjør deg klar for innebygde prosjekter
Trinn 1: ESP -01 - Kommunikasjonstest
Du trenger:
- ESP-01-modul selvfølgelig
- Seriell USB-adapter
- En 3.3V regulator, jeg brukte en LE33CZ (maks 100mA), den fungerer, men jeg anbefaler en modell med 1A Max.
Følg skjemaet.
Merk: CH_PD må kobles til +VCC, slik det er nevnt i databladet til ESP8266.
Kommuniser med ESP:
Normalt når du kjøper en slik modul:
- AT -fastvaren er allerede i minnet
- standard seriell hastighet er 115200 bps
Teoretisk sett kan du bruke hvilken som helst seriell kommunikasjonsprogramvare. Bare vær forsiktig med å legge til New Line & Carriage Return etter hver kommando.
Jeg prøvde å bruke PutTTY til å sende AT -kommandoer, men uten hell, på grunn av disse New Line & Carriage Return -tegnene. Jeg fant ikke måten å gjøre det på
Så jeg brukte den serielle skjermen til ARDUINO, pass på å sette opp "Både NL&CR" ellers fungerer det ikke
Når du er klar:
- Prøv å skrive: AT
- ESP skal svare: OK
Nå er du inne. Se Espressif -dokumentasjon for AT -kommandoer.
Med AT -kommandoer kan du koble til WiFi og opprette en HTTP -server. Men du kan ikke styre GPIO.
Trinn 2: ESP -01 - Last inn AT -fastvaren på nytt
I tilfelle du mottar modulen, er det ingen programvare inne (men normalt er det), forklarer jeg her hvordan du laster den inn på nytt med et multi-plattformverktøy.
Du kan hoppe over dette trinnet hvis det forrige var ok for deg.
Det første du trenger å vite:
- For å gå inn i programmodus må du sette GPIO0 på 0V og gjøre en RESET mens GPIO0 fortsatt er på 0V.
- Da er modulen klar til å laste fastvare i flash -minnet
Gå til Espressif.com for å laste ned SDK:
I mappe bin/at vil README -filen fortelle deg hvilke filer du skal laste inn i minnet og startadressene
Eksempel:
# NON-BOOT MODE ## nedlasting
eagle.flash.bin 0x00000
eagle.irom0text.bin 0x10000
blank.bin
Flash -størrelse 8Mbit: 0x7e000 og 0xfe000
Flash -størrelse 16Mbit: 0x7e000 og 0x1fe000
Flash-størrelse 16Mbit-C1: 0xfe000 og 0x1fe000
Flash -størrelse 32Mbit: 0x7e000 og 0x3fe000
Flash-størrelse 32Mbit-C1: 0xfe000 og 0x3fe000
esp_init_data_default.bin (valgfritt)
Flash -størrelse 8Mbit: 0xfc000
Flash -størrelse 16Mbit: 0x1fc000
Flash-størrelse 16Mbit-C1: 0x1fc000
Flash -størrelse 32Mbit: 0x3fc000
Flash-størrelse 32Mbit-C1: 0x3fc000
Merk: Du må vite størrelsen og typen minne du har i modulen. Det er et punkt vi skal håndtere i løpet av få sekunder …
Bruk esptool.py for å laste inn fastvaren:
- Espressif anbefaler å bruke sin egen programvare, men den er på Windows
- Så https://github.com/espressif/esptool er et godt alternativ
- 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
- …
Viktig notat:
Du kan ikke gjøre disse tingene hvis du ikke vet hva slags minne du har i modulen.
Jeg gir deg et tips:
python esptool.py --port /dev /ttyUSB0 --baud 115200 flash_id
Sjekk deretter kombinasjonen på
produsent c8 er GigaDevice og enhet 4013 er GD25Q40, som er en 4Mbit = 512KByte -enhet
produsent ef er Winbond (ex Nexcom) og enhet 4016 er W25Q32, som er en 32Mbit = 4MByte -enhet
Trinn 3: Bruk ARDUINO IDE
I preferanseinnstillingene, legg til denne nettadressen i "Ekstra Boards Manager -nettadresser":
arduino.esp8266.com/stable/package_esp8266c…
Start ARDUINO på nytt etter det. Deretter vil du i "TOOL-> BOARD" kunne velge Generic ESP8266 Module.
I Fil-> Eksempler finner du eksempler på skisser som hjelper deg med å starte programmeringen med ARDUINO.
Merknader:
- Når du laster ned programmet, ikke glem å gå inn i programmeringsmodus (GPIO0 = 0V og RESET).
- Når du har lastet ned et arduino -program på ESP, er ikke AT -fastvaren tilgjengelig lenger, så AT -kommandoer skal ikke.
- Bruk alternativet: skisse + wifi -innstillinger
Trinn 4: Node MCU
Hvis du kjøper denne typen moduler, er det veldig praktisk:
- ESP-12 inne
- Du har en blits + tilbakestillingsknapp for enkelt å gå inn i programmeringsmodus
- Pinner
- En integrert USB -port…
Men hvis du vil integrere det i et prosjekt, er det kanskje ikke det beste. Vi vil se den "rene" ESP12 på slutten av denne instruerbare.
Trinn 5: DeepSleep eller slå på modulen med batteri
Det er kult å ha WiFi, men det tar strøm. Hvis du lar modulen PÅ være usikker på at du kan bygge den inn lenge i et batteriprosjekt.
Heldigvis kan ESP gå inn i dyp dvalemodus. Den bruker da noen få mikroforsterkere.
Det er mulig å gjøre det med AT -kommandoer.
Men jeg vil vise det gjennom arduino -programmering.
Først koble WakeUpPin = GPIO16 til RESET av ESP. Fordi når ESP går inn i dyp dvalemodus, våkner den ved å tilbakestille seg selv gjennom GPIO16 -pinnen.
For å gå inn i DeepSleep -modus, bruk koden: ESP.deepSleep (, WAKE_RF_DEFAULT);
er i mikrosekunder. ESP vil sove under USA før den nullstilles.
Trinn 6: Ren ESP12 - Koble den til datamaskinen din og gjør deg klar for innebygde prosjekter
Ikke vær redd for å kjøpe den rene ESP12 -modulen. Den er billig, lett og liten.
Koble den på samme måte som ESP-01-modulen, med en Serial-USB-adapter.
Ikke glem at CH_PD skal være på Vcc.
Deretter kan du lage innebygde prosjekter, på batterier, med WiFi og en kraftig mikrokontroller !!