Sei sulla pagina 1di 7

Conti Leonardo 3AEC

RDL 1/2 ISTRUZIONI CONDIZIONALI CON ARDUINO

Obbiettivi:
 Istruzione (if)
 Istruzione (digitalWrite)
 Istruzione (digitalRead)
 Istruzione (pinMode)
 Istruzione (delay)
 Ingresso digitale con resistore di PIN-UP

Richiami Teorici 1° (istruzioni)


I / O digitale
digitalWrite pinMode digitalRead

Descrizione Descrizione Descrizione


Legge il valore da un pin digitale
Scrivi un HIGHo un LOWvalore su un pin digitale. Configura il pin specificato in specificato, HIGHo LOW.

modo che si comporti come


Se il pin è stato configurato
input o output. Vedere Sintassi
come OUTPUTcon pinMode(), la sua tensione sarà
la pagina Pin digitali  per i
impostata sul valore corrispondente: 5V (o 3,3V digitalRead(pin)
dettagli sulla funzionalità dei
su schede da 3,3V) per HIGH, 0V (massa) per LOW.
pin.
Parametri
Se il pin è configurato come
A partire da Arduino 1.0.1, è
un INPUT, digitalWrite()abiliterà ( HIGH) o pin: il numero del pin di
possibile abilitare le resistenze
disabiliterà ( LOW) il pullup interno sul pin di Arduino che vuoi leggere
pullup interne con la
ingresso. Si consiglia di modalità INPUT_PULLUP. Inoltre,
impostare pinMode()su INPUT_PULLUPper abilitare ritorna
la INPUTmodalità disabilita
la resistenza di pull-up interna. Per ulteriori
esplicitamente i pullup interni.
informazioni, consulta il tutorial sui pin digitali . HIGH o LOW

Se non si imposta pinMode()su OUTPUTe si collega Sintassi

un LED a un pin, durante la


pinMode(pin, mode)
chiamata digitalWrite(HIGH)il LED potrebbe
apparire scuro. Senza un'impostazione
Parametri
esplicita pinMode(), digitalWrite()avrà abilitato il
resistore di pull-up interno, che si comporta pin: il numero del pin di
come un grosso resistore limitatore di corrente. Arduino di cui impostare la
modalità.
Sintassi
mode: INPUT, OUTPUT,

digitalWrite(pin, value) O INPUT_PULLUP. Vedere


la pagina Pin digitali  per una

Parametri descrizione più completa della


funzionalità.

pin: il numero pin di Arduino.


value: HIGHo LOW. ritorna

Niente
ritorna

Niente
Conti Leonardo 3AEC

Tempo

delay

Descrizione

Mette in pausa il programma per la quantità di tempo (in millisecondi)


specificata come parametro. (Ci sono 1000 millisecondi in un secondo.)

Sintassi

delay(ms)

Parametri

ms: il numero di millisecondi da mettere in pausa. Ammessi i tipi di dati: unsigned


long.

ritorna

Niente

Struttura di controllo

if

Descrizione

L' ifistruzione verifica una condizione ed esegue la seguente istruzione o


insieme di istruzioni se la condizione è "vera".

Sintassi
if (condition) {
//statement(s)
}

Parametri

condition: un'espressione booleana (cioè, può essere trueo false).

Operatori di confronto:
x == y (x è uguale a y)
x! = y (x non è uguale a y)
x <y (x è minore di y)
x> y (x è maggiore di y)
x <= y (x è minore o uguale a y)
x> = y (x è maggiore o uguale a y)
Conti Leonardo 3AEC

Codice arduino

Codice caricato sulla scheda arduino che permette il funzionamento dello schema di cablaggio
sottostante.
Il codice permette l’accensione di un led a due velocita diverse, premendo il pulsante la velocita
passa da 500ms a 100ms quindi il led lampeggia più velocemente; non premendo il pulsante la
velocità di lampeggiamento rimane costante a 500ms.

Leggere il pin 4

Assegna al pin 4 il valore HIGH se il pulsante è non


pigiato

Imposta un ritardo di 500 ms

Altrimenti pulsante pigiato

Imposta il ritardo a 100 ms

Schema di cablaggio
Conti Leonardo 3AEC

Schema elettrico

PUL-UP

Stato P1 Livello
logico sul
pin 4

- V

50

Elenco componenti

Scheda arduino UNO breadboard


Conti Leonardo 3AEC

Softwer utilizzati

 Tinkercard

 NI multisim

Richiami teorici 2° (scheda arduino UNO)

Pin digitali
Connettori ICSP
Interruttore di ripristino
Conti Leonardo 3AEC

Connettore USB

Led TX ed RX

Cip di
interfaccia USB

Oscillatore al cristallo

Regolatore
di voltaggio

Microcontrollore

Connettore
alimentazione
Pin di ingresso analogico
Descrizione dell’esperienza
Prima di affrontare l’esperienza abbiamo studiato i vari tipi di funzione (digitalWrite,
digitalRead, pinMode, delay e if). Successivamente ci siamo dedicata alla scrittura del
programma, per poi caricarlo a bordo della scheda arduino UNO. Il sistema di cablaggio
richiedeva un collegamento a massa e uno a 5V; il pulsante inserito sulla breadboard veniva
collegato da una parte al PIN 4 e dall’altra all’alimentazione (5V).
Conti Leonardo 3AEC

Fonti
https://www.arduino.cc/reference/en/language/structure/control-structure/if/
https://www.hackerearth.com/blog/developers/a-tour-of-the-arduino-uno-board/
https://www.tinkercad.com/dashboard

Potrebbero piacerti anche