Kategorie
Moduły elektroniczne
Potencjometry, przełączniki
Diody LED
Oporniki - Rezystory
Przewody, kable, zworki
Płytki stykowe
Diody
Zestawy specjalne, dedykowane
Zestawy startowe
Obudowy i osłony
Producenci
Aktualności / Blog
TUTORIAL GPS
LCD 2.4 cala (Ekran dotykowy) - TUTORIAL - Polska Inst
793111198
sklep@electropia.pl
LCD 2.4 cala (Ekran dotykowy) - TUTORIAL - Polska I
Wpadł mi taki wyświetlacz LCD do Arduino:
Aktualności
Instrukcje i Tutoriale
Kontakt
Tutorial: Moduł Rozpoznawania Mowy v3.0
LCD 2.4 cala (Ekran dotykowy) - TUTORIAL -
Polska Instrukcja
Tyle z opisu:
Technologia
LCD z podświetleniem
Dotykowy
Tak – TFT rezystancyjny (4 po
Rozmiar
2.4″
Kolory
18-bit; 262k
Kontroler
spfd5408
Uruchomienie go zajęło mi trochę czasu. Mam na
Ślepa uliczka?
(Poniższe instrukcje mogą się Wam przydać, je
Nadruk na płytce (‚http://www.mcufriend.com’) p
ślaczkami – na szczęście słowa kluczowe były po
że wyświetlacz ma jednak sterownik „st7781″. Ni
Po krótkim śledztwie trafiłem
wyświetlaczy, po jakiś 80MB. Dokładniej są to ins
przykładai. Dalej:
Katalog w archiwum:
.\libraries\TFTLCD-
przekopiowałem do biblitek na mojej instalce A
\libraries\TFTLCD\
1.
Używam Arduino IDE 1.6.1; ponieważ się nie k
W pliku
TFTLCD.h
zmieniłem:
virtual void write(uint8_t);
na
virtual size_t write(uint8_t);
W pliku:
TFTLCD.cpp
void TFTLCD::write(uint8_t c) {
na:
size_t TFTLCD::write(uint8_t c) {
//...
return 0;
W pliku:
glcdfont.h
static unsigned char font[] PROGME
na
const unsigned char font[] PROGMEM
Po uruchomieniu przykładu z
identyfikuje się jako … 0x154. Pokazuje to ten
uint16_t identifier = tft.readRegist
Inne kody:
2.
0x9325
0x9328
0x7575
0x9341
0x8357
0x0154
Lepsza droga
Znając identyfikator czipu sterującego, okazało
instrukcją na forum Arduino
Najpierw dodajcie kilka bibliotek do Arduino
https://github.com/samuraijap/TFTLCD-
https://github.com/adafruit/Adafruit-GF
https://github.com/adafruit/Touch-Scre
1.
Biblioteki te umieszczone są w repozytoriach g
Internet Explorera):
Otworzyć podane linki
Z prawej strony znajdziecie klawisz ‚Downlo
Kliknijcie ‚Otwórz’ (nie: ‚Zapisz’); otwarte ar
katalog
TFTLCD-Library-master
Przekopiujcie cały rozpakowany katalog do
[CTRL]+[C] na katalogu (skopiowanie do
Przejdźcie do:
C:\Program Files (x8
Wklejcie katalog [CTRL]+[V]
Możecie do tego potrzebować praw adminis
Nowe biblioteki pojawią się w Arduino IDE p
Pierwszy kod
Najlepiej po prostu uruchomić wszystkie załąc
powinna nastręczyć Wam żadnych trudności. D
zostały już odpowiednio zmodyfikowane do pin
#define LCD_CS A3
#define LCD_CD A2
#define LCD_WR A1
#define LCD_RD A0
#define LCD_RESET A4
Inicjacja wyświetlacza jest wtedy prosta:
Tworzymy instancję obiektu wyświetlacza:
Adafruit_TFTLCD tft(LCD_CS, LCD_CD
W funkcji
setup()
:
void setup(){
//...
tft.reset();
tft.begin(0x154);
//..
}
Kilka przydatnych poleceń poniżej:
tft.setRotation(i);
tft.fillScreen(z);
z =
tft.color565(r,g,b)
tft.fillRect(x, y, xl, yl,
z);
tft.drawPixel(x,y,c);
tft.setTextSize(4);
tft.setCursor(x,y);
tft.println(„a”);
Dla przykładu, żeby wyświetlić napis „arek”
Ustaw wielkość czcionki:
Ustaw kursor w pozycji 0,20:
Wyświetl napis:
tft.println("arek")
Naprawienie Adafruit_TFTLCD::pus
Funkcja
Adafruit_TFTLCD::pushColors
przeniesienia znaku końca bloku jak pokaza
bloku kodu przed instrukcją
funkcja pushColors (przykład
Dzięki tej poprawce, możecie znacznie szyb
zamiast tft.drawPixel.
Dotykowo
Wyświetlacz dzieli niektóre piny w maską do
do zczytania pozycji dotyku:
TSPoint p = ts.getPoint();
musicie z powrotem ustawić kierunek pinów
pinMode(XP, OUTPUT);
pinMode(XM, OUTPUT);
pinMode(YP, OUTPUT);
pinMode(YM, OUTPUT);
Kolejnym problemem okazała się samo wyw
Cokolwiek bym nie zmieniał, dotyk na ekran
niektórych obszarach ekranu. Pewne były p
Sytuacja poprawiła się dopiero, gdy zamie
‚readTouch’ i ‚readPressure’
void loop(){
//..
//Zle
//TSPoint p = ts.getPoint();
//Dobre
int x = ts.readTouchX();
int y = ts.readTouchY();
int z = ts.pressure();
pinMode(XP, OUTPUT);
pinMode(XM, OUTPUT);
pinMode(YP, OUTPUT);
pinMode(YM, OUTPUT);
if( z> 0 && z<1000){
//...
}//endif
//...
}//endloop
Zmienna 'z' przechowuje siłę nacisku (filtru
przyciśnięcia. W ten sposób dostaniecie wie
wstawić mały
delay(50)
wyrafinowane rozwiązania)
Karta SD
Kolejnym fajnym bonusem jest gniazdo kart
trzymać np. obrazki na tło ekranu. Podobnie
Arduino za pomocą SPI. Jedyne co musicie
CS) – tutaj 10.
#define SD_CS 10
Dodajcie bibliotekę SD: ‚Szkic/Importuj bibl
void setup(){
//...
if (!SD.begin(SD_CS)) {
Serial.println("SD card failed!");
return;
}
Serial.println("SD card ok!");
//...
}
Wiele przykładów użycia (np. wczytanie bmp
‚Adafruit_TFTLCD/examples/tftbmp’. Pełną
tutaj. Ja testowałem z 1GB karta i było ok.
Podsumowanie
Keypad na Arduino z wyświetlaczem LCD TFT 2.4 c
Bardzo fajna zabawka:) Oczywiście demon p
żeby wszystko uruchomić, ale generalnie m
Moduł lcd tft 2.4 możecie kupić w sklepie el
Źródła
http://misc.ws/2013/11/08/touch-scre
http://forum.arduino.cc/index.php?topic
http://forum.arduino.cc/index.php?topic
http://forum.arduino.cc/index.php?topic
https://github.com/samuraijap/TFTLCD-
Wpisz swój adres e-mail, jeśli chcesz otrzymywać najnowsze
informacje o promocjach.
tel.: 793 111 198
e-mail: sklep@electropia.pl
05-270, Marki, Klucznikowska 19
Kontakt
Regulamin
Polityka prywatności
Informacje
Oprogramowanie sklepu internetowego
Autorem artykułu jest Arkadiusz Merta
Blog Arkadiusza - autora tego tutorialu.