CONTENUTO ►
Come funziona il ciclo for in Arduino, come usarlo correttamente nel programma e quali sono gli errori da evitare. Facciamo conoscenza con l’uso del ciclo for() sull’esempio di una dissolvenza regolare del LED. A tale scopo, controlleremo il LED attraverso un’uscita analogica con modulazione PWM, in modo che si accenda e si spenga gradualmente. Con questo semplice esempio mostreremo come interrompere il loop o passare da un loop all’altro.
Per questa attività sono necessari:
- Arduino Uno / Arduino Nano / Arduino Mega
- LED e resistenza
- breadboard
- cavi di collegamento
Come si usa ciclo for() di Arduino IDE?
Il ciclo for() viene utilizzato per ripetere i comandi racchiusi tra parentesi graffe. Il compito è quello di inizializzare una variabile con un determinato valore iniziale e di farla cambiare di un passo fisso (incremento) ogni volta che viene eseguito il ciclo for(). Quando viene raggiunta una certa condizione, l’operatore esce. Consideriamo la sintassi fornita dal sito web arduino.cc
Sintassi della ciclo for() Arduino IDE
for (inizializzazione; condizione; incremento) { // blocco operatore; }
- inizializzazione – assegniamo un valore iniziale alla variabile che verrà sviluppata nel nostro ciclo. Si noti che è possibile dichiarare una variabile a questo punto (basta aggiungere il tipo di variabile prima di essa, ad esempio, int i = 0)
- condizione – il ciclo verrà eseguito finché questa condizione sarà vera. Se è vera, il blocco di istruzioni e l’incremento vengono eseguiti. Quando la condizione diventa falsa, il ciclo termina
- incremento – l’incremento è il valore con cui la variabile verrà modificata ogni volta che viene eseguito il ciclo per arduino
Nel programma seguente, il primo ciclo inizia con il valore iniziale della variabile i=0, la condizione indica che il ciclo for verrà eseguito finché la variabile sarà minore o uguale al valore dato i<=255. L’incremento indica che la variabile verrà incrementata di uno a ogni passo. Il ciclo for nell’IDE Arduino uscirà quando la variabile sarà superiore a 255.
Programma Arduino con ciclo for() e LED
#define RED_LED 9 void setup() { pinMode(RED_LED, OUTPUT); } void loop() { for (int i = 0; i <= 255; i++) { analogWrite(RED_LED, i); delay(10); } for (int i = 255; i >= 0; i--) { analogWrite(RED_LED, i); delay(10); } }
Spiegazione del codice per utilizzare ciclo for() Arduino
- su Arduino Uno e Nano, i seguenti pin forniscono il segnale PWM: 3, 5, 6, 9, 10 e 11.
Se si desidera uscire dall’intero ciclo for, indipendentemente dai parametri impostati nelle condizioni, utilizzare l’operatore break o goto. L’operatore break consente di uscire dal ciclo for() e il programma continuerà a eseguire i comandi successivi nello sketch. L’operatore goto consente non solo di uscire dal ciclo, ma anche di continuare l’esecuzione dei comandi da qualsiasi punto del programma, ad esempio passando a un altro ciclo while o for.
Conclusione. Ogni ciclo in linguaggio C++ e nel linguaggio di programmazione Arduino è un’azione che viene ripetuta più volte o all’infinito. Nessun programma per microcontrollori Arduino è privo di loop, ad esempio il void loop() viene chiamato in un loop infinito. Esistono tre tipi di ciclo: for, while Arduino e do … while. Oggi ci concentriamo sull’operatore for e vediamo come funziona in un semplice esempio con l’accensione di un LED liscio.
Lascia un commento