#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#include <SPI.h>
#include <DHT.h>
#define HARDWARE_TYPE MD_MAX72XX::PAROLA_HW
#define MAX_DEVICES 4 // Define the number of displays connected
#define CLK_PIN 13 // CLK or SCK
#define DATA_PIN 11 // DATA or MOSI
#define CS_PIN 3 // CS or SS
#define DHTPIN 5
#define DHTTYPE DHT22
#define MAX_MESG 20
char szMesg[MAX_MESG + 1] = "";
float temperature;
float humidity;
MD_Parola myDisplay = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
DHT dht = DHT(DHTPIN, DHTTYPE);
uint8_t degC[] = { 6, 3, 3, 56, 68, 68, 68 }; // Deg C
void setup() {
// Intialize the object
myDisplay.begin();
myDisplay.setIntensity(0);
myDisplay.displayClear();
myDisplay.addChar('$', degC);
dht.begin();
}
void loop() {
temperature = dht.readTemperature();
humidity = dht.readHumidity();
myDisplay.setTextAlignment(PA_CENTER); // PA_LEFT PA_RIGHT
myDisplay.setInvert(false);
dtostrf(temperature, 3, 1, szMesg);
strcat(szMesg, "$");
myDisplay.print(szMesg);
delay(3000);
dtostrf(humidity, 3, 1, szMesg);
strcat(szMesg, "%");
myDisplay.print(szMesg);
delay(3000);
}