From 381a9aab0618a0e5cc36766aa5f105d94efc56ec Mon Sep 17 00:00:00 2001 From: sieja Date: Mon, 16 Jun 2025 22:14:06 +0200 Subject: [PATCH] =?UTF-8?q?SpectralSensor=20ESP32-=20pocz=C4=85tki?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ESP32/RgbSpectralSensor/RgbSpectralSensor.ino | 494 ++++++++---------- ESP32/RgbSpectralSensor/User_Setup.h | 22 + 2 files changed, 242 insertions(+), 274 deletions(-) create mode 100644 ESP32/RgbSpectralSensor/User_Setup.h diff --git a/ESP32/RgbSpectralSensor/RgbSpectralSensor.ino b/ESP32/RgbSpectralSensor/RgbSpectralSensor.ino index 5f809b7..5e0095c 100644 --- a/ESP32/RgbSpectralSensor/RgbSpectralSensor.ino +++ b/ESP32/RgbSpectralSensor/RgbSpectralSensor.ino @@ -1,22 +1,28 @@ +#include +#include + + +// Wymaga konfiguracjie: +// C:\Users\siiee\Documents\Arduino\libraries\TFT_eSPI + +TFT_eSPI tft = TFT_eSPI(); // domyślna konfiguracja z User_Setup.h //2DO: // obsługa przycisków zmieniających menu i LED - //160x128 #define Version "0.0.0" #include #include #include -#include #include "AS726X.h" -#define TFT_DC 8 -#define TFT_CS 9 -#define TFT_RST 10 +// #define TFT_CS 5 +// #define TFT_RST 4 +// #define TFT_DC 2 -#define Btn1 21 //on board: A1 menu -#define Btn2 20 //on board: A2 gain -#define Btn3 19 //on board: A3 ??? +#define Btn1 33 //on board: A1 menu +#define Btn2 34 //on board: A2 gain +#define Btn3 35 //on board: A3 ??? #define WHITE 0xFFFF #define BLACK 0x0000 @@ -37,7 +43,6 @@ AS726X sensor; -Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST); int RawRed = 0; int RawOrange = 0; @@ -78,25 +83,23 @@ char ChValue[20]; void setup() { - tft.initR(INITR_BLACKTAB); - tft.fillScreen(BLACK); + tft.init(); tft.setRotation(1); - tft.setTextSize(1); - tft.setTextColor(WHITE); - tft.setCursor(0, 0); - tft.println("Version:"); - tft.setCursor(0, 10); - tft.println(Version); + tft.fillScreen(TFT_BLACK); - delay(1000); + tft.setTextColor(TFT_YELLOW, TFT_BLACK); + tft.setTextSize(2); + tft.drawString("Version:"+ String(Version), 0, 0); + delay(500); Wire.begin(); - Serial.begin(115200); sensor.begin(); pinMode(Btn1, INPUT); pinMode(Btn2, INPUT); + tft.fillRect(0, 0, 240, 240, TFT_BLACK); + } void drawControls() { - tft.fillScreen(BLACK); + // tft.fillRect(0, 0, 240, 240, TFT_BLACK); // ////tft.setRotation(0); // linia pozycyjna LED @@ -131,29 +134,26 @@ void drawControls() { } void loop() { - tft.fillScreen(ST77XX_BLACK); tft.setTextSize(1); - tft.setTextColor(WHITE); + tft.setTextColor(TFT_WHITE, TFT_BLACK); -// //TESTY -// tft.setCursor(0, 0); -// tft.setTextColor(WHITE); -// tft.setTextWrap(true); -// tft.print("test"); -// delay(500); -// tft.fillRect(0, 64 , 25, 64, RED); -// tft.fillRect(25, 64 , 25, 64, ORANGE); -// tft.fillRect(50, 64 , 25, 64, YELLOW); -// tft.fillRect(75, 64 , 25, 64, GREEN); -// tft.fillRect(100, 64 , 25, 64, BLUE); -// tft.fillRect(125, 64 , 25, 64, MAGENTA); -// delay(1000); +// // //TESTY +// tft.setTextColor(TFT_WHITE); +// tft.drawString("test",0, 0); +// tft.fillRect(0, 64 , 25, 64, TFT_RED); +// tft.fillRect(25, 64 , 25, 64, TFT_ORANGE); +// tft.fillRect(50, 64 , 25, 64, TFT_YELLOW); +// tft.fillRect(75, 64 , 25, 64, TFT_GREEN); +// tft.fillRect(100, 64 , 25, 64, TFT_BLUE); +// tft.fillRect(125, 64 , 25, 64, TFT_MAGENTA); +// tft.fillRect(150, 64 , 25, 64, TFT_WHITE); //menu change if (digitalRead(Btn2) == HIGH) { + tft.fillRect(0, 0, 240, 240, TFT_BLACK); if (menu_number < 8) { menu_number = menu_number + 1; } else { @@ -165,255 +165,201 @@ void loop() { if (menu_number == 0 ) {//show menu + tft.setTextSize(2); + tft.drawString("GAIN:" + String(gainValue),0, 0); + tft.drawString("LED: 5-8",0, 16); + tft.drawString("0:Menu",0, 32); + tft.drawString("1:Calc.Values",0, 48); + tft.drawString("2:Raw",0, 64); + tft.drawString("3:Rel. Graph",0, 80); + tft.drawString("4:Calc. Graph",0, 96); drawControls(); - tft.setCursor(0, 0); - tft.println("GAIN"); - tft.setCursor(32, 0); - tft.println(gainValue, 1); - tft.setCursor(64, 0); - tft.println("LED: 5-8"); - tft.setCursor(0, 8); - tft.println("0:Menu 1:Calculated"); - tft.setCursor(0, 16); - tft.println("2:Raw 3:Reltive Graph"); - tft.setCursor(0, 24); - tft.println("4:Calculated Graph"); - delay(0); + + delay(100); } - // + // // if (menu_number == 1 || menu_number == 5 ) {//show calculated values drawControls(); //tft.setRotation(0); - tft.setCursor(0, 25); - tft.println("R:"); - tft.setCursor((GrapWidth), 25); - tft.println("O:"); - tft.setCursor((GrapWidth) * 2, 25); - tft.println("Y:"); - tft.setCursor((GrapWidth) * 3, 25); - tft.println("G:"); - tft.setCursor((GrapWidth) * 4, 25); - tft.println("B:"); - tft.setCursor((GrapWidth) * 5, 25); - tft.println("V:"); - ////tft.setRotation(3); - tft.setCursor(0, 4); - dtostrf(CalcRed, 10, 1, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 1) + 5); - dtostrf(CalcOrange, 10, 1, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 2) + 5); - dtostrf(CalcYellow, 10, 1, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 3) + 5); - dtostrf(CalcGreen, 10, 1, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 4) + 5); - dtostrf(CalcBlue, 10, 1, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 5) + 5); - dtostrf(CalcViolet, 10, 1, FloatInChar); - tft.println(FloatInChar); + tft.drawString("Calculated Values",0,0); + tft.drawString("R:" + String(CalcRed),0, 20); + tft.drawString("O:" + String(CalcOrange),0, 39); + tft.drawString("Y:" + String(CalcYellow),0, 58); + tft.drawString("G:" + String(CalcGreen),0, 77); + tft.drawString("B:" + String(CalcBlue),0, 96); + tft.drawString("V:" + String(CalcViolet),0, 115); } - - // ////tft.setRotation(0); - //show raw values + // //show raw values if (menu_number == 2 || menu_number == 6) { drawControls(); - ////tft.setRotation(0); - tft.setCursor(0, 25); - tft.println("R"); - tft.setCursor((GrapWidth), 25); - tft.println("O"); - tft.setCursor((GrapWidth) * 2, 25); - tft.println("Y"); - tft.setCursor((GrapWidth) * 3, 25); - tft.println("G"); - tft.setCursor((GrapWidth) * 4, 25); - tft.println("B"); - tft.setCursor((GrapWidth) * 5, 25); - tft.println("V"); - ////tft.setRotation(3); + tft.drawString("Raw Values",0,0); + tft.drawString("R:" + String(RawRed),0, 20); + tft.drawString("O:" + String(RawOrange),0, 39); + tft.drawString("Y:" + String(RawYellow),0, 58); + tft.drawString("G:" + String(RawGreen),0, 77); + tft.drawString("B:" + String(RawBlue),0, 96); + tft.drawString("V:" + String(RawViolet),0, 115); - tft.setCursor(0, 4); - dtostrf(RawRed, 10, 0, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 1) + 5); - dtostrf(RawOrange, 10, 0, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 2) + 5); - dtostrf(RawYellow, 10, 0, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 3) + 5); - dtostrf(RawGreen, 10, 0, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 4) + 5); - dtostrf(RawBlue, 10, 0, FloatInChar); - tft.println(FloatInChar); - tft.setCursor(0, (GrapWidth * 5) + 5); - dtostrf(RawViolet, 10, 0, FloatInChar); - tft.println(FloatInChar); } ////tft.setRotation(0); - //show relative calculated values graph - if (menu_number == 3 || menu_number == 7 ){ - maxValue = 0; - drawControls(); - ////tft.setRotation(0); + // //show relative calculated values graph + // if (menu_number == 3 || menu_number == 7 ){ + // maxValue = 0; + // drawControls(); + // ////tft.setRotation(0); - for (int i = 0; i < 5; i++) { - maxValue = max(maxValue, ReadValues[i]); - } - HeightRed = int((CalcRed / maxValue) * GraphHeight); - HeightOrange = int((CalcOrange / maxValue) * GraphHeight); - HeightYellow = int((CalcYellow / maxValue) * GraphHeight); - HeightGreen = int((CalcGreen / maxValue) * GraphHeight); - HeightBlue = int((CalcBlue / maxValue) * GraphHeight); - HeightViolet = int((CalcViolet / maxValue) * GraphHeight); + // for (int i = 0; i < 5; i++) { + // maxValue = max(maxValue, ReadValues[i]); + // } + // HeightRed = int((CalcRed / maxValue) * GraphHeight); + // HeightOrange = int((CalcOrange / maxValue) * GraphHeight); + // HeightYellow = int((CalcYellow / maxValue) * GraphHeight); + // HeightGreen = int((CalcGreen / maxValue) * GraphHeight); + // HeightBlue = int((CalcBlue / maxValue) * GraphHeight); + // HeightViolet = int((CalcViolet / maxValue) * GraphHeight); - tft.setCursor(1 * GrapWidth -10, 10); - if (HeightRed >25){ - tft.setTextColor(BLACK); - } + // tft.setCursor(1 * GrapWidth -10, 10); + // if (HeightRed >25){ + // tft.setTextColor(BLACK); + // } - tft.fillRect(0 * GrapWidth, GraphHeight - HeightRed, GrapWidth, HeightRed, RED); - tft.fillRect(1 * GrapWidth + 1, GraphHeight - HeightOrange, GrapWidth, HeightOrange, ORANGE); - tft.fillRect(2 * GrapWidth + 2, GraphHeight - HeightYellow, GrapWidth, HeightYellow, YELLOW); - tft.fillRect(3 * GrapWidth + 3, GraphHeight - HeightGreen, GrapWidth, HeightGreen, GREEN); - tft.fillRect(4 * GrapWidth + 4, GraphHeight - HeightBlue, GrapWidth, HeightBlue, BLUE); - tft.fillRect(5 * GrapWidth + 5, GraphHeight - HeightViolet, GrapWidth, HeightViolet, MAGENTA); - tft.setCursor(1 * GrapWidth -10, 0); - if (HeightRed > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("R:"); - tft.setCursor(2 * GrapWidth -10, 0); - if (HeightOrange > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("O:"); - tft.setCursor(3 * GrapWidth -10, 0); - if (HeightYellow > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("Y:"); - tft.setCursor(4 * GrapWidth -10, 0); - if (HeightGreen > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("G:"); - tft.setCursor(5 * GrapWidth -10, 0); - if (HeightBlue > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("B:"); - tft.setCursor(6 * GrapWidth -10, 0); - if (HeightViolet > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("V:"); + // tft.fillRect(0 * GrapWidth, GraphHeight - HeightRed, GrapWidth, HeightRed, RED); + // tft.fillRect(1 * GrapWidth + 1, GraphHeight - HeightOrange, GrapWidth, HeightOrange, ORANGE); + // tft.fillRect(2 * GrapWidth + 2, GraphHeight - HeightYellow, GrapWidth, HeightYellow, YELLOW); + // tft.fillRect(3 * GrapWidth + 3, GraphHeight - HeightGreen, GrapWidth, HeightGreen, GREEN); + // tft.fillRect(4 * GrapWidth + 4, GraphHeight - HeightBlue, GrapWidth, HeightBlue, BLUE); + // tft.fillRect(5 * GrapWidth + 5, GraphHeight - HeightViolet, GrapWidth, HeightViolet, MAGENTA); + // tft.setCursor(1 * GrapWidth -10, 0); + // if (HeightRed > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("R:"); + // tft.setCursor(2 * GrapWidth -10, 0); + // if (HeightOrange > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("O:"); + // tft.setCursor(3 * GrapWidth -10, 0); + // if (HeightYellow > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("Y:"); + // tft.setCursor(4 * GrapWidth -10, 0); + // if (HeightGreen > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("G:"); + // tft.setCursor(5 * GrapWidth -10, 0); + // if (HeightBlue > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("B:"); + // tft.setCursor(6 * GrapWidth -10, 0); + // if (HeightViolet > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("V:"); - maxValue = 0.0; - } + // maxValue = 0.0; + // } - //show relative raw data graph - if (menu_number == 4 || menu_number == 8 ){ - maxValue = 0; - drawControls(); - ////tft.setRotation(0); + // //show relative raw data graph + // if (menu_number == 4 || menu_number == 8 ){ + // maxValue = 0; + // drawControls(); + // ////tft.setRotation(0); - for (int i = 0; i < 5; i++) { - maxValue = max(maxValue, ReadValues[i]); - } - for (int i = 0; i < 5; i++) { - minValue = min(minValue, ReadValues[i]); - } - HeightRed = int(((RawRed + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - HeightOrange = int(((RawOrange + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - HeightYellow = int(((RawYellow + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - HeightGreen = int(((RawGreen + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - HeightBlue = int(((RawBlue + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - HeightViolet = int(((RawViolet + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // for (int i = 0; i < 5; i++) { + // maxValue = max(maxValue, ReadValues[i]); + // } + // for (int i = 0; i < 5; i++) { + // minValue = min(minValue, ReadValues[i]); + // } + // HeightRed = int(((RawRed + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // HeightOrange = int(((RawOrange + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // HeightYellow = int(((RawYellow + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // HeightGreen = int(((RawGreen + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // HeightBlue = int(((RawBlue + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); + // HeightViolet = int(((RawViolet + abs(minValue)) / (maxValue + abs(minValue))) * GraphHeight); - tft.setCursor(1 * GrapWidth -10, 10); - if (HeightRed >25){ - tft.setTextColor(BLACK); - } + // tft.setCursor(1 * GrapWidth -10, 10); + // if (HeightRed >25){ + // tft.setTextColor(BLACK); + // } - tft.fillRect(0 * GrapWidth, GraphHeight - HeightRed, GrapWidth, HeightRed, RED); - tft.fillRect(1 * GrapWidth + 1, GraphHeight - HeightOrange, GrapWidth, HeightOrange, ORANGE); - tft.fillRect(2 * GrapWidth + 2, GraphHeight - HeightYellow, GrapWidth, HeightYellow, YELLOW); - tft.fillRect(3 * GrapWidth + 3, GraphHeight - HeightGreen, GrapWidth, HeightGreen, GREEN); - tft.fillRect(4 * GrapWidth + 4, GraphHeight - HeightBlue, GrapWidth, HeightBlue, BLUE); - tft.fillRect(5 * GrapWidth + 5, GraphHeight - HeightViolet, GrapWidth, HeightViolet, MAGENTA); - tft.setCursor(1 * GrapWidth -10, 0); - if (HeightRed > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("R"); - tft.setCursor(2 * GrapWidth -10, 0); - if (HeightOrange > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("O"); - tft.setCursor(3 * GrapWidth -10, 0); - if (HeightYellow > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("Y"); - tft.setCursor(4 * GrapWidth -10, 0); - if (HeightGreen > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("G"); - tft.setCursor(5 * GrapWidth -10, 0); - if (HeightBlue > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("B"); + // tft.fillRect(0 * GrapWidth, GraphHeight - HeightRed, GrapWidth, HeightRed, RED); + // tft.fillRect(1 * GrapWidth + 1, GraphHeight - HeightOrange, GrapWidth, HeightOrange, ORANGE); + // tft.fillRect(2 * GrapWidth + 2, GraphHeight - HeightYellow, GrapWidth, HeightYellow, YELLOW); + // tft.fillRect(3 * GrapWidth + 3, GraphHeight - HeightGreen, GrapWidth, HeightGreen, GREEN); + // tft.fillRect(4 * GrapWidth + 4, GraphHeight - HeightBlue, GrapWidth, HeightBlue, BLUE); + // tft.fillRect(5 * GrapWidth + 5, GraphHeight - HeightViolet, GrapWidth, HeightViolet, MAGENTA); + // tft.setCursor(1 * GrapWidth -10, 0); + // if (HeightRed > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("R"); + // tft.setCursor(2 * GrapWidth -10, 0); + // if (HeightOrange > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("O"); + // tft.setCursor(3 * GrapWidth -10, 0); + // if (HeightYellow > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("Y"); + // tft.setCursor(4 * GrapWidth -10, 0); + // if (HeightGreen > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("G"); + // tft.setCursor(5 * GrapWidth -10, 0); + // if (HeightBlue > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("B"); - tft.setCursor(6 * GrapWidth -10, 0); - if (HeightViolet > 28){ - tft.setTextColor(BLACK); - }else { - tft.setTextColor(WHITE); - } - tft.println("V"); + // tft.setCursor(6 * GrapWidth -10, 0); + // if (HeightViolet > 28){ + // tft.setTextColor(BLACK); + // }else { + // tft.setTextColor(WHITE); + // } + // tft.println("V"); - maxValue = 0.0; - } - delay(1000); + // maxValue = 0.0; + // } + delay(100); if (menu_number > 4 ) { LedPower = 1; @@ -453,25 +399,25 @@ void loop() { - //data haverest - RawRed = sensor.getRed(); - RawOrange = sensor.getOrange(); - RawYellow = sensor.getYellow(); - RawGreen = sensor.getGreen(); - RawBlue = sensor.getBlue(); - RawViolet = sensor.getViolet(); + // //data haverest + // RawRed = sensor.getRed(); + // RawOrange = sensor.getOrange(); + // RawYellow = sensor.getYellow(); + // RawGreen = sensor.getGreen(); + // RawBlue = sensor.getBlue(); + // RawViolet = sensor.getViolet(); - CalcRed = sensor.getCalibratedRed(); - CalcOrange = sensor.getCalibratedOrange(); - CalcYellow = sensor.getCalibratedYellow(); - CalcGreen = sensor.getCalibratedGreen(); - CalcBlue = sensor.getCalibratedBlue(); - CalcViolet = sensor.getCalibratedViolet(); + // CalcRed = sensor.getCalibratedRed(); + // CalcOrange = sensor.getCalibratedOrange(); + // CalcYellow = sensor.getCalibratedYellow(); + // CalcGreen = sensor.getCalibratedGreen(); + // CalcBlue = sensor.getCalibratedBlue(); + // CalcViolet = sensor.getCalibratedViolet(); - ReadValues[0] = CalcRed; - ReadValues[1] = CalcOrange; - ReadValues[2] = CalcYellow; - ReadValues[3] = CalcGreen; - ReadValues[4] = CalcBlue; - ReadValues[5] = CalcViolet; + // ReadValues[0] = CalcRed; + // ReadValues[1] = CalcOrange; + // ReadValues[2] = CalcYellow; + // ReadValues[3] = CalcGreen; + // ReadValues[4] = CalcBlue; + // ReadValues[5] = CalcViolet; } diff --git a/ESP32/RgbSpectralSensor/User_Setup.h b/ESP32/RgbSpectralSensor/User_Setup.h new file mode 100644 index 0000000..9799e7e --- /dev/null +++ b/ESP32/RgbSpectralSensor/User_Setup.h @@ -0,0 +1,22 @@ +#define ST7735_DRIVER // sterownik ekranu + +#define TFT_WIDTH 128 +#define TFT_HEIGHT 160 + +#define TFT_RGB_ORDER TFT_RGB // jeśli kolory są dziwne, zamień na TFT_BGR + +#define TFT_CS 5 +#define TFT_RST 4 +#define TFT_DC 2 + +#define TFT_MOSI 23 +#define TFT_SCLK 18 + +#define LOAD_GLCD // domyślna czcionka 1 +#define LOAD_FONT2 // mała czcionka +#define LOAD_FONT4 // średnia czcionka +#define LOAD_FONT6 // duża czcionka cyfrowa +#define LOAD_FONT7 +#define LOAD_FONT8 + +#define SPI_FREQUENCY 27000000 // bezpieczna prędkość \ No newline at end of file