Arduino a 2.4" LCD TFT Shield (aitendo UL024TF)
05.04.2015 23:06Translate to English
Dnes jsem dostal k otestování od ptshop.cz LCD Shield pro Arduino s označením "aitendo UL024TF". Jedná se o 2.4" velký TFT displej s dotykovým panelem a integrovaným slotem pro microSD. Je osazen řadičem ILI9325
Pokusíme se tedy displej oživit. Pro spávnou funkci a základní zobrazení bude zapotřebí stáhnout knihovnu Adafruit_TFTLCD a Adafruit_GFX. Mohli by jsme hned použít o otesotání příklad z knihovny Adafruit_TFTLCD - "graphicstest", ale byli by jste zklamani. Příklad využívá příkaz pro identifikaci čipu, který mi ovšem musíme nastavit manuálně. Tak si tedy do Arduina nahrajte prošku upravený příklad pro grafický test:
Pokud vidíte vykreslování něčeho na displeji, tak máte vyhráno. K test si ještě můžete zapnout SerialMonitor, který Vám vypíše nějaký text, velikost displeje v pixelech a hlášku, že nenašel ID čipu, který displej řídí a proto jsme ho museli zadat ručně.
Aby jsme si s displejem trošku vyhráli, nejdříve ukáži minimum kódu, aby jste displej zprovoznili:
Jak vidíte tak diplej v programu pouze vyplní obrazovku modrou barvou. Já tedy i napíšu ostatní příkazy, které jsou obsaženy v knihovně Adafuit_GFX a Adafruit_TFTLCD:
- drawPixel(int16_t x, int16_t y, uint16_t color);
- drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, uint16_t color);
- drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color);
- drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color);
- drawRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
- fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
- fillScreen(uint16_t color);
- invertDisplay(boolean i);
- drawCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color);
- drawCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, uint16_t color);
- fillCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color);
- fillCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, int16_t delta, uint16_t color);
- drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint16_t color);
- fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint16_t color);
- drawRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, int16_t radius, uint16_t color);
- fillRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, int16_t radius, uint16_t color);
- drawBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);
- drawBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color, uint16_t bg);
- drawXBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);
- drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, uint16_t bg, uint8_t size);
- setCursor(int16_t x, int16_t y);
- print(string s);
- println(string s);
- setTextColor(uint16_t c);
- setTextColor(uint16_t c, uint16_t bg);
- setTextSize(uint8_t s);
- setTextWrap(boolean w);
- setRotation(uint8_t r);
———
ZpětNebyly nalezeny žádné příspěvky.