Come sviluppare per stm32f4 con gcc arm su eclipse

Recentemente ci siamo imbattuti nel mondo St e ARM, acquistando una scheda di sviluppo ST NUCLEO f411RE, che monta un ARM CORTEX M4. Il primo problema che abbiamo riscontrato, è stato il compilatore, per questo motivo oggi vi spieghiamo come sviluppare per stm32f4 con gcc arm su eclipse.Toolchain GNU ARM

In effetti ci sono numerose offerte commerciali che si candidano bene come soluzione, ma ad un costo non indifferente. Cercando in rete però siamo riusciti ad installare e configurare un compilatore basato su GCC ARM per Eclipse.

Per chi è iscritto alla nostra newsletter ha avuto modo di sapere che stiamo sviluppando un nuovo progetto in ambito droni e agricoltura. In occasione di questa nostra iniziativa abbiamo deciso di affidare tutto il controllo del velivolo ad un micro-controllore della famiglia ARM, in particolare ad un Cortex M4.

Vediamo nel dettaglio di cosa abbiamo bisogno. Come prima cosa e come già accennato in precedenza abbiamo bisogno di Eclipse.

Eclipse è un un ambiente di sviluppo integrato (in inglese IDE)  Open Source, molto conosciuto per chi sviluppa in Java o Android. Le potenzialità di questo software sta nei suoi innumerevoli plugin da installare e di conseguenza alle varie features che offre per qualunque evenienza. Tra le tante applicazioni di Eclipse c’è anche la possibilità di installare una toolchain per ARM.

Dopo aver installato Eclipse, ci serve mettere su tutto il necessario per poter generare un compilato che giri su processori ARM. A questa evenienza ci viene in aiuto un plugin: GNU ARM Plugin per Eclipse.

Per semplificare tutta la procedura di setup però noi di Automazione Open Source abbiamo deciso di rendere disponibile la toolchain integrale in un file zip. In questa toolchain sarà incluso tutto quello che ci serve per utilizzare tutto l’ambiente di sviluppo, incluso il debug.

Per toolchain si intende tutta quella catena di software e ambienti di sviluppo per poter sviluppare, compilare e debuggare un dato software destinato a differenti prodotti.

Per poter scaricare la toolchain completa, vi chiediamo gentilmente di lasciarci il vostro contatto email ed il vostro nome, per potervi avvisare di futuri articoli sul mondo st e sui suoi sviluppi, inoltre rimarrete aggiornati su eventuali aggiornamenti che apportiamo nella toolchain, inclusi gli aggiornamenti di eclipse.

Download GNU ARM Toolchain

Una volta scaricato il file zip e scompattato, si avrà subito accesso alla toolchain, non ci resta altro che configurare alcuni pannelli per adattarlo alla macchina che state utilizzando attualmente.
Niente paura vi spieghiamo come fare.

  1. Innanzitutto scaricate la toolchain utilizzando questo form:
  2. A questo punto estraete l’archivio zip dove preferite. Avrete una cartella toolchain dove ci sarà tutto l’ occorrente.
  3. Avviamo Eclipse nella cartella toolchain\eclipse\eclipse.exe
  4. Si aprirà la classica finestra del launcher di Eclipse, inseriamo la cartella del workspace: toolchain\ARMtoolchain\projects, e clicchiamo su ok.
  5. A questo punto possiamo importare un progetto oppure crearne un nuovo.

Configurazione dei path per il compilatore

Prima della configurazione dei path è necessario avere un progetto nel workspace di Eclipse.
Se non abbiamo un progetto nel workspace, allora ci conviene crearlo, da File->New Project-> C project.
A questo punto avremo la seguente schermata, che andremo a settare come in figura, e poi clicchiamo su Next:

primacattura

Creazione Nuovo progetto

A questo punto procediamo con le configurazioni come in figura, cliccando sempre next per andare nella schermata successiva.

