User
Data registr.: 20-04-2009 Residenza: Potenza
Messaggi: 934
| Citazione:
Originalmente inviato da aero330 Con il seguente codice visualizzi alternativamente temperatura/umidità e ora/data ogni 0,5s....cambia il valore del delay a tuo piacere.
*nota che ho spostato alcune righe di codice dal setup al loop per riscrivere tutte le volte temp/umidità Codice: #include <DHT.h>
#include <Wire.h>
#include <RTClib.h>
#include <LiquidCrystal.h>
#include "DHT.h"
#define DHTPIN 8 // 8 è il pin di Arduino a cui collego il sensore di temperatura
#define DHTTYPE DHT11 // dht11 è il tipo di sensore che uso
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // connessione display (pin)
char buffer1[20];
char buffer2[20];
RTC_DS1307 RTC;
const int setpin = 6;
boolean statepin = 0;
int t;
int h;
void setup() {
lcd.begin(16, 2); // imposto il tipo di display (colonne, righe)
lcd.setCursor(0,0);
pinMode (6, INPUT);
digitalWrite (6, HIGH);
Wire.begin();
RTC.begin();
if (! RTC.isrunning()) {
RTC.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop() {
t = dht.readTemperature();
h = dht.readHumidity(); // posiziono il cursore alla colonna 12 e riga 0
lcd.print("Temperatura");
lcd.setCursor(0,1);
lcd.print("Umidita'");
lcd.setCursor(15,0);
lcd.print("C");
lcd.setCursor(15,1);
lcd.print("%");
lcd.setCursor(12, 0);
lcd.print(t);
lcd.setCursor(12, 1);
lcd.print(h);
delay(500);
lcd.clear(); //pulisce tutto lo schermo e cursore in alto a sinistra (0,0)
statepin = digitalRead (setpin);
if (statepin == LOW)
{
RTC.adjust(DateTime(__DATE__, __TIME__));
}
DateTime now = RTC.now();
sprintf(buffer1, "%02d:%02d:%02d", now.hour(), now.minute(), now.second());
lcd.setCursor(0,0);
lcd.print( buffer1 );
sprintf(buffer2, "%02d/%02d/%d", now.day(), now.month(), now.year());
lcd.setCursor(0,1);
lcd.print( buffer2 );
delay(500);
lcd.clear();
} Per i transistor è indifferente, ho controllato i datasheet e sono pressochè identici | Grazie mille e gentilissimo! ti sarebbe possibile spiegarmi in parole povere come bisogna procedere nel codice? Facendo copia e incolla non imparerò mai una fava
ps. da quel poco che ho capito, hai semplicemente messo un delay(500) ?
__________________ FIUMI DI PENSIERI VAGANO NELLA MIA MENTE IGNORANDO LA PERCEZIONE DELLA REALTA' IMPOSTA
Ultima modifica di andore : 13 maggio 17 alle ore 18:27 |