2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

Hogyha sikeresen O/PLED illetve hagyományos alfanumerikus - esetleg tán grafikus kijelzővel gyűlik meg a baja valakinek:)
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3232
Csatlakozott: 2008. augusztus 29. péntek, 6:00
Tartózkodási hely: Újkígyós

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: kapu48 » 2016. december 10. szombat, 22:07

Nekem ez volt a kiindulás:
https://github.com/adafruit/Touch-Screen-Library

A touchscreendemoshield mapába bemásolod a TouchScreen.cpp és TouchScreen.h fájlokat,
betöltöd az arduinoba: touchscreendemoshield.ino -t lefordítod feltöltöd!

Csak a bekötéseket kel jól eltalálni!

Kód: Egész kijelölése

// These are the pins for the shield!
#define YP A1  // must be an analog pin, use "An" notation!
#define XM A2  // must be an analog pin, use "An" notation!
#define YM 7   // can be a digital pin
#define XP 6   // can be a digital pin

DjVu
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2017. szeptember 15. péntek, 19:57

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: DjVu » 2018. november 7. szerda, 9:40

Sziasztok!

A következő problémám akadt a szóban forgó kijelzővel:

Rá drótoztam egy NANO lapkára.
Az elmélet az volt hogy, a NANO-nak több analóg lába van mint az UNO-nak.
Amit ki is szeretnék használni.
Ráadásul szükségem van a TWI portra. Ezért a kijelző LCD_RST pontját a NANO, RESET pontjára kötöttem.
(a minta programokban szereplő megjegyzés szerint ez lehetséges)

Látszólag minden rendben volt. A kijelző tökéletesen működött.
Ekkor kipróbáltam a TWI port működését. Kísérletképen rákötöttem, a kezem ügyében lévő RTC modult.
És megírtam a szükséges programot.

Ekkor jött a meglepetés!
A program működik, a TWI működik, az óra szépen ketyeg a kijelzőn.
DE.
Azt látom hogy, amikor a változók frissülnek a kijelzőn (másodperc, perc) az újonnan kiírt szám, ráíródik az előzőleg már kiírt számra.
Így gyakorlatilag, hat másodperc elteltével (illetve hat perc) teljesen fedésbe kerülnek. És egy ronda nagy fekete négyzetet látok az értékek helyén.

A probléma makacsul kitart!
Már sok munkaórám ráment.
Sok mindent kipróbáltam. Többek között azt hogy, LCD_RST-t átkötöttem az A6-ra. És persze átírtam a programban.
De ekkor a kijelző, statikus szürke lett, és nem csinál semmit.

Van valakinek ötlete?

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9912
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: Robert » 2018. november 7. szerda, 15:44

A kiíráskor a pixelek kigyújtása történik meg, a kioltása nem.
Tipp: mi van ha a kiírás előtt 2 db space-t írsz a számérték helyére?
http://www.tavir.hu - a gazda :)

DjVu
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2017. szeptember 15. péntek, 19:57

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: DjVu » 2018. november 7. szerda, 21:29

Sajnos, nekem is ez volt az első próbálkozásom. (ha gond van a hardverrel, old meg szoftverrel :-))
De nem működik.
Többek között ezért is írtam be a fórumba.

Az első próbálkozásom az volt hogy,
a kurzort beállítom a megfelelő helyre. és beírok pár space-t.
majd a következő sorban, visszaállítom a kurzort, és jöhet a változó.
De nem változott semmi.
Még arra is gondoltam hogy, a szóközök rövidebbek mint a "jelentős" karakterek. Ezért megnöveltem a szóközök számát.
Hasztalan.
A következő gondolat, a frissítési idő volt. Ezért beiktattam egy késleltetést, a szóközök és a változók közé.
Ekkor csak annyi változott hogy, villogni kezdett a kép.

Továbbá, próbáltam a tft.begin-t elhelyezni a void loop-ban.
Hasztalan.
A tft.reset-et vissza dobja a fordítás. (próbáltam többféle írásmóddal)
egyedül a tft.fillScreen(xxxxx); működik. De az eredmény sajnos, ismételten egy villogó képernyő.

Teljesen ötlettelen vagyok.

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9912
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: Robert » 2018. november 8. csütörtök, 4:47

Itt - minthogy megy a kijelző - NEM hardware hiba van.
Szoftver oldalról szükséges, hogy a _felülírás_ működjön.
Melyik library-t használod?

Olyan kellene neked, hogy overwrite enable vagy XOR disable vagy hasonló....
http://www.tavir.hu - a gazda :)

DjVu
Újonc
Újonc
Hozzászólások: 4
Csatlakozott: 2017. szeptember 15. péntek, 19:57

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: DjVu » 2018. november 8. csütörtök, 20:20

A "hardveres gondot" úgy értettem hogy, ha nem teljesen vagyok tisztában a működésével. És felüti a fejét egy probléma, akkor nagy eséllyel szoftveresen ki tudom cselezni. Hát ez most nem jött össze.

Szóval.
Az előző választ olvasva felkiáltottam: Ez nem lehet ilyen egyszerű!!!
Amint tudtam beleástam magam.
Átnyálaztam a libraryt (innen a webshopból letöltött csomagból, az ST7735 Adafruit_GFX és Adafruit_TFTLCD)
de még hasonlót sem találtam.

Az egyetlen dolog ami reményt keltő volt, és még működik is, az a drawPixel volt.
De pixelenként tisztítani a képernyő területet elég luxus.

Előfordulhat hogy, nem a megfelelő library-t használom, és eddig nem vettem észre?

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9912
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: 2.4" TFT LCD (320*240)/SD - Arduino shield: HELP!

HozzászólásSzerző: Robert » 2018. november 19. hétfő, 20:39

A legegyszerűbb megoldás:
Elő és háttérszínt cseréld fel. Úgy írj ki egy SPACE-t.
tft.setTextColor(WHITE, BLACK)
https://forum.arduino.cc/index.php?topic=364055.0
http://www.tavir.hu - a gazda :)


Vissza: “LCD kezelése”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég