Arduino è il nome di una piattaformahardware per lo sviluppo di applicazioni basate sui microcontrollori ATMEL.
Ideata in Italia nel 2005, è basata su una semplicissima scheda di I/O e su un ambiente di sviluppo che usa una libreria Wiring per semplifi care la scrittura di programmi in C e C++ da far girare sulla scheda.
Il progetto Arduino ha preso avvio in Italia ad Ivrea, nel 2005, con lo scopo di rendere disponibile a progettisti, studenti e semplici hobbisti, un dispositivo di sviluppo facile ed allo stesso tempo più economico rispetto a simili sistemi di prototipazione.
A ottobre 2008 erano già stati venduti più di 50.000 esemplari di Arduino in tutto il mondo.
Le schede uffi ciali usano i chip della serie megaAVR (nello specifi co, i modelli ATmega8, ATmega168, ATmega328, e ATmega1280) ma i loro cloni sono disponibili anche con altri microcontrollori.
La scheda Arduino è pre-programmata con un bootloader che semplifi ca il caricamento dei programmi nella memoria Flash incorporata nel chip, rispetto ad altri dispositivi che richiedono, solitamente, un programmatore esterno.
L’ambiente di programmazione integrato (IDE) di Arduino è un’applicazione multipiattaforma scritta in Java, ed è derivata dall’IDE creato per il linguaggio di programmazione Processing e adattato al progetto Wiring. È concepito per introdurre alla programmazione hobbisiti e neofiti, a digiuno di pratica nello sviluppo di software.
Per poterla programmare da remoto senza alcun specifico programmatore, il microcontrollore viene fornito preprogrammato con uno specifico bootloader che instraderà in modo corretto il firmware nell’apposita area di memoria EEPROM durante la fase di programmazione.
Collegare l’arduino al nostro pc è estremamente semplice, bisogna collegare tramite cavetto USB l’arduino al PC
Una volta collegata la nostra arduino alla porta usb avvengono due cose:
1. viene data alimentazione alla nostra scheda che eseguirà da subito l’ultimo codice da noi caricato.
Solitamente, la scheda arduino viene venduta con lo sketch “blink” già caricato su di essa, infatti un led smd post al di sotto del pin 13 inizierà a lampeggiare.
2. arduino verrà riconosciuta dal nostro pc come periferica esterna: se si ha una duemilanove bisogna installare i driver del chipset (non open) FTDI, se è una UNO verrà riconosciuta automaticamente.
I programmi, nel mondo arduino, vengono chiamati “sketch”.
Gli sketch vengono scritti, compilati e caricati sulla nostra scheda tramite l’IDE ufficiale.
Una volta scaricata l’IDE dal sito ufficiale arduino.cc accertiamoci di aver selezionato la giusta porta COM della nostra arduino:
E come target-board, la giusta scheda:
Sulla nostra ide 1.0.1 avremo i seguenti pulsanti:
Verifica, Carica, Nuovo, Apri, Salva e Monitor Seriale.
Possiamo tradurre i tasti in questo modo:
Verifica: compila ma non carica il binario nel chip
Carica: compila e carica il binario
Nuovo: apre un nuovo file
Apri: un file salvato
Salva: un file da noi scritto
Monitor Seriale: apre un monitor in ascolto sulla seriale di arduino, sarà la nostra finestra di colloquio con arduino. Riceveremo e mandermo caratteri.
Avremo a disposizione decine di sketch già preconfezionati da poter testare da subito sulla nostra scheda:
Il primo sketch che andremo a compilare e caricare sulla nostra scheda è un pò come il nostro primo “hello world” scritto in C qualche anno fa.
In particolare apriremo l’esempio “blink”:
/*
Blink
Accende il LED per un secondo, lo spegne per un altro secondo, ripetutamente
*/
//Il pin 13 ha un LED smd già saldato sulla maggior parte delle schede Arduino
//diamogli un nome:
int led = 13;
//la routine setup gira una sola volta dopo aver dato alimentazione o premuto il tasto reset
void setup() {
// inizializza il pin digitale 13 come output
pinMode(led, OUTPUT);
}
// la routine loop esegue le istruzioni all'infinito
void loop() {
digitalWrite(led, HIGH); // accende il led (HIGH il massimo voltaggio 5v)
delay(1000); // wait per un secondo
digitalWrite(led, LOW); // spegne il led (LOW è la più bassa tensione)
delay(1000); // aspetta per un secondo
}
Premiamo sul pulsante “Carica” e….
Eventualmente, si può innestare un led esterno (correttamente orientato) tra il pin GND e 13 come in molti esempi:
Non è propriamente corretto inserirlo direttamente in quanto il led verrebbe sovralimentato, andrebbe collegato con una resistenza da 1KOhm in serie, in questo modo:
Il nostro primo “hello world” è terminato!
fonti:
adafruit.com
elettronicaIN