Esercizio P3.1

Modificare il firmware dell'esempio "Uso del convertitore analogico-digitale (ADC)" inviando in seriale anche il valore di tensione letto.

SUGGERIMENTO: Il valore di tensione può essere calcolato nel seguente modo

float tensione = float(valore)*5.0/1024.0

float(valore) trasforma il valore intero "valore" in un numero reale. I numeri 5 e 1024 sono scritti rispettivamente 5.0 e 1024.0 per far capire al compilatore che vanno trattati come numeri reali e non come interi.

Esercizio P3.2

Modificare il firware dell'esperienza "Lettura di un fotoresistore" introducendo la possibilità di variare la soglia oltre la quale il led si accende tramite un potenziometro.

SUGGERIMENTO:

come resistenza in serie al fotoresistore inserire un valore di 10 KOHM.

 

Modificare ad-hoc il seguente firmware che effettua la lettura della tensione all'ingresso A0 e se questa è superiore al valore impostato nella variabile soglia accende il led

int sensorValue = 0;
int outputValue = 0;
int soglia = 255;

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

void loop(){
sensorValue = analogRead(A0);
if (sensorValue > soglia){
digitalWrite(9, HIGH);
}else{
digitalWrite(9, LOW);
}
delay(10);
}

 

Esercizio P3.3

Modificare il firmware dell'esempio precedente introducendo anche un display LCD 16*2 che mostra nella prima riga il valore della soglia e nella seconda il valore letto sul fotoresistore.

SUGGERIMENTO:

Il circuito già predisposto può essere copiato da: https://www.tinkercad.com/things/co9eE0qvDDu

Introdurre nel firmware dell'esercizio precedente il seguente firmware che mostra il contenuto delle due variabili "soglia" e "valore_fotoresistenza"

#include <Adafruit_LiquidCrystal.h>
int soglia = 255;
int valore_fotoresistenza = 128;
Adafruit_LiquidCrystal lcd_1(0);
void setup()
{
lcd_1.begin(16, 2);
lcd_1.print("Val. soglia");
lcd_1.setCursor(0, 1);
lcd_1.print("Fotores.");
lcd_1.setBacklight(1);

}

void loop()
{
lcd_1.setCursor(12, 0);
lcd_1.print(soglia);
lcd_1.setCursor(9, 1);
lcd_1.print(valore_fotoresistenza);
delay(500);
}
Esercizio P3.4

Utilizzando il circuito dell'esperienza "Lettura di un fotoresistore", collegarci un display LCD I2C e modificare il firmware in modo da visualizzare il valore letto nel display.

 
Last modified: Wednesday, 6 March 2024, 5:19 PM