Tutorial Shield TFT LCD 2.4 Inch untuk Arduino UNO: Pengaturan dan Penggunaan

Pendahuluan
Banyak tutorial yang membahas penggunaan shield Arduino untuk layar TFT LCD 2,4 inci. Dalam uji coba kali ini, saya akan mencoba beberapa tutorial untuk melihat bagaimana kinerja dan masalah yang muncul dari shield ini: AZ-Delivery 2,4 inci TFT LCD dengan layar sentuh resistif 4-kawat dan pembaca kartu SD yang sudah terintegrasi.
Apa itu Layar TFT LCD?

TFT LCD adalah jenis layar kristal cair (LCD) yang menggunakan teknologi transistor film tipis (TFT). Teknologi ini membuat gambar lebih jelas dengan kontras yang lebih baik.
Apakah LCD Ini Cocok untuk Arduino UNO?
Tergantung pada kebutuhan proyek kamu. Prosesor Arduino UNO cukup sederhana, jadi TFT LCD berwarna cocok untuk menampilkan data atau perintah yang simpel. Layar ini tidak bisa menggunakan teknik animasi canggih, karena kontrolernya tidak bisa mengubah memori layar secara langsung. Namun, kamu tetap bisa menggambar ulang sebagian kecil tampilan.
Karena kemampuan Arduino UNO terbatas, semakin besar layar, semakin berat juga kerjanya. Ukuran layar ini sudah cukup pas karena menyeimbangkan antara jumlah piksel, luas layar, dan kemampuan Arduino UNO.

Modul ini menggunakan sebagian besar sumber daya Arduino UNO, tapi itu bukan masalah dari modulnya. Dengan menggunakan antarmuka paralel, gambar bisa diubah dengan cepat. Kalau kamu ingin menggunakan semua fitur layar ini (LCD, layar sentuh, dan kartu SD), hanya pin 0, 1 (untuk RX dan TX) dan pin 19 (A5) yang tidak digunakan. Kalau kamu tidak pakai kartu SD, pin 10, 11, 12, dan 13 akan tersedia. Dengan pengaturan yang tepat, beberapa perangkat SPI masih bisa dihubungkan meskipun kartu SD digunakan.
Ini adalah pilihan yang bagus jika kamu baru belajar dan ingin mencoba layar TFT LCD dengan Arduino UNO dengan harga yang terjangkau. Beberapa pilihan alternatif layar untuk Arduino antara lain LCD 16×2, NOKIA 5510, OLED DISPLAY, ST7920 GLCD, dan SEVEN SEGMENT DISPLAY.
Menyambungkan Shield ke Arduino
Shield ini bisa langsung dipasang ke Arduino UNO tanpa masalah. Arduino UNO yang digunakan di sini memiliki semua pin yang terlihat di header (bagian konektor) dan di papan Arduino itu sendiri. Jadi, meskipun shield ini dipasang, pin yang tidak digunakan oleh layar masih tetap bisa diakses. Artinya, Anda tidak perlu menggunakan shield tambahan untuk bisa mengakses pin-pin lainnya.
Apa yang Bisa Dilakukan oleh Shield Ini?
Shield
- Kompatibel dengan Arduino: Shield ini kompatibel dengan Arduino dan dapat digunakan dengan logika 3.3V atau 5V. Dilengkapi dengan pengatur tegangan 3.3V (300mA LDO controller). Desainnya sangat baik dan pas dengan Arduino UNO.
- 2x74LVC245A Octal Bus Transceiver dengan Output 3-State: Transceiver ini dirancang untuk komunikasi asinkron antar bus data. Chip ini dapat mentransmisikan data dari bus A ke bus B atau sebaliknya, tergantung pada level logika di input kontrol arah (DIR). Input output-enable (OE) memungkinkan menonaktifkan perangkat dan mengisolasi bus. Chip ini bisa digunakan sebagai penerjemah antara perangkat logika 3.3V dan 5V, sehingga memecahkan masalah kompatibilitas antara perangkat 3.3V dan chip logika 5V seperti Arduino. Chip ini mendukung koneksi untuk SPI, Serial, Parallel bus, dan antarmuka logika lainnya, tetapi tidak mendukung perangkat berbasis I2C atau 1-Wire.
- Pin yang Digunakan: Modul TFT menggunakan pin digital 5-13 dan pin analog 0-3 dari Arduino UNO, tergantung apakah layar sentuh dan/atau kartu SD digunakan atau tidak.
> Untuk memanfaatkan semua fungsinya (LCD + layar sentuh + kartu SD), hanya pin 0 dan 1 (RX dan TX) serta pin 19 (A5) yang tidak digunakan.
> Jika kartu SD tidak digunakan, pin 10, 11, 12, dan 13 tersedia untuk penggunaan lainnya.
> Dengan tata letak yang tepat, beberapa perangkat SPI bisa dihubungkan meskipun kartu SD digunakan.
Layar:
Layar LCD TFT Diagonal: Resolusi 240×320 piksel, dengan 262.000 warna yang berbeda. Ukuran: 71x52x7mm, 2,4 inci.
Backlight Layar:
Penerangan Layar: Dilengkapi dengan 4 LED putih sebagai backlight, yang bisa dengan mudah dimodifikasi dan diredupkan menggunakan sinyal PWM.
Pengontrol Layar
Driver Chip Layar: Menggunakan chip pengendali ILI9341 dengan buffer video GRAM terintegrasi. Mode operasi: mode paralel 8-bit. Chip ILI9341 mengendalikan setiap piksel dengan menggunakan sedikit pin. Shield ini menghubungkan pin data ILI9341 0-7 ke pin digital Arduino 2-8 (komunikasi paralel, bukan SPI). Pin RESET ILI9341 dihubungkan ke pin A4 (analog Arduino), CS ke A3, RS (CD command/data) ke A2, dan WR serta RD ke A1 dan A0.
Pembaca Kartu SD:
Pembaca Kartu SD Terintegrasi: Fitur kartu SD memungkinkan penyimpanan data grafis dalam jumlah besar.
Tombol Reset
Tombol Reset: Tombol kecil berlabel K1 memungkinkan untuk mereset baik Arduino maupun modul shield ini.
Layar Sentuh
Layar Sentuh Resitif 4-Kawat: Layar sentuh resistif yang terpasang di permukaan layar membutuhkan dua input analog dan dua output digital. Layar sentuh ini terhubung melalui 4 kabel yang berbagi pin Arduino 8, 9, A2, A3 dengan driver ILI9341. Karena itu, Anda tidak dapat menulis ke tampilan LCD dan membaca layar sentuh pada saat yang bersamaan. Chip driver untuk layar sentuh ini adalah XPT2046.
Library Apa yang Harus Digunakan?
Untungnya, shield ini sudah teridentifikasi dengan jelas di dalam kantong plastik antistatik.
Driver: ILI9341
Bus: 8 bit
Library yang Disarankan:
- mcufriend_kbv
- Adafruit_GFX
Kedua library ini cocok untuk digunakan dengan shield ini dan akan memudahkan Anda dalam pengendalian layar TFT dengan Arduino.
Install Library
Install library mcufriend_kbv

