Esempio di sketch Arduino per rilevare la temperatura ambiente da un sensore di temperatura e mostrare il risultato su un display LCD:
#include <LiquidCrystal.h> // include la libreria per il display LCD
// definisce i pin a cui il sensore di temperatura e il display LCD sono collegati
const int sensorPin = A0;
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7); // inizializza il display LCD
void setup() {
lcd.begin(16, 2); // imposta il numero di colonne e righe del display
}
void loop() {
int reading = analogRead(sensorPin); // legge il valore analogico dal sensore di temperatura
float voltage = reading * 5.0 / 1024.0; // converte il valore analogico in tensione
float temperature = (voltage - 0.5) * 100; // converte la tensione in temperatura in gradi Celsius
lcd.clear(); // cancella il contenuto del display
lcd.setCursor(0, 0); // imposta il cursore sulla prima riga, prima colonna
lcd.print("Temperatura:"); // stampa il testo "Temperatura:"
lcd.setCursor(0, 1); // imposta il cursore sulla seconda riga, prima colonna
lcd.print(temperature); // stampa la temperatura in gradi Celsius
delay(1000); // attende un secondo prima di ripetere la lettura
}
Questo codice legge il valore analogico dal sensore di temperatura collegato al pin ‘A0‘ dell’Arduino, converte la tensione letta in temperatura in gradi Celsius e la stampa sul display LCD collegato ai pin ‘rs, en, d4, d5, d6, d7‘ dell’Arduino. Il codice ripete questa operazione ogni secondo grazie alla funzione ‘delay(1000)‘ che attende un secondo prima di eseguire il codice successivo.
