Introduzione
In questa lezione imparerete a programmare Arduino per far lampeggiare il LED incorporato in Arduino..
Arduino IDE (version 1.6.4+)
Avviso:
Non è necessario molto per questa lezione, assicuratevi di aver seguito prima le lezioni di preparazione e la lezione Hello World!
Assicuratevi di avere un cavo di sincronizzazione di buona qualità, non scegliete un cavo USB “solo carica”.
La scheda OSOYOO Basic è dotata di file di connettori su entrambi i lati che vengono utilizzati per il collegamento a dispositivi elettronici e a “shield” plug-in che consentono alla scheda OSOYOO Basic di fare di più. Tuttavia, la scheda OSOYOO Basic dispone anche di un singolo LED che potete controllare dai vostri sketch. Questo LED è incorporato nella scheda OSOYOO Basic e viene spesso chiamato LED “L”, perché è così che è etichettato sulla scheda.
La posizione di questo LED è cerchiata in rosso nelle immagini della scheda OSOYOO Basic e di Leonardo riportate di seguito.
Collegare la scheda OSOYOO Basic al computer utilizzando il cavo USB. Il LED verde di alimentazione (PWR) dovrebbe accendersi.
È possibile che il LED ‘L’ della scheda OSOYOO Basic lampeggi già quando la si collega a una presa USB. Questo perché le schede OSOYOO Basic vengono generalmente fornite con lo sketch ‘Blink’ preinstallato.
In questa lezione riprogrammeremo la scheda OSOYOO Basic con il nostro sketch Blink e modificheremo la velocità con cui lampeggia.In Hello World Lesson, avete configurato l’IDE Arduino e vi siete assicurati di trovare la porta seriale giusta per collegarlo alla vostra scheda OSOYOO Basic. È giunto il momento di mettere alla prova questa connessione e di programmare la scheda OSOYOO Basic..
L’IDE Arduino include una vasta collezione di sketch di esempio che è possibile caricare e utilizzare. Questo include uno sketch di esempio per far lampeggiare il LED “L”.
Caricate lo sketch ‘Blink’ che troverete nel sistema di menu dell’IDE alla voce File → Examples → 01.Basics→Blink.
È necessario selezionare la voce del menu Tools > Board che corrisponde al vostro Arduino, in questo caso abbiamo scelto “Arduino/Genuino Uno” .
Selezionare il dispositivo seriale della scheda OSOYOO Basic dal menu Strumenti | Porta seriale. Probabilmente si tratta di COM3 o superiore (COM1 e COM2 sono solitamente riservate alle porte seriali hardware). Per scoprirlo, potete scollegare la scheda OSOYOO Basic e riaprire il menu; la voce che scompare dovrebbe essere la scheda OSOYOO Basic. Ricollegate la scheda e selezionate la porta seriale: noi abbiamo scelto “COM**(Arduino/Genuino Uno)”.
Fare clic sul pulsante ‘Upload’ . Il secondo pulsante da sinistra nella barra degli strumenti.
Se si osserva l’area di stato dell’IDE, si vedrà una barra di avanzamento e una serie di messaggi. All’inizio apparirà la scritta ‘Compilazione dello schizzo…’. Questo converte lo schizzo in un formato adatto al caricamento sulla scheda.
Successivamente, lo stato cambierà in “‘Uploading”. A questo punto, i LED della scheda OSOYOO Basic dovrebbero iniziare a lampeggiare durante il trasferimento dello sketch.
Infine, lo stato cambierà in .
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. Most board for Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to the correct LED pin independent of which board is used. This example code is in the public domain. */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
La prima cosa da notare è che gran parte di questo schizzo è costituito dai cosiddetti “commenti”. I commenti non sono vere e proprie istruzioni per il programma, ma solo commenti su come funziona il programma. Sono presenti a beneficio dell’utente, in modo da accompagnare lo schizzo con qualche spiegazione.
Tutto ciò che è compreso tra /* e */ all’inizio dello schizzo è un commento di blocco, che spiega a cosa serve lo schizzo.
Ci sono anche commenti su una sola riga che iniziano con // e tutto ciò che arriva fino alla fine della riga viene considerato un commento.
La prima riga di codice effettiva è:
void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); }
Ogni schizzo deve avere una funzione di “impostazione” e la parte in cui si potrebbero aggiungere istruzioni proprie è quella compresa tra i caratteri { e }..
In questo caso, c’è solo un comando che, come si legge nel commento, indica alla scheda OSOYOO Basic che utilizzeremo il pin del LED come uscita.
È inoltre obbligatorio che uno schizzo abbia una funzione ‘loop’. A differenza della funzione ‘setup’ che viene eseguita solo una volta, dopo un reset, la funzione ‘loop’, dopo aver terminato l’esecuzione dei comandi, ricomincia immediatamente.
// the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
All’interno della funzione loop, i comandi innanzitutto accendono il pin del LED (HIGH), poi ‘ritardano’ per 1000 millisecondi (1 secondo), quindi spengono il pin del LED e fanno una pausa di un altro secondo.
Come avrete intuito, la chiave di volta sta nel cambiare il parametro in () per il comando ‘delay’.
Il periodo di ritardo è espresso in millisecondi, quindi se si vuole che il LED lampeggi due volte più velocemente, si deve cambiare il valore da 1000 a 500. In questo modo la pausa sarà di mezzo secondo a ogni ritardo, anziché di un secondo intero. Caricate di nuovo lo sketch e vedrete il LED iniziare a lampeggiare più rapidamente.
DownLoad Url osoyoo.com