Adafruit 2.8" TFT, ILI9341 VS. 1284p
Adafruit 2.8" TFT, ILI9341 VS. 1284p
Sziasztok!
Segítségre lenne szükségem.
Van egy ilyen https://learn.adafruit.com/adafruit-2-d ... 2/overview kijelzőm amit egy 1284p IC-s Arduino kompatibilis lappal szeretném üzemeltetni. A "maniacbug Mighty 1284P 16 Mhz using optiboot" boarddal kiválasztva az Arduino 1.6.8 verziót használva az alap programokat fel tudom tölteni. Arzomban a kijelzővel nem boldogulok! Fehér kijelzőnél tovább nem jutok. Korábban már használtam MEGA és DUE lapokat Mcufreind kijelzőkkel UTFT és TFTLCD könyvtárakkal. Tudnátok bármilyen segítséget nyújtani 1284p-hez példakönyvtár, bekötések stb.
Előre is köszönöm!
Segítségre lenne szükségem.
Van egy ilyen https://learn.adafruit.com/adafruit-2-d ... 2/overview kijelzőm amit egy 1284p IC-s Arduino kompatibilis lappal szeretném üzemeltetni. A "maniacbug Mighty 1284P 16 Mhz using optiboot" boarddal kiválasztva az Arduino 1.6.8 verziót használva az alap programokat fel tudom tölteni. Arzomban a kijelzővel nem boldogulok! Fehér kijelzőnél tovább nem jutok. Korábban már használtam MEGA és DUE lapokat Mcufreind kijelzőkkel UTFT és TFTLCD könyvtárakkal. Tudnátok bármilyen segítséget nyújtani 1284p-hez példakönyvtár, bekötések stb.
Előre is köszönöm!
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Arduino által _nem_ natívan támogatott rendszerek esetén a járulékos/külső eljáráskönyvtárak nem nagyon működnek - ha alacsonyszintű rutinokat kezelnek.
Ezek kibogozása, átírása nem 1-2 perces folyamat.
Nem lehet áttérni Mega2560 panelra? Sokkal gyorsabb lenne a fejlesztés....
Kérdés: Más (alap) UNO/Mega lapon _ez a kijelző_ feléledt már? Futottam belem hibás példányba, ami nem működött. Az 5V-3.3V illesztések igaz megvannak? A chip NEM 5V toleráns!
Ezek kibogozása, átírása nem 1-2 perces folyamat.
Nem lehet áttérni Mega2560 panelra? Sokkal gyorsabb lenne a fejlesztés....
Kérdés: Más (alap) UNO/Mega lapon _ez a kijelző_ feléledt már? Futottam belem hibás példányba, ami nem működött. Az 5V-3.3V illesztések igaz megvannak? A chip NEM 5V toleráns!
http://www.tavir.hu - a gazda
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Szerintem ott van minden szükséges ismertető.
8-Bit Library Install:
https://learn.adafruit.com/adafruit-2-d ... bit-wiring
8bites bekötés:
https://learn.adafruit.com/assets/15441
Resistive Touchscreen:
https://learn.adafruit.com/adafruit-2-d ... ouchscreen
8-Bit Library Install:
https://learn.adafruit.com/adafruit-2-d ... bit-wiring
8bites bekötés:
https://learn.adafruit.com/assets/15441
Resistive Touchscreen:
https://learn.adafruit.com/adafruit-2-d ... ouchscreen
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Illesztésnek, Ott van a hátulján a 2db. 74LVC245 párhuzamos Port.
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Sajnos már a fordításnál elakadok:
In file included from C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:19:0:
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\pin_magic.h:350:3: error: #error "Board type unsupported / not recognized"
#error "Board type unsupported / not recognized"
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::write8(uint8_t)':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:962:21: error: 'write8inline' was not declared in this scope
write8inline(value);
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'uint8_t Adafruit_TFTLCD::read8fn()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:969:21: error: 'read8inline' was not declared in this scope
read8inline(result);
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::setWriteDir()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:976:21: error: 'setWriteDirInline' was not declared in this scope
setWriteDirInline();
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::setReadDir()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:982:20: error: 'setReadDirInline' was not declared in this scope
setReadDirInline();
^
exit status 1
Error compiling for board "maniacbug" Mighty 1284p 16MHz using Optiboot.
In file included from C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:19:0:
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\pin_magic.h:350:3: error: #error "Board type unsupported / not recognized"
#error "Board type unsupported / not recognized"
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::write8(uint8_t)':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:962:21: error: 'write8inline' was not declared in this scope
write8inline(value);
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'uint8_t Adafruit_TFTLCD::read8fn()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:969:21: error: 'read8inline' was not declared in this scope
read8inline(result);
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::setWriteDir()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:976:21: error: 'setWriteDirInline' was not declared in this scope
setWriteDirInline();
^
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp: In member function 'void Adafruit_TFTLCD::setReadDir()':
C:\Program Files (x86)\Arduino\libraries\TFTLCD-Library\Adafruit_TFTLCD.cpp:982:20: error: 'setReadDirInline' was not declared in this scope
setReadDirInline();
^
exit status 1
Error compiling for board "maniacbug" Mighty 1284p 16MHz using Optiboot.
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Ott a válasz - amit írtam: Board not supported.
A cp és h állományba bújj bele, hogy a M1284P chip támogatott legyen (regiszterek, portok pontosítása, kiegészítése). Az összes rész, ahol #ifdef chinév szerepel, ott nincs benne a M1284P, hanem csak pl. Due, M2560, M1280....
Ennek bogarászása, beírása - gyakorlattól függően 2...4 óra.....
A cp és h állományba bújj bele, hogy a M1284P chip támogatott legyen (regiszterek, portok pontosítása, kiegészítése). Az összes rész, ahol #ifdef chinév szerepel, ott nincs benne a M1284P, hanem csak pl. Due, M2560, M1280....
Ennek bogarászása, beírása - gyakorlattól függően 2...4 óra.....
http://www.tavir.hu - a gazda
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Pár jó tanács!
Mivel új Boardot akarsz rendszerbe állítani, biztos, hogy bele kel nyúlni a meglevő libbe.
Ezért nem jó, ha a rendszer könyvtárba rakod, mert ott írásvédett lesz.
Inkább rakd át a helyére: c:\Users\Name\Documents\Arduino\libraries\TFTLCD-Library\
Nekem Mega1280 boardra lefordult a példaprogram. Pár jelentéktelen Warning-al. (Amiket persze illik kijavítani!)
Már csak annyi a dolgod, hogy Ahol a ilyesmi fordítási feltételek szerepelnek:
#elif defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Beszúrod plusz a te: || defined(__AVR_ATmega1284__) –esedet.
Azt nem tudom mi a különbség a felsorolt procik között? Ha valami nem jól müködik? Azt javítani kel.
Mivel új Boardot akarsz rendszerbe állítani, biztos, hogy bele kel nyúlni a meglevő libbe.
Ezért nem jó, ha a rendszer könyvtárba rakod, mert ott írásvédett lesz.
Inkább rakd át a helyére: c:\Users\Name\Documents\Arduino\libraries\TFTLCD-Library\
Nekem Mega1280 boardra lefordult a példaprogram. Pár jelentéktelen Warning-al. (Amiket persze illik kijavítani!)
Már csak annyi a dolgod, hogy Ahol a ilyesmi fordítási feltételek szerepelnek:
#elif defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Beszúrod plusz a te: || defined(__AVR_ATmega1284__) –esedet.
Azt nem tudom mi a különbség a felsorolt procik között? Ha valami nem jól müködik? Azt javítani kel.
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Az 1284p az valahol az atmega128 és az atmega256 közt van - csak DIP tokban.
A regiszterek elnevezései, a funkcinális lábak eltérőek az előző chipektől, Ezért nem csak a feltételrendszereket kell piszkálni...
A regiszterek elnevezései, a funkcinális lábak eltérőek az előző chipektől, Ezért nem csak a feltételrendszereket kell piszkálni...
http://www.tavir.hu - a gazda
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Igen!
Itt kezdődik a munka érdekesebb része!
Itt kezdődik a munka érdekesebb része!
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Kösz a segítséget!kapu48 írta:Pár jó tanács!
Mivel új Boardot akarsz rendszerbe állítani, biztos, hogy bele kel nyúlni a meglevő libbe.
Ezért nem jó, ha a rendszer könyvtárba rakod, mert ott írásvédett lesz.
Inkább rakd át a helyére: c:\Users\Name\Documents\Arduino\libraries\TFTLCD-Library\
Nekem Mega1280 boardra lefordult a példaprogram. Pár jelentéktelen Warning-al. (Amiket persze illik kijavítani!)
Már csak annyi a dolgod, hogy Ahol a ilyesmi fordítási feltételek szerepelnek:
#elif defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Beszúrod plusz a te: || defined(__AVR_ATmega1284__) –esedet.
Azt nem tudom mi a különbség a felsorolt procik között? Ha valami nem jól müködik? Azt javítani kel.
Átpakoltam a c:\Users\Name\Documents\Arduino\libraries\TFTLCD könyvtárat, beszúrtam a TFTLCD.cpp-be mindenhova a
|| defined(__AVR_ATmega1284__) -ot.
Most ez a fordítási hibaüzenet:
WARNING: Spurious .github folder in 'Adafruit ILI9340' library
C:\Users\Norbi\Documents\Arduino\libraries\TFTLCD\TFTLCD.cpp:915:5: error: #error "No pins defined!"
#error "No pins defined!" ^
C:\Users\Norbi\Documents\Arduino\libraries\TFTLCD\TFTLCD.cpp:943:5: error: #error "No pins defined!"
#error "No pins defined!" ^
C:\Users\Norbi\Documents\Arduino\libraries\TFTLCD\TFTLCD.cpp5: error: #error "No pins defined!"
#error "No pins defined!" ^
C:\Users\Norbi\Documents\Arduino\libraries\TFTLCD\TFTLCD.cpp5: error: #error "No pins defined!"
#error "No pins defined!" ^
exit status 1
Error compiling for board "maniacbug" Mighty 1284p 16MHz using Optiboot.
Hogyan tudom a PIn-eket definiálni?
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Kezdő létedre eléggé nehéz válalkozás!
Most jön az a rész, amit Robi említett. Hogy eltérő a tokozás, és ezzel összefüggően a lábak elnevezése.
Ezért feltételes fordítási direktívákat kel alkalmazni.
Most keresel adatlapot valamelyikhez (__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Nekem ez ismerős: ATmega1280.
És az új alkatrész adatlapja: ATmega1284
Jelzi, hogy melyik fájl, melyik sor, hányadik karakternél van a hiba:
...\libraries\TFTLCD\TFTLCD.cpp:915:5: error:
Ide kell a feltételes fordítás, így:
#if defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Itt legyenek az eredeti sorok
#elif defined(__AVR_ATmega1284__)
Ide kel a javítást szerkeszteni!
Vagy más a néven szerepel a pin, vagy nem is létezik?
#endif
Van a: pin_magic.h
Az egész #ifdef ... #else .... #endif, részletezést értelmezned kel
Ott láthatod hogyan van feltételes fordításba egyes Boardok pin kiosztása deklarálva:
Például: #ifdef USE_ADAFRUIT_SHIELD_PINOUT
...
#endif
Ezek alapján létrehozol egy Új Boardot az alkalmazott névvel:
Valahogy így csak csupa nagybetűvel???
#ifdef Mighty_1284p_16MHz_using_Optiboot
...
Majd láthatod anevek minden boardnál egy formák, Csak a hozzárendelt értékek mások.
Pl.:
#define RD_MASK B00000001
...
#define RD_MASK B10000000
Most jön az a rész, amit Robi említett. Hogy eltérő a tokozás, és ezzel összefüggően a lábak elnevezése.
Ezért feltételes fordítási direktívákat kel alkalmazni.
Most keresel adatlapot valamelyikhez (__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Nekem ez ismerős: ATmega1280.
És az új alkatrész adatlapja: ATmega1284
Jelzi, hogy melyik fájl, melyik sor, hányadik karakternél van a hiba:
...\libraries\TFTLCD\TFTLCD.cpp:915:5: error:
Ide kell a feltételes fordítás, így:
#if defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2561__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
Itt legyenek az eredeti sorok
#elif defined(__AVR_ATmega1284__)
Ide kel a javítást szerkeszteni!
Vagy más a néven szerepel a pin, vagy nem is létezik?
#endif
Van a: pin_magic.h
Az egész #ifdef ... #else .... #endif, részletezést értelmezned kel
Ott láthatod hogyan van feltételes fordításba egyes Boardok pin kiosztása deklarálva:
Például: #ifdef USE_ADAFRUIT_SHIELD_PINOUT
...
#endif
Ezek alapján létrehozol egy Új Boardot az alkalmazott névvel:
Valahogy így csak csupa nagybetűvel???
#ifdef Mighty_1284p_16MHz_using_Optiboot
...
Majd láthatod anevek minden boardnál egy formák, Csak a hozzárendelt értékek mások.
Pl.:
#define RD_MASK B00000001
...
#define RD_MASK B10000000
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Sziasztok,
köszönöm az eddigi segítségeket!
Találtam egy "Arduino UNO*Pro - Upgrade" boardot aminek a könyvtárát felhasználva sikerült SPI-n keresztül kommunikációra bírni a kártyámat a kijelzővel.
A serial monitoron ha nem érek a kijelzőhöz az alábbi érték olvasható:
X = 0 Y = 562 Pressure = 0
X = 6 Y = 1023 Pressure = 5
köszönöm az eddigi segítségeket!
Találtam egy "Arduino UNO*Pro - Upgrade" boardot aminek a könyvtárát felhasználva sikerült SPI-n keresztül kommunikációra bírni a kártyámat a kijelzővel.
A serial monitoron ha nem érek a kijelzőhöz az alábbi érték olvasható:
X = 0 Y = 562 Pressure = 0
X = 6 Y = 1023 Pressure = 5
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Sziasztok,
köszönöm az eddigi segítségeket!
Találtam egy "Arduino UNO*Pro - Upgrade" boardot aminek a könyvtárát felhasználva sikerült SPI-n keresztül kommunikációra bírni a 1284p kártyámat a kijelzővel. http://www.hobbytronics.co.uk/arduino-uno-pro
Sikeresen fut rajta a grahicstest program, rámegy a touchpaint is viszont nem érzékel a kijelző.
A serial monitoron ha nem érek a kijelzőhöz az alábbi értékek olvashatóak:
X = 0, Y = 562, Pressure = 0
amint bármely pontjára rábökök ez olvasható:
X = 6, Y = 1023, Pressure = 5
Megmértem az analóg csapokat olvasnak rendesen.
A bekötést az SPI csapos rajz alapján csináltam.
"Touchscreen Paint (SPI mode)
An additional 4 pins are required for the touchscreen.
For the two analog pins, we'll use A2 and A3.
For the other two connections, you can pin any two digital pins but we'll be using D9 (shared with D/C) and D8 since they are available.
We can save the one pin by sharing with D/Cbut you can't share any other SPI pins. So basically you can get away with using only three additional pins.
Wire the additional 4 pins as follows:
Y+ to Arduino A2
X+ to Arduino D9 (Same as D/C)
Y- to Arduino D8
X- to Arduino A3"
Íme a kódom:
Sajnos nincs több ötletem .
Kis segítség jól jönne, köszönöm!
köszönöm az eddigi segítségeket!
Találtam egy "Arduino UNO*Pro - Upgrade" boardot aminek a könyvtárát felhasználva sikerült SPI-n keresztül kommunikációra bírni a 1284p kártyámat a kijelzővel. http://www.hobbytronics.co.uk/arduino-uno-pro
Sikeresen fut rajta a grahicstest program, rámegy a touchpaint is viszont nem érzékel a kijelző.
A serial monitoron ha nem érek a kijelzőhöz az alábbi értékek olvashatóak:
X = 0, Y = 562, Pressure = 0
amint bármely pontjára rábökök ez olvasható:
X = 6, Y = 1023, Pressure = 5
Megmértem az analóg csapokat olvasnak rendesen.
A bekötést az SPI csapos rajz alapján csináltam.
"Touchscreen Paint (SPI mode)
An additional 4 pins are required for the touchscreen.
For the two analog pins, we'll use A2 and A3.
For the other two connections, you can pin any two digital pins but we'll be using D9 (shared with D/C) and D8 since they are available.
We can save the one pin by sharing with D/Cbut you can't share any other SPI pins. So basically you can get away with using only three additional pins.
Wire the additional 4 pins as follows:
Y+ to Arduino A2
X+ to Arduino D9 (Same as D/C)
Y- to Arduino D8
X- to Arduino A3"
Íme a kódom:
Kód: Egész kijelölése
#include <Adafruit_GFX.h> // Core graphics library
#include <SPI.h>
#include <Adafruit_ILI9341.h>
#include "TouchScreen.h"
// These are the four touchscreen analog pins
#define YP A2 // must be an analog pin, use "An" notation!
#define XM A3 // must be an analog pin, use "An" notation!
#define YM 8 // can be a digital pin 5
#define XP 9 // can be a digital pin 4
// This is calibration data for the raw touch data to the screen coordinates
#define TS_MINX 150
#define TS_MINY 130
#define TS_MAXX 3800
#define TS_MAXY 4000
#define MINPRESSURE 10
#define MAXPRESSURE 1000
// The display uses hardware SPI, plus #9 & #10
#define TFT_CS 10
#define TFT_DC 9
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it
// For the one we're using, its 300 ohms across the X plate
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300);
// Size of the color selection boxes and the paintbrush size
#define BOXSIZE 40
#define PENRADIUS 3
int oldcolor, currentcolor;
void setup(void) {
// while (!Serial); // used for leonardo debugging
Serial.begin(9600);
Serial.println(F("Touch Paint!"));
tft.begin();
tft.fillScreen(ILI9341_BLACK);
// make the color selection boxes
tft.fillRect(0, 0, BOXSIZE, BOXSIZE, ILI9341_RED);
tft.fillRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, ILI9341_YELLOW);
tft.fillRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, ILI9341_GREEN);
tft.fillRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, ILI9341_CYAN);
tft.fillRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, ILI9341_BLUE);
tft.fillRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, ILI9341_MAGENTA);
// select the current color 'red'
tft.drawRect(0, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
currentcolor = ILI9341_RED;
}
void loop()
{
// Retrieve a point
TSPoint p = ts.getPoint();
// pinMode(XP, OUTPUT);
// pinMode(XM, OUTPUT);
// pinMode(YP, OUTPUT);
// pinMode(YM, OUTPUT);
Serial.print("X = "); Serial.print(p.x);
Serial.print("\tY = "); Serial.print(p.y);
Serial.print("\tPressure = "); Serial.println(p.z);
// we have some minimum pressure we consider 'valid'
// pressure of 0 means no pressing!
if (p.z < MINPRESSURE || p.z > MAXPRESSURE) {
return;
}
// Scale from ~0->1000 to tft.width using the calibration #'s
//p.x = map(p.x, TS_MINX, TS_MAXX, 0, 240);//default is (240, 0) [default puts touch cord. 0=x/y upper right.
//p.y = map(p.y, TS_MINY, TS_MAXY, 0, 320);//default is (320, 0) [I change these cause i like 0=xy bottom left.
p.x = map(p.x, TS_MINX, TS_MAXX, 0, tft.width());
p.y = map(p.y, TS_MINY, TS_MAXY, 0, tft.height());
/*
Serial.print("("); Serial.print(p.x);
Serial.print(", "); Serial.print(p.y);
Serial.println(")");
*/
if (p.y < BOXSIZE) {
oldcolor = currentcolor;
if (p.x < BOXSIZE) {
currentcolor = ILI9341_RED;
tft.drawRect(0, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
} else if (p.x < BOXSIZE*2) {
currentcolor = ILI9341_YELLOW;
tft.drawRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
} else if (p.x < BOXSIZE*3) {
currentcolor = ILI9341_GREEN;
tft.drawRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
} else if (p.x < BOXSIZE*4) {
currentcolor = ILI9341_CYAN;
tft.drawRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
} else if (p.x < BOXSIZE*5) {
currentcolor = ILI9341_BLUE;
tft.drawRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
} else if (p.x < BOXSIZE*6) {
currentcolor = ILI9341_MAGENTA;
tft.drawRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, ILI9341_WHITE);
}
if (oldcolor != currentcolor) {
if (oldcolor == ILI9341_RED)
tft.fillRect(0, 0, BOXSIZE, BOXSIZE, ILI9341_RED);
if (oldcolor == ILI9341_YELLOW)
tft.fillRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, ILI9341_YELLOW);
if (oldcolor == ILI9341_GREEN)
tft.fillRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, ILI9341_GREEN);
if (oldcolor == ILI9341_CYAN)
tft.fillRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, ILI9341_CYAN);
if (oldcolor == ILI9341_BLUE)
tft.fillRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, ILI9341_BLUE);
if (oldcolor == ILI9341_MAGENTA)
tft.fillRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, ILI9341_MAGENTA);
}
}
if (((p.y-PENRADIUS) > BOXSIZE) && ((p.y+PENRADIUS) < tft.height())) {
tft.fillCircle(p.x, p.y, PENRADIUS, currentcolor);
}
}
Kis segítség jól jönne, köszönöm!
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Az önálló Touch-ot nézd meg - csak utána a grafikai rajzolós mintát.
A touchban a 2.4-es kijelzőből _4 féle_ bekötés van! És még a Digit és a Analog kivezetések is vándorolnak....
A bármely pontra ráböksz és azonos kijelzés olvasható : hibás a AD/Digit lábkijelölés...
A touchban a 2.4-es kijelzőből _4 féle_ bekötés van! És még a Digit és a Analog kivezetések is vándorolnak....
A bármely pontra ráböksz és azonos kijelzés olvasható : hibás a AD/Digit lábkijelölés...
http://www.tavir.hu - a gazda
Re: Adafruit 2.8" TFT, ILI9341 VS. 1284p
Köszönöm a választ!
Kicsit félrevezető volt a gyári infó, miszerint 2 analóg és 2 digitális lábra kell kötni a kijelző X,Y lábait.
Próbaképp az összes lábat analógra kötöttem és láss csodát működik az érintés...
#define YP A2
#define XM A3
#define YM A4
#define XP A5
Köszi még egyszer!
Kicsit félrevezető volt a gyári infó, miszerint 2 analóg és 2 digitális lábra kell kötni a kijelző X,Y lábait.
Próbaképp az összes lábat analógra kötöttem és láss csodát működik az érintés...
#define YP A2
#define XM A3
#define YM A4
#define XP A5
Köszi még egyszer!