Piattaforma Arduino Arduino uno Arduino Mega Pin della scheda Arduino Mega Microcontrollore Atmega 328P Microcontrollore Atmega 328P Standalone Scheda riassuntiva caratteristica delle varie schede in commercio Ambiente di sviluppo Scaricabile dal sito www.Arduino.cc Contenuto della cartella arduino -1.0.3 Per lanciare l’ambiente di sviluppo Contenuto cartella drivers Contenuto della cartella libraries Significato delle librerie Contenuto cartella Examples Ambiente di sviluppo Cliccando sull’icona nella cartella arduino, si apre l’ambiente di sviluppo (IDE= Integrated Development Environment) che appare come a lato Cliccando sul File/Esempi/Basics è possibile cariare uno sketch . Come esempio carichiamo lo sketch : Blink I programmi arduino (sketch), sono file.ino. Il linguaggio di programmazione è una versione semplificata del C/C++ arricchito con comandi appositamente creati per arduino. Può essere scritto anche con blocco note. Arduino funziona su tutti i sistemi operativi : Linux, Mac, Windows. Prima di caricare lo sketch nel microcontrollore -Verifica del programma e compilazione. Monitor serial -Upload……………………………………………. Debug -Debug. -In strumenti caricare il tipo di arduino. -In Strumenti selezionare la COM adeguata Vedere sotto Scelta tipo di arduino Scegliere la COM con la quale arduino comunica con il PC Esempio di programma ed istruzioni che accende e spegne il led sul pin 3 In rosso le parole chiave. In questo programma il led sul pin 3 si accende e si spegne ogni due secondi • • • • • • • • • • Int led=3; …………….; …………….; Void setup() { pinMode (led, OUTPUT); digitalWrite (led, LOW); …………………..; …………………..; } • • • • • • • Void loop() { digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); delay(1000); } // wait for a second Output sul Monitor serial accende e spegne il led sul pin 3 con controllo sul monitor serial • • • • • • • • • • • Int led=3; …………….; …………….; Void setup() { Serial.begin(9600); pinMode (led, OUTPUT); digitalWrite (led, LOW); …………………..; …………………..; } • • • • • • • • • Void loop() { digitalWrite(led, HIGH); Serial.println(“led acceso"); delay(1000); // wait for a second digitalWrite(led, LOW); Serial.println(“led spento"); delay(1000); } Monitor serial I PIN di Arduino UNO Dati tecnici della scheda La struttura base dello sketch • • • • • Int buttonPin3 = 3; Int buttonPin4 = 4; void setup() { Serial.begin(9600); pinMode(buttonPin3, INPUT); • • pinMode(buttonPin4, INPUT_PULLUP); • ………………. • • • • • } void loop() { …………… } // definisce il pin 3 pulsante // definisce il pin 4 pulsante // configurazione della porta seriale a 9600 baud // l’ingresso 3 è messo ad alta impedenza e vale 5V //(valore logico “1”) // è previsto l’inserimento di una R di //PULL-UP ( di valore più adeguato) // l’ingresso 4 è collegato internamente a //Vcc=5V da un R=20 Kohm //programma da svolgere le variabili (il C è case sensitive) • • • • • Int x1; float rosso3; boolean stato = 0; char lettera = “A”; byte dato5; //x1 è una variabile intera //rosso3 è una variabile con decimali //stato è uno stato logico 0 //lettera è un singolo carattere “A” //dato5 è un singolo byte ancora le variabili • • • • boolean Primo; Int arrivo; Int record = 130; ……… • Primo = record > arrivo; //se arrivo è minore di record, Primo vale 1 Struttura di controllo if - else • • • • • • • • If ( pinFiveInput < 500) { // azione A; } else { // azione B; } Struttura di controllo if (senza else) • • • • If (unaVariabile > 50) { //fai qualcosa; } Struttura di controllo for • for (x=0; x<255; x++) • { • analogWrite(PWMpin, x); • • delay(50); • } //sul pin PWMpin è generata un //onda quadra con //Duty Cycle da 0 % al 100% Struttura di controllo while • Int sens=0; • ……………………… • • • • while (sens<200) { //fai qualcosa sens=analogRead(fotoresistenza); //fotoresistenza è un PIN analogico