Teraz mam coś takiego i czcionka beznadziejna.
Kod:
#include <SimpleDHT.h>
#include <UTFTGLUE.h>
#include <RTClib.h>
RTC_DS3231 rtc;
UTFTGLUE myGLCD(0x9488,A2,A1,A3,A4,A0); // Wyświetlacz 320x480 i Mega 2560
int pinDHT22 = 53;
SimpleDHT22 dht22;
//char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
// static const char *daysOfTheWeek[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
char daysOfTheWeek[7][14] = {" NIEDZIELA", "PONIEDZIALEK", " WTOREK", " SRODA", " CZWARTEK", " PIATEK", " SOBOTA"};
#if !defined(BigFont)
extern uint8_t BigFont[];
#endif
void setup()
{
rtc.begin();
randomSeed(analogRead(5));
pinMode(A0, OUTPUT);
digitalWrite(A0, HIGH);
myGLCD.InitLCD();
myGLCD.clrScr();
// ================= RAMKI ==========================
myGLCD.setColor(25, 25, 255);
myGLCD.drawLine(20, 45, 220, 45); myGLCD.drawLine(220, 45, 220, 170); myGLCD.drawLine(20, 170, 220, 170); myGLCD.drawLine(20, 170, 20, 45);
myGLCD.drawLine(240, 45, 460, 45); myGLCD.drawLine(240, 45, 240, 170); myGLCD.drawLine(460, 45, 460, 170); myGLCD.drawLine(460, 170, 240, 170);
myGLCD.drawLine(20, 200, 460, 200); myGLCD.drawLine(460, 200, 460, 300); myGLCD.drawLine(20, 300, 460, 300); myGLCD.drawLine(20, 200, 20, 300);
myGLCD.setColor(255, 255, 255);
myGLCD.setTextSize(0);
myGLCD.print("` `", 170, 184);
myGLCD.setTextSize(2);
// myGLCD.setFont(BigFont);
myGLCD.print(" WILGOTNOSC ", 60, 191);
myGLCD.print(" TEMPERATURA ", 275, 191);
myGLCD.print(" GODZINA ", 66, 37);
myGLCD.print(" DATA ", 310, 37);
myGLCD.setColor(25, 25, 255);
myGLCD.drawLine(20, 15, 460, 15);
myGLCD.setColor(255, 50, 75);
// myGLCD.setTextSize(0);
myGLCD.setFont(BigFont);
myGLCD.print(" KRZYSZTOF MADZIAR ", CENTER, 12);
//================= ZNAKI DATY CZASU ========================
myGLCD.setTextSize(2);
myGLCD.setColor(250, 0, 255);
myGLCD.print("o",385,235);
myGLCD.setTextSize(4);
myGLCD.print("C",402,240);
myGLCD.setTextSize(2);
myGLCD.setColor(0, 250, 255);
myGLCD.print("%",180,235);
myGLCD.print("RH",175,258);
myGLCD.setTextSize(5);
// myGLCD.setColor(25, 255, 0);
// myGLCD.print(":",103,76);
myGLCD.setColor(25, 255, 0);
myGLCD.print(("/"), 335, 80);
}
void loop()
{
DateTime now = rtc.now();
String nazwa;
float temperature = 0;
float humidity = 0;
int err = SimpleDHTErrSuccess;
if ((err = dht22.read2(pinDHT22, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
return;
}
myGLCD.setTextSize(5);
myGLCD.setColor(25, 255, 0);
myGLCD.print(":",105,80);
//================== Temperatura =========================
myGLCD.setColor(250, 0, 255);
myGLCD.setTextSize(4);
myGLCD.printNumF((temperature), 1, 280, 240);
//=================== Wilgotność ==========================
myGLCD.setColor(0, 250, 255);
myGLCD.setTextSize(4);
myGLCD.printNumF((humidity),1, 65, 240);
//==================== DATA ===========================
myGLCD.setColor(25, 255, 0);
myGLCD.setFont(BigFont);
myGLCD.setTextSize(6);
if ((now.month())<=9){
myGLCD.print("0", 370, 76);
myGLCD.printNumF((now.month()),0, 405, 76);
}else{
myGLCD.printNumF((now.month()),0, 365, 76);}
if ((now.day())<=9){
myGLCD.print("0",260,76);
myGLCD.printNumF((now.day()),0, 295, 76);
}else{
myGLCD.printNumF((now.day()),0, 260, 76);}
myGLCD.setTextSize(2);
myGLCD.setColor(250, 255, 0);
nazwa = (daysOfTheWeek[(now.dayOfTheWeek())]);
myGLCD.printNumF((now.year()),0, 322, 139);
myGLCD.print((nazwa), 50, 139);
//===================== CZAS ==========================
myGLCD.setTextSize(6);
myGLCD.setColor(25, 255, 0);
if ((now.hour())<=9){
myGLCD.print("0",38,76);
myGLCD.printNumF((now.hour()),0, 73, 76);
}else{
myGLCD.printNumF((now.hour()),0, 38, 76);}
if ((now.minute())<=9) {
myGLCD.print("0",135,76);
myGLCD.printNumF((now.minute()),0, 170, 76);
}else{
myGLCD.printNumF((now.minute()),0, 135, 76);}
/* myGLCD.setTextSize(3);
myGLCD.setColor(250, 255, 0);
if ((now.second())<=9) {
myGLCD.print("0",167,135);
myGLCD.printNumI((now.second()), 185, 135);
}else{
myGLCD.printNumI((now.second()), 167, 135);}
*/
delay(450);
myGLCD.setTextSize(5);
myGLCD.setColor(25, 255, 0);
myGLCD.print(" ",105,80);
delay(550);
}