ESP32 (3) – Eclipse

luca 15/12/2016 1

Nel precedente articolo, vi ho mostrato come installare il framework di sviluppo ufficiale (Espressif IoT Development Framework) e come utilizzarlo per compilare il primo esempio, Hello world.

Sebbene sia possibile sviluppare i propri programmi con un semplice editor di testo (su Windows consiglio sempre il programma opensource Notepad++), è sicuramente più semplice dotarsi di un IDE (Integrated Development Environment), ovvero un applicativo grafico che consente la scrittura del codice (spesso con funzioni di autocompletamento e evidenziazione di parole chiave ed errori), la sua compilazione e anche l’upload sulla scheda di sviluppo. Tra gli IDE disponibili, uno dei più famosi e utilizzati è senza dubbio Eclipse.

Installazione

L’installazione di Eclipse è molto semplice: colleghiamoci al sito ufficiale e scarichiamo la versione Eclipse IDE for C/C++ Developers per il nostro sistema operativo (come per l’articolo precedente, ho scelto di lavorare su Windows):

eclipse-01

Eclipse viene distribuito come archivio ZIP. Una volta terminato il download, estraiamo l’archivio in una cartella del nostro disco fisso. Per semplicità ho scelto di utilizzare la stessa cartella (home dell’utente) dove ho installato anche esp-idf:

eclipse-02

Lanciamo Eclipse con un doppio click su eclipse.exe. Al primo avvio ci verrà chiesto di specificare il percorso del nostro workspace (= la cartella dove sarano salvati i progetti). Ho scelto di creare il workspace all’interno della cartella principale dell’IDE:

eclipse-03

Configurazione progetto

Per poter sviluppare un progetto basato su esp-idf con Eclipse, è necessario effettuare alcune configurazioni. Per prima cosa dobbiamo importare il progetto all’interno dell’IDE. Per questo tutorial utilizziamo l’esempio 01_hello_world, in un prossimo tutorial vi mostrerò come preparare un progetto vuoto.

Selezioniamo File – Import, quindi utilizziamo il wizard Existing Code as Makefile project:

eclipse-04

Diamo un nome al progetto, selezioniamo la cartella di origine e accertiamoci che la toolchain da utilizzare sia Cross GCC:

eclipse-05

Una volta terminata l’importazione, apriamo le Proprietà del progetto:

eclipse-06

Per prima cosa spostiamoci in C/C++ Build – Environment. Aggiungiamo (pulsante Add…) due variabili:

  • nome V, valore 1
  • nome IDF_PATH, valore il percorso dove è installato esp-idf (NB: devo usare / invece che \)

Su Windows, inoltre, cambiamo la variabile PATH con il seguente valore (se msys32 è installato nel percorso standard):

C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-esp32-elf\bin

eclipse-07

Sempre se siamo sotto Windows, spostiamoci su C/C++ Build, togliamo il flag a Use default… e inseriamo il seguente build command:

bash ${IDF_PATH}/tools/windows/eclipse_make.sh

eclipse-08

Spostiamoci infine su C/C++ General – Preprocessor Include Paths e apriamo il tab Providers.

Selezioniamo CDT Cross GCC Built-in Compiler Settings e inseriamo al posto di ${COMMAND} il comando xtensa-esp32-elf-gcc:

eclipse-09

Selezioniamo infine CDT GCC Build Output Parser e aggiungiamo xtensa-esp32-elf- a inizio comando:

eclipse-10

Siamo ora pronti per compilare il progetto:

eclipse-11

Dopo la compilazione è possibile che Eclipse evidenzi diversi warnings di tipo “unresolved inclusion”:

eclipse-12

Il problema si verifica solo sotto Windows ed è un bug noto che non pregiudica la compilazione. Può essere risolto aggiungendo manualmente le diverse cartelle include presenti in esp-idf/components nelle proprietà del progetto (C/C++ General – Paths and Symbols – GNU C):

eclipse-13

Flash

Possiamo configurare Eclipse anche per eseguire automaticamente il comando make flash per caricare il programma sviluppato sulla scheda.

Selezioniamo, dal pannello laterale destro, il tab Build Targets:

eclipse-14

Clicchiamo con il tasto destro sulla cartella del progetto, quindi selezioniamo New.

Inseriamo flash come target name, quindi confermiamo con Ok:

eclipse-15

Se ora facciamo click con il tasto destro sul nuovo comando creato, possiamo lanciare il processo di flash selezionando Build Target:

eclipse-16

Il tab Console nella parte bassa dell’IDE ci consente di vedere l’esito del processo di flash:

eclipse-17

One Comment »

  1. Junhyuk Lee 12/08/2017 at 01:09 - Reply

    Hi, Luca!
    Thanks for good tutorials!
    I have learned many things about ESP32 from them.

    How do you debug ESP32 in Eclipse IDE or CLI?

Leave A Response »

Questo sito usa i cookie per poterti offrire una migliore esperienza di navigazione maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi