arduino-uno-lcd/lcd-tft-new.ino

58 lines
1.5 KiB
C++

#include <Adafruit_GFX.h> //elsodleges grafika lib
#include <MCUFRIEND_kbv.h> // tft control lib
#include <SPI.h> // SPI lib vagy tudja a geci
// definialunk egy TFT LCD-t
MCUFRIEND_kbv tft;
void setup() {
/*
Debug lehetoseg:
Serial.begin(9600);
delay(1000); //<- kis pihi hogy tenyleg csatlakozzon a serial debug
*/
uint16_t id = tft.readID();
if (id == 0xD3D3) {
// Bugos ez a szar szoval ha D3D3 az id akkor a legbasicabbet kellesz forceolni (ezert se fizetnek egy fillert se)
id = 0x9325;
}
Serial.print("Detected display ID: 0x"); //a tenylegesen detectelt display id (ha 9325 akkor vagy baj van vagy kurva filleres az LCD)
Serial.println(id, HEX);
// LCD init
tft.begin(id);
// elforgatas 1-4 ig
// 1 vagy 3 portre mod ami fancy
tft.setRotation(1);
// feka hatter
tft.fillScreen(0x000000);
// teszt gecisegek
tft.setTextColor(0xFFFF);
tft.setTextSize(3);
tft.setCursor(20, 20); // X20.0 Y20.0 kurzor
tft.println("balu meleg");
//teglalap rajzolas ala mert balu TENYLEG meleg
tft.drawRect(50, 80, 200, 100, 0xF800); // piros lett mint a gecim tegnap este amikor vertem
// kék kör mert a jó meth is kék
tft.fillCircle(300, 200, 50, 0x001F);
}
//elfogytak a viccek szóval nem commentelek többet
void loop() {
static uint16_t x = 0;
tft.drawPixel(x, 310, 0x07E0); // zöld pixel csúszkál jobbra-balra a legalsó(szélső) pixelen
x++;
if (x >= 480) {
x = 0;
}
delay(10);
}