#include #include #include #include #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define DATA_PIN 2 #define CLK_PIN 1 #define CS_PIN 3 #define MAX_DEVICES 4 #define DHTPIN 27 #define DHTTYPE DHT11 MD_Parola display(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES); DHT dht(DHTPIN, DHTTYPE); char msg[32]; unsigned long lastSwitch = 0; bool showTemp = true; void setup() { Serial.begin(115200); dht.begin(); display.begin(); display.setIntensity(0); display.displayClear(); } void loop() { display.displayAnimate(); // միշտ պետք է աշխատի if (millis() - lastSwitch > 5000) { lastSwitch = millis(); float t = dht.readTemperature(); float h = dht.readHumidity(); if (isnan(t) || isnan(h)) { strcpy(msg, "DHT ERROR"); } else { if (showTemp) { sprintf(msg, "TEMP +%dC", (int)t); } else { sprintf(msg, "HUM %d%%", (int)h); } } showTemp = !showTemp; display.displayText( msg, PA_LEFT, 80, 0, PA_SCROLL_LEFT, PA_SCROLL_LEFT ); } }