Install library Adafruit_GFX


Grapich Test
Grapich Test 2
Coding
/*
Blink TFT
Muestra una pantalla roja durante 1 segundo y despues una pantalla azul durante un segundo
Conexion paralelo 8-bit con display TFT con la libreria MCUFRIEND
This example code is in the public domain.
*/
// nucleo de la libreria grafica para displays de Adafruit
#include "Adafruit_GFX.h"
// Soporte de los controladores de display para shields Arduino MCUFRIEND
#include "MCUFRIEND_kbv.h"
#define BLUE 0x001F
#define RED 0xF800
// Pinout para ARDUINO UNO
#define CS 17 // LCD_CS A3 - Chip Select goes to Digital 17
#define RS 16 // LCD_CD A2 - Command/Data goes to Digital 16
#define WR 15 // LCD_WR A1 - LCD Write goes to Digital 15
#define RD 14 // LCD_RD A0 - LCD Read goes to Analog 18
#define RST 18 // LCD_RESET A4 - Can alternately just connect to Arduino's reset pin
// Creacion del tft display
MCUFRIEND_kbv tftDisplay(CS, RS, WR, RD, RST);
void setup() {
Serial.begin(9600);
Serial.println("TFT BLINK");
Serial.println("=========");
// Intento de lectura del ID del display
uint16_t ID = tftDisplay.readID();
Serial.print("Display ID: 0x");
Serial.println(ID, HEX);
// Inicio del display
tftDisplay.begin(ID);
Serial.print("Width: ");
Serial.println(tftDisplay.width(), DEC);
Serial.print("Height: ");
Serial.println(tftDisplay.height(), DEC);
}
void loop() {
delay(1000);
tftDisplay.fillScreen(RED);
delay(1000);
tftDisplay.fillScreen(BLUE);
}program using LCDWIKI library
/*
Blink TFT
Muestra una pantalla roja durante 1 segundo y despues una pantalla azul durante un segundo
Conexion paralelo 8-bit con display TFT con la libreria LCDWIKI
This example code is in the public domain.
*/
#include <LCDWIKI_GUI.h> //Core graphics library
#include <LCDWIKI_KBV.h> //Hardware-specific library
#define BLUE 0x001F
#define RED 0xF800
LCDWIKI_KBV mylcd(ILI9341,A3,A2,A1,A0,A4); //model,cs,cd,wr,rd,reset
void setup()
{
mylcd.Init_LCD(); //initialize lcd
}
void loop()
{
//Sequential display blue, red
mylcd.Fill_Screen(BLUE);
delay(1000);
mylcd.Fill_Screen(RED);
delay(1000);
}Appliacation
Membuat project monitoring udara
Komponen yang dibutuhkan :
Wiring :

Fitur :
- Menampilkan data real time
- Touch menu untuk memilih data
- Data logger menggunakan kartu SD

Produk yang direkomendasikan
TFT LCD Touch Shield 2.4 Inch untuk Arduino UNO & MEGA – Layar Sentuh Full Color Display Module
Rp69.210Arduino UNO R3 ATMEGA328P ATMEGA 16U2 Compatible Board + Kabel USB
Rp103.410MQ-135 MQ135 GAS SENSOR KUALITAS UDARA AIR QUALITY MODULE ARDUINO
Rp12.60040PCS JUMPER CABLE KABEL 15CM FEMALE TO FEMALE DUPONT 40PCS
Rp9.630





























