Metro digotale ad ultrasuoni con sensore di temperatura LM 35
Codice;
#define TRIG_PIN 10#define ECHO_PIN 9
#define TEMPERATURA_PIN A0
#include <LiquidCrystal.h>
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
void setup(){
Serial.begin(9600);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
digitalWrite(TRIG_PIN, LOW);
lcd.begin(16, 2);
lcd.print("merto digitale");
}
void loop(){
int input = analogRead(TEMPERATURA_PIN);
float temperatura = input / 2.046;
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
unsigned long tempo = pulseIn(ECHO_PIN, HIGH);
float velocita = 0.03314 + 0.000062 * temperatura;
float distanza = velocita * tempo / 2;
Serial.println("Distanza: " + String(distanza) + "cm");
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Distanza:");
lcd.setCursor(10, 0);
lcd.print(String(distanza));
lcd.setCursor(0, 1);
lcd.print("Temperatura:");
lcd.setCursor(13, 1);
lcd.print (temperatura);
delay(1000);
lcd.clear();
}
Nessun commento:
Posta un commento