2.8" TFT LCD érintőkijelző programozás - 2. rész

 

7. Projekt -- 2.8’ LCD kijelző modul programozás- Körök, vonalak --V1.1 --2.rész

by Roboworld Hobbielektronika

Rövid leírás:

Ebben a rövid projektben bemutatjuk neked, hogyan kell Arduino-val egy 2.8’-os kijelzőn megjeleníteni, köröket, vonalakat, háromszögeket, négyzeteket, saját logokat.. A kijelző egy úgynevezett Shield-re van ráhelyezve, amelyet elég egyszerűen lehet csatlakoztatni a mikrokontrollerhez. Lásd 6. Projekt..

Hardware
-2.8’-os TFT LCD Shield érintő kijelző modul
-Arduino Uno

Kijelzőről
A kijelző egy 2.8 inch-es LCD TFT modul, amelyet egyszerűen rá kell pattintani az Arduino UNO-ra vagy Arduino MEGA-ra és betölteni a hozzá tartozó library-t.

Paramétereit tekintve:
· 240x320 pixel
· 4 vezetékes rezisztív érintőképernyő
· Fehér háttérvilágítás
· Színes (18-bit)
· 3.3V vagy 5V feszültséggel táplálható
· Támogatja 2GB-ig a microSD kártyát
· Méter: 7,8 x 5,3 cm

Amennyiben még nem adtad volna hozzá az előző projekt által a LCD TFT modul libraryket akkor azt az alábbi linken most megteheted.

Lépések:
1. Töltsd le TFT LCD kijelző library-ket a fenti link segítségével
2. Másold a könyvtárakat a computered dokumentumai közé.(Felhasználó/PC-neve/Dokumentumok/Arduino/libraries)
3. Kész, hozzáadás sikeres

Grafikus alapelemek

1.Egy pixel beszínezése
A drawPixel parancs beszínez egy pixelt az általad megadott koordinátában az általad meghatározott színűre.
Mintakód:
tft.drawPixel(100,50,WHITE); //tft.drawPixel(X koordináta,Y koordináta,Szín);
2. Vonal rajzolása
A drawLine parancsal egy vonalat tudsz megrajzolni, méghozzá úgy, hogy megadod a vonal kezdetének az X0,Y0 koordinátáját, majd a vonal végének X1,Y1 koordinátáját. Ezek után kiválaszthatod, hogy milyen színű legyen a vonal.

Mintakód:
tft.drawLine(5,10,19,3,WHITE); //tft.drawLine(X0 koordináta,Y0 koordináta,X1 Koordináta,Y1 Koordináta,Szín); 
3. Négyszög rajzolása

A tft.dawRect paranccsal egy négyszöget lehet rajzolni úgy, hogy megkell adni a négyszögnek a kezdeti X0, Y0 koordinátáit, majd először a négyszög szélességét majd vesszővel elválasztva a magasságát. Utolsó tényezőként pedig megadhatjuk a vonal színét.

A tft.fillRect paranccsal egy négyszöget lehet kiszínezni hasonló módon mint a drawRect paranccsal. Megkell adni a négyszögnek a kezdeti X0, Y0 koordinátáit, majd először a négyszög szélességét majd vesszővel elválasztva a magasságát. Utolsó tényezőként a kitöltés színét kell megadnunk.
Mintakód:
tft.drawRect(150,90,80,70,WHITE); // tft.drawRect(X0,Y0,Szélesség,Magasság,Szín); 
tft.fillRect(150,90,80,70, WHITE); // tft.fillRect(X0,Y0,Szélesség,Magasság,Szín); 
tft.drawRect(150,90,80,70,WHITE); tft.fillRect(150,90,80,70, WHITE); 
4. Körök
A tft.drawCircle paranccsal kört tudunk rajzolni úgy, hogy megadjuk a kör középpontjának az X0,Y0 koordinátáját, megadjuk a kör sugarát (radius) és a vonal színét.
A tft.fillCircle paranccsal pedig egy kört tudunk kiszínezni úgy, hogy megadjuk a kör középpontjának az X0,Y0 koordinátáját, megadjuk a kör sugarát (radius) és a kitöltés színét.

Mintakód:
tft.drawCircle(60,60,10, RED); // tft.drawCircle(X0,Y0,10, SZÍN); 
tft.fillCircle(60,60,10, RED); // tft.fillCircle(X0,Y0,10, SZÍN); 

5. Lekerekített négyszögek
A tft.drawRoundRect paranccsal lekerekített négyszögeket tudunk létrehozni úgy,hogy megkell adni először a X0,Y0 koordinátákat, szélességet, magasságot, és a lekerekítés sugarát és nem utolsó sorban a színt.

A tft.fillRoundRect pedig a lekerekített négyszögeket tudjuk kiszínezni hasonló módon. Megkell adni először a X0,Y0 koordinátákat, szélességet, magasságot, és a lekerekítés sugarát és nem utolsó sorban a kitöltési színt


Mintakód:
tft.drawRoundRect(70,80,70,50,25,BLUE);//tft.drawCircle(X0,Y0,Szélesség,Magasság,Radius, SZÍN); 
tft.fillRoundRect(70,80,70,50,25,BLUE);//tft.fillRoundRect (X0,Y0,Szélesség,Magasság,Radius, SZÍN); 

6. Háromszög
A tft.drawTriangle paranccsal háromszöget tudunk rajzolni úgy, hogy megkell adnunk a háromszög X, Y koordinátáit és a vonal színt is.

A tft.fillTriangle paranccsal pedig a háromszöget tudunk kiszínezni ugyancsak megadva a X,Y koordinátákat és a kitöltés színét.


Mintakód:
tft.drawTriangle(70,180,55,220,85,220,YELLOW); //tft.drawTriangle(X0, Y0, X1, Y1, X2, Y2, Szín) 
tft.fillTriangle(70,180,55,220,85,220,YELLOW); //tft.fillTriangle(X0, Y0, X1, Y1, X2, Y2, Szín) 

7. Karakterek
Karaktereket a következő mintakód alapján tudsz kiíratni. Nem kell mást tenni mint a kurzort a megfelelő sorba navigálni (X,Y koordinátát megadva), kiválasztani a színt a betűméretet és a tetszőleges szöveget. Fontos még megjegyezni, hogy az 1-es betűméret egy 5x8 pixel nagyságú helyet foglal, míg a 2-es 10x16-os. A 2-es betűméret alapértelmezett betűméretnek tekinthető.


Mintakód:
tft.setCursor(160,200); // Kurzor az X=160, Y=200-as pontba helyezése. 
tft.setTextColor(BLUE); // Kék betűszín kiválasztása 
tft.setTextSize(2); //Betűméret kiválasztása 
tft.print("Roboworld.hu"); // Kiírja, hogy Roboworld.hu 

8. Képernyő törlés
A tft.fillScreen() funkció az egész képernyőt beszínezi olyan színűre amilyenre szeretnéd törölve az előtte létező tartalmat.

Mintakód:
tft.fillScreen(BLACK); // Kijelző törlése 
Letöltés
A projekthez tartozó linkek alább találhatóak.
A leírás PDF-ben : Itt található

Teljes mintakódot letudod tölteni innen.





Megjegyzések