Skip to content

Instantly share code, notes, and snippets.

@stefa168
Last active August 29, 2015 14:02
Show Gist options
  • Save stefa168/4617656a4b0a426813c0 to your computer and use it in GitHub Desktop.
Save stefa168/4617656a4b0a426813c0 to your computer and use it in GitHub Desktop.
/* Programma scritto da Stefano Porta
Distribuito con Licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Unported.*/
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int LM35_1 = A0;
int LM35_2 = A1;
int mis = 0;
float vrif = 1.1;
float media1 = 0.00, media2 = 0.00;
byte grado[8] = {
0b00111,
0b00101,
0b00111,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000
};
void setup() {
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
analogReference(INTERNAL);
analogRead(LM35_1);
analogRead(LM35_2);
Serial.begin(9600);
Serial.println("ReadTemp\nVersione 2.1\nLicenza CC A N N 3.0\n============");
lcd.begin(20, 4);
lcd.createChar(0, grado);
lcd.setCursor(6, 0);
lcd.print("ReadTemp");
lcd.setCursor(4, 2);
lcd.print("Versione 2.1");
lcd.setCursor(0, 3);
lcd.print("Licenza CC A N N 3.0");
delay(3000);
}
void loop() {
mis++;
media1 += readTemp(LM35_1);
media2 += readTemp(LM35_2);
if(mis==5){
media1 = media1/5;
media2 = media2/5;
Serial.println(media1);
Serial.println(media2);
Serial.println((media1+media2)/2);
Serial.println("============");
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Sensore 1: ");
lcd.print(media1);
lcd.write(" ");
lcd.write(byte(0));
lcd.write("C");
lcd.setCursor(0, 1);
lcd.print("Sensore 2: ");
lcd.print(media2);
lcd.write(" ");
lcd.write(byte(0));
lcd.write("C");
lcd.setCursor(0, 3);
lcd.print("Media: ");
lcd.print((media1+media2)/2);
lcd.write(" ");
lcd.write(byte(0));
lcd.write("C");
mis -= 5;
media1 = 0.00;
media2 = 0.00;
delay(500);
} else {
delay(25);
}
}
float readTemp (int sensore){
return (100 * vrif * analogRead(sensore)) / 1024.0;
}
@stefa168
Copy link
Author

Il codice è stato aggiornato per permettere l'utilizzo di un solo LM35 e senza LCD.
Il vecchio codice è sempre disponibile nella scheda delle revisioni.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment