Sommario:

ESP Qualcosa: 6 passaggi
ESP Qualcosa: 6 passaggi

Video: ESP Qualcosa: 6 passaggi

Video: ESP Qualcosa: 6 passaggi
Video: Naroa & Nekane 6[ENG/ESP/ITA subs] 2024, Dicembre
Anonim
ESP qualcosa
ESP qualcosa
ESP qualcosa
ESP qualcosa
ESP qualcosa
ESP qualcosa
ESP qualcosa
ESP qualcosa

Il mio scopo qui è condividere la mia esperienza con ESP8266 attraverso i moduli ESP-01, ESP-12 e NodeMCU.

Spiegherò:

1. Come collegare ESP-01 al computer?

2. Ricaricare il firmware AT

3. Usa Arduino IDE per programmare il chip

4. Esperienza MCU del nodo

5. DeepSleep o alimenta il tuo modulo con la batteria

6. Pure ESP12: collegalo al tuo computer e preparati per i progetti embedded

Passaggio 1: ESP-01 - Test di comunicazione

ESP-01 - Test di comunicazione
ESP-01 - Test di comunicazione
ESP-01 - Test di comunicazione
ESP-01 - Test di comunicazione
ESP-01 - Test di comunicazione
ESP-01 - Test di comunicazione

Hai bisogno:

  1. Modulo ESP-01 ovviamente
  2. Adattatore seriale-USB
  3. Un regolatore da 3,3V, io ho usato un LE33CZ (max 100mA), funziona ma consiglio un modello con 1A Max.

Segui lo schema.

Nota: CH_PD deve essere collegato a +VCC, come indicato nella scheda tecnica di ESP8266.

Comunicare con l'ESP:

Normalmente quando si acquista tale modulo:

  • il firmware AT è già in memoria
  • la velocità seriale predefinita è 115200 bps

Teoricamente puoi utilizzare qualsiasi software di comunicazione seriale. Basta fare attenzione ad aggiungere Nuova linea e Ritorno a capo dopo ogni comando.

Ho provato a utilizzare PutTTY per inviare comandi AT ma senza successo, a causa di questi caratteri New Line e Carriage Return. Non ho trovato il modo per farlo

Quindi ho usato il monitor seriale di ARDUINO, abbi cura di impostare "Both NL&CR" altrimenti non funzionerà

Una volta che sei pronto:

  • Prova a digitare: AT
  • ESP dovrebbe rispondere: OK

Ora sei dentro. Fare riferimento alla documentazione di Espressif per i comandi AT.

Con i comandi AT puoi connetterti al WiFi e creare un server HTTP. Ma non puoi comandare GPIO.

Passaggio 2: ESP-01 - Ricarica il firmware AT

Nel caso in cui quando ricevi il modulo non ci sia software all'interno (ma normalmente lo è), ti spiego qui come ricaricarlo con uno strumento multipiattaforma.

Puoi saltare questo passaggio se quello precedente era ok per te.

La prima cosa che devi sapere:

  • Per entrare in modalità programma devi mettere GPIO0 a 0V ed eseguire un RESET mentre GPIO0 è ancora a 0V.
  • Quindi il modulo è pronto per caricare il firmware nella memoria flash

Vai su Espressif.com per scaricare l'SDK:

Nella cartella bin/at, il file README ti dirà quali file caricare in memoria e gli indirizzi di partenza

Esempio:

# MODALITÀ NON DI AVVIO## download

eagle.flash.bin 0x00000

eagle.irom0text.bin 0x10000

vuoto.bin

Dimensione flash 8Mbit: 0x7e000 e 0xfe000

Dimensione flash 16 Mbit: 0x7e000 e 0x1fe000

Dimensione flash 16Mbit-C1: 0xfe000 e 0x1fe000

Dimensione flash 32 Mbit: 0x7e000 e 0x3fe000

Dimensione flash 32Mbit-C1: 0xfe000 e 0x3fe000

esp_init_data_default.bin (opzionale)

Dimensione flash 8Mbit: 0xfc000

Dimensione flash 16Mbit: 0x1fc000

Dimensione flash 16Mbit-C1: 0x1fc000

Dimensione flash 32Mbit: 0x3fc000

