Kód: Vybrat vše
#include <SD.h>
#include <SPI.h>
#include <dht.h>
#include <DS1302.h>
#include <Wire.h>
DS1302 rtc(29, 31, 33);
#define DS1302_GND_PIN 35
#define DS1302_VCC_PIN 37
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
dht DHT;
#define DHT11_PIN 49
int pinCS = 53;
byte tmpr[8] = {
B00100,
B01010,
B01010,
B01110,
B01110,
B11111,
B11111,
B01110
};
byte hmdt[8] = {
B00100,
B00100,
B01010,
B01010,
B10001,
B10001,
B10001,
B01110,
};
void setup(){
lcd.createChar(0, tmpr);
lcd.createChar(1, hmdt);
digitalWrite(DS1302_GND_PIN, LOW);
pinMode(DS1302_GND_PIN, OUTPUT);
digitalWrite(DS1302_VCC_PIN, HIGH);
pinMode(DS1302_VCC_PIN, OUTPUT);
rtc.halt(false);
rtc.writeProtect(false);
//rtc.setDOW(MONDAY);
//rtc.setTime(8, 48, 0);
//rtc.setDate(13, 3, 2017);
lcd.begin(16, 2);
}
void loop()
{
int chk = DHT.read11(DHT11_PIN);
lcd.setCursor(0, 0);
lcd.print(rtc.getTimeStr());
lcd.setCursor(0, 1);
lcd.print(rtc.getDateStr());
lcd.setCursor(10,0);
lcd.write(byte(0));
lcd.print(DHT.temperature);
lcd.print("C ");
lcd.setCursor(10,1);
lcd.write(byte(1));
lcd.print(DHT.humidity);
delay(1000);
lcd.clear();
}
Edit2: btw nemůže mi ty vteřiny zasekávat příkaz rtc.halt(false)?