#include <Servo.h>
#include <DHT.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define screen_wide 128
#define screen_height 64
#define SSD1306_I2C_ADDRESS 0x3c
Adafruit_SSD1306 moj_zaslon(screen_wide, screen_height, &Wire);
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
Servo servo;
void setup() {
moj_zaslon.begin(SSD1306_SWITCHCAPVCC, SSD1306_I2C_ADDRESS);
servo.attach(9);
dht.begin();
}
void loop() {
float t = dht.readTemperature();
if (t < 25) {
servo.write(0);
moj_zaslon.clearDisplay();
moj_zaslon.setTextSize(1);
moj_zaslon.setTextColor(SSD1306_WHITE);
moj_zaslon.setCursor(10, 10);
moj_zaslon.print(t);
moj_zaslon.print(" : °C");
moj_zaslon.display();
}
if (t >= 25 && t <= 35) {
servo.write(90);
moj_zaslon.clearDisplay();
moj_zaslon.setTextSize(1);
moj_zaslon.setTextColor(SSD1306_WHITE);
moj_zaslon.setCursor(10, 10);
moj_zaslon.print(t);
moj_zaslon.print(" : °C");
moj_zaslon.display();
}
if (t > 35) {
servo.write(180);
moj_zaslon.clearDisplay();
moj_zaslon.setTextSize(1);
moj_zaslon.setTextColor(SSD1306_WHITE);
moj_zaslon.setCursor(10, 10);
moj_zaslon.print(t);
moj_zaslon.print(" : °C");
moj_zaslon.display();
}
}