Nuovo progetto maschera

Creazione Nuovo progetto: seconda schermata

Creazione nuovo progetto eclipse

Creazione Nuovo progetto: impostazione cartelle

Creazione nuovo progetto Eclipse

Creazione nuovo progetto: selezione piattaforma

In questa schermata dobbiamo settare il nuovo path, dove è collocato il compilatore GNU ARM, aggiungendo al path dove abbiamo inserito la cartella toolchain il restante percorso contrassegnato in figura.

Creazione nuovo progetto

Creazione nuovo progetto: path della toolchain

Al termine clicchiamo su Finish

Fatto questo possiamo procedere a completare l’impostazione dei path.

Se abbiamo sbagliato nella fase di creazione del progetto a scrivere il path, è ancora possibile modificarlo, cliccando con il tasto destro sul progetto nel workspace e in seguito cliccando su proprietà.

Posizionarsi nella scheda indicata in figura,  ed in Build tools folder inserite il vostro percorso di posizionamento della toolchain, lasciando invariato dalla folder toolchain in poi. Praticamente bisogna cambiare la prima parte del path segnalato in rosso, e tutto il resto resta uguale.

Cambiare configurazione Toolchain Path

Cambiare configurazione Toolchain Path

Copiate il path, segnalato in rosso, e collochiamoci nella seguente scheda:

Cambiare path di ambiente

Cambiare path di ambiente

 

Clicchiamo due volte in path e aggiungiamo al termine della stringa  ${Path}:  incolliamo il path che abbiamo copiato in precedenza.

Finestra inserimento path

Finestra inserimento path

A questo punto il gioco è fatto!

Non ci resta che provare ad avviare il compilatore.

Per qualunque tipo di problema lasciate pure un commento o utilizzate i social network.

Vincenzo Cicogna on FacebookVincenzo Cicogna on GithubVincenzo Cicogna on LinkedinVincenzo Cicogna on TwitterVincenzo Cicogna on Youtube
Vincenzo Cicogna

Editore e autore di questo blog di notte, sviluppatore software per sistemi embedded di giorno, passa il suo tempo a dilettarsi ed approfondire le dinamiche del mondo.

Appassionato di droni e tuttala, si diletta di tanto in tanto a scattare qualche foto in giro per il mondo o a leggere qualche libro.

Ama viaggiare, fotografare e condividere le sue produzioni.


Tags: ,
By Vincenzo Cicogna | gennaio 11th, 2016 | SHOW COMMENTS (6)

6 Responses

  1. Andrea says

    provo a disinstallare tutto e ripetere le procedure da zero. se il problema dovesse persistere facciamo la web session! grazie

  2. Andrea says

    Ciao, sto seguendo il vostro tutorial e non riesco a capire se e dove sbaglio.
    Una volta inserito il Toolchain path, quando clicco su finish mi da un errore:
    ” Unknow process:
    ilg.gnuarmeclipse.template.core.ConditionalSetMBSBooleanOptionValue ”
    che cosa significa?
    grazie mille,
    Andrea.

    • Automazione Open Source
      Automazione Open Source says

      ciao Andrea, prova a lasciare vuoti i campi nella scheda Tools Paths, cambia qualcosa?

      • Andrea says

        Ottimmo, mi fa procedere nella creazione del progetto, ora però quando compilo mi dice ‘Program “make” not found in PATH’.
        Grazie.

        • Andrea says

          ..retifico! L’errore di prima non è sparito 🙁

          • Automazione Open Source
            Automazione Open Source says

            Ah strano come errore! Prima cosa da accertarsi: il workspace deve essere pulito da eventuali altre installazioni di Eclipse, ma il problema non sussiste se hai seguito da zero la guida.
            Secondo punto possiamo organizzare una web-session per poter analizzare dove si blocca.
            Se sei d’accordo per web-session, mi devi autorizzare ad usare la tua email per mandarti l’invito.