Novembre 2014, una data che ha segnato una spaccatura significativa in casa Arduino e nella sua community. Per vari motivi, soprattutto legali, l'azienda subisce un divorzio tra i soci portando all'inevitabile nascita di una seconda impresa, gestita da Gianluca Martino, denominata Arduino srl. Quest'ultima, per non restare tale, ha lavorato duramente per rassicurare i propri sostenitori sfornando, in breve tempo, nuovi prodotti. Novità come l'Arduino M0 Pro, la prima board con controller per il debug a bordo; la YUN MINI sviluppata con ATmega 32u4 e processore Atheros AR9331. Anche nell'ambito software ha dato ottimi risultati rilasciando, in anticipo sui tempi, una nuova versione dell'IDE con il pieno supporto ai microcontrollori a 32bit. Come se non bastasse da pochi giorni ha annunciato la realizzazione di un nuovo tool, un ambiente di sviluppo completamente ridisegnato sulla base della multimedialità, dando la possibilità ai propri utenti di creare progetti in multi linguaggio; questo grazie all'utilizzo di Arduino Studio.
Arduino Studio è un nuovo ambiente di sviluppo open source per il linguaggio di programmazione di Arduino. Invece di una architettura monolitica e un modello di sviluppo centralizzato, Arduino Studio sfrutta Adobe Brackets; un editor scritto in JavaScript, HTML e CSS che si concentra sulla progettazione di applicazioni web. Brackets è dotato di caratteristiche uniche come modifica rapida, anteprima live su browser e altre particolarità introvabili in altri ambienti di sviluppo. Attualmente la versione rilascia di Arduino Studio è Alpha ma il Team sta lavorando duramente per consentire agli utenti di sfruttare questo tool come stand-alone, web/cloud-based ed editor tutto integrato. Un solo programma per tutti gli ambienti, distribuito sul sito Arduino.org, in versione per Linux, Mac OS X o Windows.
Installazione e panoramica
Scaricato la versione idonea al proprio sistema operativo, scompattare l'archivio nella root di "C:" o in una directory a vostra scelta; il tool non necessita l'installazione, si avvia dall'eseguibile "ArduinoStudio.exe".
La nuova interfaccia grafica si presenta pulita ed elegante con l'aggiunta dei pulsati, sulla colonna di sinistra, per i comandi dedicati alle funzioni di Arduino; sulla colonna di destra è presente l'albero di esplorazione percorso mentre in basso ci sono i comandi per la configurazione della board e la console per i dettagli.
I comandi sono identici al vecchio editor, con precisione:
In aggiunta, nella parte inferiore della finestra, troviamo il menù rapido per i comandi più utilizzati come (in ordina da sinistra) la scelta della board, la porta di comunicazione, la modalità del cursore, il linguaggio di programmazione e la scelta selettiva tra spazi/tabulazione.
Programmare l'Arduino UNO
Essendo una versione ancora alfa l'unica board programmabile è l'Arduino UNO. Collegata al PC attendere il riconoscimento del micro; se non sono presenti i driver è possibile installarli dal menù:
Aiuto\Installa driver\Arduino
Come esempio di prova utilizzeremo il famoso sketch "Blink", dal menù:
File\Apri esempi
Sulla destra della finestra si aprirà l'esploso della cartella esempi, dove sarà possibile caricare il file dal percorso:
01.Basic\Blink\Blink.ino
Non resta che settare i parametri della board e dell'editor dal menù rapido in fondo alla finestra. Selezionare il tipo di Arduino cliccando sul primo pulsante del menù;
la porta seriale di comunicazione cliccando sul secondo pulsante;
e il tipo di linguaggio in uso cliccando sul quarto pulsante. L'impostazione base l'editor è settato su C++ e come avrete notato, le istruzioni Wiring non sono colorate. Questo non pregiudica il funzionamento dello sketch ma risulta disabilitato l'auto-compilazione; per ottimizzare l'utilizzo del programma è consigliato selezionare "Arduino" come linguaggio.
Infine non resta che compilare lo sketch e programmare la board cliccando sul secondo pulsante del menù a sinistra della finestra o dal percorso
File\Carica
Durante la compilazione si può notare che i dettagli nella console sono più ordinati rispetto alla vecchia IDE, agevolando notevolmente la ricerca della cartella "temp" per prelevare i file "core.a" e ".elf" come visto in un articolo precedente. Se tutto è andato a buon fine dovreste vedere il led lampeggiare sulla scheda.
Un'ultima funzione da provare è il "monitor seriale". A parte la grafica, e un piccolo bug nella gestione del fine linea, l'unica differenza riscontrata è l'aggiunta di un pulsante per pulire il log. Per effettuare una prova basta inserire il comando "Serial" di start in "Setup()" e quello di "print" in "loop()", come di seguito:
void setup() { pinMode(13, OUTPUT); Serial.begin(9600); } void loop() { Serial.println("Led ON"); digitalWrite(13, HIGH); delay(20); Serial.println("Led OFF"); digitalWrite(13, LOW); delay(250); }
Riprogrammare la board e aprire il monitor seriale cliccando sul pulsante con l'icona della lente sulla sinistra della finestra. Il risultato sarà il seguente:
Altri linguaggi di programmazione
L'esempio che vedremo di seguito crea una piccola pagina statica in HTML che riprende parte del seguente articolo. Questo esempio [...]
ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 1581 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.
Update:
Da non molto è stata rilasciata la versione 0.0.4a che integra la funzione di debug per le board M0 Pro.
L’applicazione è basata sui tool GDB e OpenOCD, come descritto anche in un precedente articolo;
http://it.emcelettronica.com/arduino-m0-pro-debug-con-gdb-e-openocd
Guida rapida:
Per avviare la funzione cliccare il pulsante dedicato sulla sinistra della console.
All’apertura della nuova finestra caricare il file “.elf” appena creato dalla IDE in fase di compilazione dello sketch e, successivamente, la cartella dove è salvato il file “.ino”. Ora è possibile effettuare il debug utilizzando i comandi posti sopra la console e inserendo i “breakpoint” nello sketch col pulsante destro del mouse.