Dimensione flash 32Mbit-C1: 0x3fc000

Nota: devi conoscere la dimensione e il tipo di memoria che hai nel tuo modulo. Questo è un punto di cui ci occuperemo tra pochi secondi…

Usa esptool.py per caricare il firmware:

  • Espressif consiglia di utilizzare il proprio software, ma è su Windows
  • Quindi https://github.com/espressif/esptool è una buona alternativa
  1. python esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash 0x00000./at/noboot/eagle.flash.bin
  2. python esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash 0x10000./at/noboot/eagle.irom0text.bin
  3. python esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash 0x7e000./bin/blank.bin
  4. python esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash 0xfc000./bin/esp_init_data_default.bin

Nota importante:

Non puoi fare queste cose se non sai che tipo di memoria hai nel tuo modulo.

ti do un consiglio:

python esptool.py --port /dev/ttyUSB0 --baud 115200 flash_id

Quindi controlla la combinazione su

il produttore c8 è GigaDevice e il dispositivo 4013 è GD25Q40, che è un dispositivo da 4 Mbit = 512 KB

il produttore ef è Winbond (ex Nexcom) e il dispositivo 4016 è W25Q32, che è un dispositivo da 32 Mbit=4 MByte

Passaggio 3: utilizzare ARDUINO IDE

Usa ARDUINO IDE
Usa ARDUINO IDE

Nelle impostazioni delle preferenze, aggiungi questo URL a "Ulteriori URL di Board Manager":

arduino.esp8266.com/stable/package_esp8266c…

Riavvia ARDUINO dopo. Quindi in "TOOL->BOARD" sarai in grado di selezionare il modulo ESP8266 generico.

In File->Esempi troverai esempi di sketch per aiutarti a iniziare a programmare con ARDUINO.

Appunti:

  • Quando scarichi il tuo programma non dimenticare di entrare in modalità programmazione (GPIO0=0V e RESET).
  • Una volta scaricato un programma arduino sull'ESP, il firmware AT non è più disponibile, quindi i comandi AT non lo sono.
  • Usa l'opzione: schizzo + impostazioni wifi

Passaggio 4: nodo MCU

MCU del nodo
MCU del nodo

Se acquisti questo tipo di modulo, è davvero conveniente:

  • ESP-12 all'interno
  • Hai un pulsante flash + reset per entrare facilmente in modalità di programmazione
  • spilli
  • Una porta USB integrata…

Ma se vuoi integrarlo in un progetto, potrebbe non essere il massimo. Vedremo l'ESP12 "puro" alla fine di questo istruibile.

Passaggio 5: DeepSleep o alimenta il modulo con la batteria

È bello avere il WiFi ma richiede energia. Se lasci ACCESO il modulo non sei sicuro di poterlo incorporare a lungo in un progetto di batterie.

Fortunatamente l'ESP può entrare in modalità di sospensione profonda. Quindi consuma pochi microamplificatori.

È possibile farlo con i comandi AT.

Ma lo mostrerò attraverso la programmazione di Arduino.

Innanzitutto, collega WakeUpPin=GPIO16 al RESET dell'ESP. Perché quando l'ESP entra in modalità di sospensione profonda, si riattiva ripristinandosi tramite il pin GPIO16.

Per entrare in modalità DeepSleep, usa il codice: ESP.deepSleep(, WAKE_RF_DEFAULT);

è in microsecondi. L'ESP dormirà durante gli Stati Uniti prima del ripristino.

Passaggio 6: Pure ESP12: collegalo al computer e preparati per i progetti incorporati

Pure ESP12: collegalo al tuo computer e preparati per i progetti incorporati
Pure ESP12: collegalo al tuo computer e preparati per i progetti incorporati
Pure ESP12: collegalo al tuo computer e preparati per i progetti incorporati
Pure ESP12: collegalo al tuo computer e preparati per i progetti incorporati

Non aver paura di acquistare il modulo ESP12 puro. È economico, leggero e piccolo.

Collegalo allo stesso modo del modulo ESP-01, con un adattatore Serial-USB.

Non dimenticare che CH_PD dovrebbe essere in Vcc.

Quindi puoi realizzare progetti embedded, a batterie, con WiFi e un potente microcontrollore!!

Consigliato: