Nota
Ciao, benvenuto nella comunità di appassionati di SunFounder per Raspberry Pi, Arduino e ESP32 su Facebook! Approfondisci Raspberry Pi, Arduino e ESP32 con altri entusiasti.
Perché unirsi?
Supporto Esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e Condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime Esclusive: Accedi in anteprima agli annunci di nuovi prodotti e anteprime esclusive.
Sconti Speciali: Goditi sconti esclusivi sui nostri prodotti più recenti.
Promozioni e Omaggi Festivi: Partecipa a promozioni e omaggi festivi.
👉 Pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi!
Struttura di un Programma Arduino
Diamo un’occhiata al nuovo file sketch. Anche se contiene poche righe di codice, è in realtà uno sketch «vuoto». Caricare questo sketch sulla scheda di sviluppo non produrrà alcun effetto.
void setup() {
// inserisci qui il tuo codice di setup, da eseguire una sola volta:
}
void loop() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
}
Se rimuoviamo setup()
e loop()
e rendiamo lo sketch un vero file blank
, scoprirai che non passerà la verifica.
Sono l’equivalente dello scheletro umano, e sono indispensabili.
Durante l’esecuzione di uno sketch, setup()
viene eseguito per primo e il codice al suo interno (all’interno delle {}
) viene eseguito dopo che la scheda è stata alimentata o ripristinata e solo una volta.
loop()
viene utilizzato per scrivere la funzione principale, e il codice al suo interno verrà eseguito in un ciclo continuo dopo l’esecuzione di setup()
.
Per comprendere meglio setup()
e loop()
, utilizziamo quattro sketch. Il loro scopo è far lampeggiare il LED integrato dell’Arduino. Esegui ogni esperimento a turno e annota i loro effetti specifici.
Sketch 1: Far lampeggiare continuamente il LED integrato.
void setup() {
// inserisci qui il tuo codice di setup, da eseguire una sola volta:
pinMode(13,OUTPUT);
}
void loop() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
}
Sketch 2: Far lampeggiare il LED integrato una sola volta.
void setup() {
// inserisci qui il tuo codice di setup, da eseguire una sola volta:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
}
void loop() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
}
Sketch 3: Far lampeggiare il LED integrato lentamente una volta e poi velocemente.
void setup() {
// inserisci qui il tuo codice di setup, da eseguire una sola volta:
pinMode(13,OUTPUT);
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}
void loop() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
digitalWrite(13,HIGH);
delay(200);
digitalWrite(13,LOW);
delay(200);
}
Sketch 4: Segnalare un errore.
void setup() {
// inserisci qui il tuo codice di setup, da eseguire una sola volta:
pinMode(13,OUTPUT);
}
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
void loop() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
}
Con l’aiuto di questi sketch, possiamo riassumere diverse caratteristiche di setup-loop
.
loop()
verrà eseguito ripetutamente dopo che la scheda è stata alimentata.setup()
verrà eseguito una sola volta dopo che la scheda è stata alimentata.Dopo che la scheda è stata alimentata,
setup()
verrà eseguito per primo, seguito daloop()
.Il codice deve essere scritto all’interno delle
{}
disetup()
oloop()
, al di fuori del framework si verificherà un errore.
Nota
I comandi come digitalWrite(13,HIGH)
vengono utilizzati per controllare il LED integrato, e parleremo del loro utilizzo in dettaglio nei capitoli successivi.