Nota

Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.

Perché unirti?

  • 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 consigli e tutorial per migliorare le tue competenze.

  • Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e alle anteprime.

  • Sconti speciali: Godi di sconti esclusivi sui nostri prodotti più recenti.

  • Promozioni festive e omaggi: Partecipa a omaggi e promozioni durante le festività.

👉 Sei pronto a esplorare e creare con noi? Clicca [Qui] e unisciti oggi stesso!

Variabile

La variabile è uno degli strumenti più potenti e cruciali in un programma. Ci aiuta a memorizzare e richiamare dati nei nostri programmi.

Il seguente sketch utilizza delle variabili. Memorizza il numero di pin del LED integrato nella variabile ledPin e il numero «500» nella variabile delayTime.

int ledPin = 13;
int delayTime = 500;

void setup() {
    pinMode(ledPin,OUTPUT);
}

void loop() {
    digitalWrite(ledPin,HIGH);
    delay(delayTime);
    digitalWrite(ledPin,LOW);
    delay(delayTime);
}

Aspetta, è un duplicato di quello che fa #define? La risposta è NO.

  • Il ruolo di #define è semplicemente sostituire direttamente il testo, non è considerato dal compilatore come parte del programma.

  • Una variabile, invece, esiste all’interno del programma e viene utilizzata per memorizzare e richiamare valori. Una variabile può anche modificare il suo valore all’interno del programma, cosa che un define non può fare.

Il file sketch qui sotto auto-incrementa la variabile, e farà sì che il LED integrato lampeggi più a lungo dopo ogni lampeggio.

int ledPin = 13;
int delayTime = 500;

void setup() {
    pinMode(ledPin,OUTPUT);
}

void loop() {
    digitalWrite(ledPin,HIGH);
    delay(delayTime);
    digitalWrite(ledPin,LOW);
    delay(delayTime);
    delayTime = delayTime+200; //Ogni esecuzione incrementa il valore di 200
}

Dichiarare una variabile

Dichiarare una variabile significa creare una variabile.

Per dichiarare una variabile, hai bisogno di due cose: il tipo di dato e il nome della variabile. Il tipo di dato deve essere separato dal nome della variabile da uno spazio, e la dichiarazione della variabile deve essere terminata da un ;.

Usiamo questa variabile come esempio.

int delayTime;

Tipo di Dato

Qui int è un tipo di dato chiamato tipo intero, che può essere utilizzato per memorizzare numeri interi da -32768 a 32766. Non può essere utilizzato per memorizzare numeri decimali.

Le variabili possono contenere tipi di dati diversi dagli interi. Il linguaggio Arduino (che, ricordiamo, è C++) ha il supporto integrato per alcuni di essi (qui sono elencati solo i più usati e utili):

  • float: Memorizza un numero decimale, ad esempio 3.1415926.

  • byte: Può contenere numeri da 0 a 255.

  • boolean: Contiene solo due valori possibili, True o False, anche se occupa un byte in memoria.

  • char: Contiene un numero da -127 a 127. Poiché è contrassegnato come char, il compilatore cercherà di associarlo a un carattere dall”ASCII table of characters.

  • string: Può memorizzare una stringa di caratteri, ad esempio Halloween.

Nome della Variabile

Puoi impostare il nome della variabile come desideri, ad esempio i, apple, Bruce, R2D2, Sectumsempra, ma ci sono alcune regole di base da seguire.

  1. Descrivi a cosa serve. Qui, ho chiamato la variabile delayTime, così puoi capire facilmente cosa fa. Funzionerebbe bene se chiamassi la variabile barryAllen, ma confonderebbe chi guarda il codice.

  2. Usa una nomenclatura regolare. Puoi usare il CamelCase come ho fatto io, con la T maiuscola in delayTime per rendere chiaro che la variabile è composta da due parole. Inoltre, puoi usare l’UnderScoreCase per scrivere la variabile come delay_time. Non influisce sul funzionamento del programma, ma aiuterebbe il programmatore a leggere il codice se usi la nomenclatura che preferisci.

  3. Non usare parole chiave. Simile a ciò che accade quando scriviamo «int», l’Arduino IDE lo colorerà per ricordarti che è una parola con uno scopo speciale e non può essere usata come nome di variabile. Cambia il nome della variabile se viene colorato.

  4. I simboli speciali non sono ammessi. Ad esempio, spazio, #, $, /, +, %, ecc. La combinazione di lettere inglesi (case sensitive), underscore e numeri (ma i numeri non possono essere usati come primo carattere di un nome di variabile) è abbastanza ricca.

Assegnare un valore a una variabile

Una volta dichiarata la variabile, è il momento di memorizzare i dati. Usiamo l’operatore di assegnazione (cioè =) per inserire un valore nella variabile.

Possiamo assegnare valori alla variabile non appena la dichiariamo.

int delayTime = 500;

È anche possibile assegnare un nuovo valore in un secondo momento.

int delayTime; // no value
delayTime = 500; // value is 500
delayTime = delayTime +200; // value is 700