/*
Simple "Hello World" for ILI9341 LCD
https://wokwi.com/arduino/projects/308024602434470466
*/
#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"
#define TFT_DC 9
#define TFT_CS 10
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
unsigned int ax = 90; //Aussen xy
unsigned int ay = 5;
unsigned int tmpcolA;
unsigned int hk1x = 15; //Heizkreis 1
unsigned int hk1y = 110; //Heizkreis 1
unsigned int hk1w = 2; //Heizkreis 1
unsigned int hk2x = 15; //Heizkreis 2
unsigned int hk2y = 210; //Heizkreis 2
unsigned int hk2w = 2; //Heizkreis 2
unsigned int sx = 190; //Speicher1 xy
unsigned int sy = 40;
unsigned int sw = 4;
unsigned int solx = 0; //Solar xy
unsigned int soly = 0;
unsigned int ox = 10; //ÖlKessel xy
unsigned int oy = 10;
unsigned int kx = 386; // 19x150 Kamin xy
unsigned int ky = 230;
unsigned int tmpcol1; // TempColor Sens 1
unsigned int tmpcol2; // TempColor Sens 2
unsigned int tmpcol3; // TempColor Sens 3
unsigned int tmpcol4; // TempColor Sens 4
void setup() {
tft.begin();
tft.setRotation(1);
tft.fillScreen(BLACK);
tft.fillRoundRect(ox+46, oy+28, 24, 30, 8, WHITE); // Öl-Brenner
tft.fillRoundRect(ox+48, oy+30, 20, 26, 6, BLACK); // Öl-Brenner
tft.fillRect(ox, oy, 56, 66, WHITE); // Öl-kessel
tft.fillRect(ox+2, oy+2, 52, 62, BLACK); // Öl-kessel
tft.drawCircle(ox+10, oy+10, 2, WHITE); //Sensor zeichen
tft.fillTriangle(ox+35, oy, ox+66, oy, ox+55, oy+16, WHITE); // Öl-kessel-schräge
tft.fillTriangle(ox+35, oy-3, ox+68, oy-3, ox+58, oy+16, BLACK); // Öl-kessel-schräge
tft.drawRect(ox+45, oy+36, 8, 16, WHITE); // Öl-BrennerHülse
//----Flamme------------------
/*
tft.fillCircle (ox+52, oy+50, 12, YELLOW); // Flamme
tft.fillTriangle(ox+30, oy+38, ox+55, oy+38, ox+55, oy+50, YELLOW); // Flamme oben
tft.fillTriangle(ox+20, oy+50, ox+55, oy+42, ox+55, oy+58, YELLOW); // Flamme mitte
tft.fillTriangle(ox+30, oy+62, ox+55, oy+62, ox+55, oy+50, YELLOW); // Flamme unten
tft.fillCircle (ox+57, oy+50, 5, BLUE);
tft.fillTriangle(ox+44, oy+43, ox+57, oy+45, ox+58, oy+52, BLUE); // Flamme oben
tft.fillTriangle(ox+35, oy+50, ox+57, oy+53, ox+56, oy+47, BLUE); // Flamme mitte
tft.fillTriangle(ox+44, oy+57, ox+57, oy+55, ox+58, oy+47, BLUE); // Flamme unten
*/
tft.fillCircle (ox+32, oy+43, 12, YELLOW); // Flamme
tft.fillTriangle(ox+13, oy+31, ox+35, oy+31, ox+35, oy+43, YELLOW); // Flamme oben
tft.fillTriangle(ox+5, oy+43, ox+35, oy+35, ox+35, oy+51, YELLOW); // Flamme mitte
tft.fillTriangle(ox+13, oy+55, ox+35, oy+56, ox+35, oy+43, YELLOW); // Flamme unten
tft.fillCircle (ox+37, oy+43, 5, BLUE);
tft.fillTriangle(ox+24, oy+36, ox+37, oy+38, ox+38, oy+45, BLUE); // Flamme oben
tft.fillTriangle(ox+15, oy+43, ox+37, oy+46, ox+36, oy+40, BLUE); // Flamme mitte
tft.fillTriangle(ox+24, oy+50, ox+37, oy+48, ox+38, oy+40, BLUE); // Flamme unten
//----------Flame Abdeckung----------------------------------
//tft.fillRect(ox+3, oy+28, 42, 30, BLACK); // Flamme_Abdeckung
tft.drawRect(ox-2, oy-2, 74, 70, GREEN); //Güne Umrahmung
//----------------Priorität / Angefordert--------------------------
tft.drawCircle(ox+10, oy+10, 4, GREEN);
tft.drawCircle(ox+10, oy+10, 5, GREEN);
tft.drawCircle(ox+10, oy+10, 6, GREEN);
tft.drawCircle(ox+10, oy+10, 7, GREEN);
//--- Störung --------------------------------------
tft.fillRect(ox+3, oy+28, 42, 30, BLACK); // Flamme_Abdeckung
tft.fillRect(ox+13, oy+28, 29, 29, RED); // Red Backround
tft.fillTriangle(ox+30, oy+42, ox+42, oy+54, ox+42, oy+30, BLACK); //<
tft.fillTriangle(ox+24, oy+42, ox+12, oy+54, ox+12, oy+30, BLACK); //>
tft.fillTriangle(ox+27, oy+45, ox+15, oy+57, ox+39, oy+57, BLACK); //v
tft.fillTriangle(ox+27, oy+39, ox+15, oy+27, ox+39, oy+27, BLACK); //^
}
void loop() { }