Istruzioni Base
Per scrivere uno sketch in scioltezza bisogna imparare tutte le istruzioni base a memoria e la loro sintassi.
IF/ELSE IF/ELSE
Qui sotto potete osservare un semplice sketch che utilizza l'istruzione IF (tradotta in italiano "se"), l'istruzione ELSE (altrimenti) e l'istruzione ELSE IF (altrimenti se).
C'e' un sensore generico collegato al pin analogico 2. Una variabile di nome Valore viene inizializzata a 0 di tipo intero. Nel void loop la variabile "Valore" e' uguale alla lettura analogica del pin "SENSORE". Se il valore acquisito e' maggiore di 20 fa qualcosa, se e' minore di 10 fa qualcos'altro, e se non e' ne maggiore di 20 e ne minore di 10 fa qualcos'altro ancora. In parole povere l'istruzione IF e ELSE IF sono composte dal comando stesso e dalla condizione contenuta tra le parentesi tonde. Nelle parentesi graffe vengono scritte le istruzioni da eseguire nel caso in cui la condizione e' soddisfatta. Mentre ELSE non ha condizioni tra parentesi ed esegue istruzioni nel caso le condizioni precedentemente specificate non vengono soddisfatte. |
WHILE/DO
Qui sotto invece c'e' uno sketch che utilizza l'istruzione WHILE(Finche')/DO(Fa) e viceversa.
Come prima, abbiamo sempre il nostro sensore generico collegato sul pin analogico 2 e la variabile "Valore" inizializzata di tipo intero a 0. Istruzione while: Fino a quando il valore e' maggiore di 20 fa qualcosa. In questo caso prima viene effettuato il controllo se il Valore e' maggiore di 20 e poi viene eseguita l'istruzione tra parentesi graffe. Piu' sotto invece c'e' l'istruzione do: che funziona come la while ma il controllo viene effettuato dopo quindi Fa qualcosa fino a quando il valore e' maggiore di 20. Ora andate a rileggere l'istruzione while e capite la differenza. Come per la IF e l'ELSE IF la WHILE ha la sua condizione da soddisfare tra parentesi tonde. |
FOR
Ecci una delle istruzioni che userete di piu', la FOR. Essa e' composta in questo modo:
for(int i=0,i<10;i++){} Analizziamo quindi i parametri tra le parentesi tonde. for e' l'istruzione e va scritta all'esterno. All'interno troviamo 3 volte la variabile "i" inizializzata localmente come variabile intera a 0. In mezzo troviamo la condizione da soddisfare i<10 ed infine troviamo la conseguenza i++ che incrementa la variabile di 1. Traducendola abbiamo che i vale zero, finche' e' minore di 10 viene incrementata di 1 per un totale di 9 cicli durante la quale in ognuno di essi vengono eseguite le istruzioni scritte tra le parentesi graffe. In poche parole e' come un contatore che fino a quando non giunge al suo termine esegue le istruzioni tra le parentesi graffe ad ogni ciclo. |
Switch
L'istruzione Switch puo' tornare utile in tutti quei casi in cui abbiamo piu' "soluzioni" possibili e per ognuna dobbiamo eseguire una determinata azione. Questa istruzione e' composta dal comando + la variabile tra parentesi tonde. In base al valore della variabile si sceglie la relativa soluzione con conseguente esecuzione delle istruzioni.
Come potete vedere nell'immagine ci sono 3 casi piu' quello di default. Ogni caso eccetto quello di default alla fine contiene l'istruzione break; che delinea la fine del codice da eseguire nel caso in cui quella soluzione viene scelta.
Come detto prima, la soluzione viene scelta in base al valore della variabile tra parentesi (in questo caso "i"). Per esempio se i e' uguale a 2 verra' scelta automaticamente la soluzione 2 e verra' quindi eseguito il codice in essa contenuto. Se la variabile i assume un valore che non ha soluzione viene eseguita automaticamente la soluzione di default (che anche essa ha un codice da eseguire volendo). Piu' semplicemente possiamo dire che l'istruzione switch compara le soluzioni disponibili al valore della variabile tra parentesi tonde e decide automaticamente quale soluzione eseguire quando il valore di una soluzione e' equivalente al valore della variabile tra parentesi. |