Tecnologia che semplifica la Scuola
Arduino
Elementi base del linguaggio di programmazione di Arduino
vedremo in quanti modi è possibile alimentare Arduino senza bruciarlo:
Ambiente di programmazione: Arduino.exe
Il programma che viene usato per scrivere i programmi per Arduino si chiama arduino.exe ed è scaricabile dal sito http://arduino.cc/en/Main/Software.
Sito ufficiale della piattaforma Arduino.
Per aprire il programma basta fare doppio click sull'icona oppure selezionare apri dal menù a tendina che si visualizza premendo il tasto destro sull'icona del programma.
Il programma si presenta con un'interfaccia grafica senza nome chiamata sketch che significa progetto come evidenziato dalla Figura1 che segue:
Struttura di un programma
La struttura base del linguaggio di programmazione di Arduino si sviluppa sulla definizione di due funzioni: void setup() e void loop(). Queste due funzioni racchiuderanno le necessarie impostazioni per il funzionamento dei dispositivi collegati con Arduino e i blocchi di istruzioni per svolgere quanto richiesto.
void setup( )
La funzione setup( ) è la prima ad essere chiamata quando parte uno sketch.
Viene utilizzata per inizializzare variabili, per impostare lo stato dei pin, per far partire le librerie da usare, per l'impostazione delle comunicazioni seriali.
La funzione di setup() sarà la prima ad essere eseguita dopo ogni accensione o reset di Arduino.
Sintassi
void setup( ){
// istruzioni varie;
}
Esempio
int pulsante=3;
void setup( ){
Serial.begin(9600);
pinMode(pulsante,OUTPUT);
}
in questo esempio si impostata la velocità di comunicazione seriale con il computer a 9600 bit per secondo (baud) che serve per poter visualizzare sul PC tramite il Serial Monitor (funzionante solo quando Arduino è collegato al computer) l'esito di operazioni volute e il pin 3 impostato come OUTPUT.
void loop( )
Dopo la creazione della funzione setup(), che inizializza e imposta i valori iniziali, la funzione loop() fa proprio quanto suggerisce il proprio nome eseguendo ciclicamente il programma definito al suo interno.
Permette l'esecuzione del programma, interagisce con la scheda Arduino.
Sintassi
void loop( ){
// istruzioni da ripetere in modo ricorsivo;
}
Esempio
void loop( ){
digitalWrite(3, HIGH); // metti il pin 3 allo stato alto
delay(1000); // mantieni questo stato per 1 secondo
digitalWrite(3, LOW); // metti il pin 3 allo stato basso
delay(1000); // mantieni questo stato per un secondo
}
Esempio
void setup()
{
pinMode(LED_BUILTIN, OUTPUT);
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
}
void loop()
{
PORTD ++;
if (PORTD >= 200) { PORTD = 100; }
delay(1);
}