Utilizzo della libreria Gameduino 2 con i moduli TFT EVE
La libreria Gameduino 2, scritta da James Bowman, è progettata per la serie di circuiti integrati per controller grafici FT80x/FT81x e supporta diversi microcontrollori. Questa libreria include una serie di sketch di esempio, da semplici programmi "Hello World" a programmi più complessi che utilizzano widget, accedono a file PNG da una scheda microSD e persino generano simulazioni di giochi da tavolo.
In this tutorial, we will use an Arduino Uno to drive our NHD-4.3-480272FT-CSXP-CTP module and list the necessary changes to compile the basic "Hello World" sketch.
Display TFT EVE compatibili con questo tutorial
La guida illustra l'utilizzo della libreria Gameduino 2 con i seguenti moduli TFT EVE di Newhaven Display:
| Dimensioni dello schermo | Numeri di parte |
|---|---|
| SCHERMO TFT DA 3,5" | NHD-3.5-320240FT-CSXP-T |
| SCHERMO TFT DA 4,3 POLLICI | NHD-4.3-800480FT-CSXP-CTP NHD-4.3-480272FT-CSXP-CTP NHD-4.3-480272FT-CSXP-T |
| SCHERMO TFT DA 5,0 POLLICI | NHD-5.0-800480FT-CSXP-CTP NHD-5.0-800480FT-CTXL-CTP NHD-5.0-800480FT-CTXL-T |
| SCHERMO TFT DA 7,0" | NHD-7.0-800480FT-CSXV-CTP NHD-7.0-800480FT-CSXV-T |
Requisiti hardware e software
Per utilizzare la libreria Gameduino 2, avrai bisogno di quanto segue:
- Newhaven Display IPS EVE TFT capacitivo da 4,3 pollici NHD-4.3-480272FT-CSXP-CTP
- Newhaven Display 20 POS FFC
- Newhaven Display NHD-FT81x-SHIELD
- Arduino Uno
- Cavo USB 2.0 tipo A/B
- Strumento IDE Arduino installato
- Alimentatore da 9 V
- Libreria Gameduino2
- Eve Asset Builder (per le immagini)
Configurazione del software: carica la libreria sul tuo IDE Arduino
Passaggi per caricare la libreria Gameduino 2 sulla scheda Arduino.
- Scarica la libreria: Scarica la libreria Gameduino2 per il tuo progetto.
- Apri l'IDE Arduino: avvia il software IDE Arduino sul tuo computer. Assicurati di avere la versione più recente dell'IDE per evitare problemi.
-
Aggiungi la libreria ad Arduino IDE: dopo aver avviato Arduino IDE, vai su Sketch > Includi libreria > Aggiungi libreria .ZIP . Individua il file della libreria scaricata sul tuo computer e selezionalo.
If you're new to installing libraries for Arduino, you can find detailed instructions on the official Arduino website.
- Verifica dell'installazione: una volta installata la libreria, dovrebbe essere disponibile nell'IDE, come mostrato nell'immagine sottostante. Per verificarlo, vai su File > Esempi e dovresti vedere Gameduino2 nell'elenco. Se riesci a vederlo, la libreria è stata installata correttamente. In caso contrario, ripeti la procedura o cerca eventuali errori.
Remember to restart the Arduino IDE if your new library does not appear in the list of examples. If you encounter any issues, consult the Arduino community forum for assistance.
Configurazione hardware
Prima di effettuare il collegamento, assicurarsi che NHD-FT81x-SHIELD ha J4, J5 e J6 in cortocircuito e J1-J3 aperti per la connessione Arduino Uno come mostrato di seguito:
Collega lo shield al tuo Arduino, quindi collega il display TFT e lo shield utilizzando il cavo flessibile piatto a 20 pin e collega l'alimentatore da 9 V all'Arduino Uno.
Modifica della libreria Gameduino2
Before running any of the example sketches, the GD2.cpp file needs to be modified by commenting a line of code in order to make the Gameduino2 library compatible with our EVE displays. To do this, follow the steps below:
- Vai a Documenti > Arduino > Librerie > Gameduino2 > GD2.cpp .
- Apri GD2.cpp nel tuo editor di codice preferito.
- Garantire
//if (STORAGE && (options & GD_STORAGE))è commentato. - Salvare le modifiche e chiudere il file modificato.
Registri EVE TFT
I valori di temporizzazione richiesti per ogni rispettivo display possono essere copiati e incollati dalla tabella sottostante.
| Dimensioni TFT | Risoluzione | Valori del registro |
|---|---|---|
| SCHERMO TFT DA 3,5" | 320 x 240 |
GD.wr16(REG_HSIZE, 320);
GD.wr16(REG_HCYCLE, 408);
GD.wr16(REG_HOFFSET, 70);
GD.wr16(REG_HSYNC0, 0);
GD.wr16(REG_HSYNC1, 10);
GD.wr16(REG_VSIZE, 240);
GD.wr16(REG_VCYCLE, 263);
GD.wr16(REG_VOFFSET, 13);
GD.wr16(REG_VSYNC0, 0);
GD.wr16(REG_VSYNC1, 2);
GD.wr16(REG_PCLK, 8);
GD.wr16(REG_SWIZZLE, 0);
GD.wr16(REG_PCLK_POL, 0);
GD.wr16(REG_CSPREAD, 1);
GD.wr16(REG_DITHER, 1);
GD.wr16(REG_ROTATE, 0);
|
| SCHERMO TFT DA 4,3 POLLICI | 480 x 272 |
GD.wr16(REG_HSIZE, 480);
GD.wr16(REG_HCYCLE, 548);
GD.wr16(REG_HOFFSET, 43);
GD.wr16(REG_HSYNC0, 0);
GD.wr16(REG_HSYNC1, 41);
GD.wr16(REG_VSIZE, 272);
GD.wr16(REG_VCYCLE, 292);
GD.wr16(REG_VOFFSET, 12);
GD.wr16(REG_VSYNC0, 0);
GD.wr16(REG_VSYNC1, 10);
GD.wr16(REG_PCLK, 5);
GD.wr16(REG_SWIZZLE, 0);
GD.wr16(REG_PCLK_POL, 1);
GD.wr16(REG_CSPREAD, 1);
GD.wr16(REG_DITHER, 1);
GD.wr16(REG_ROTATE, 0);
|
| SCHERMO TFT DA 4,3 POLLICI | 800 x 480 |
GD.wr16(REG_HSIZE, 800);
GD.wr16(REG_HCYCLE, 928);
GD.wr16(REG_HOFFSET, 88);
GD.wr16(REG_HSYNC0, 0);
GD.wr16(REG_HSYNC1, 48);
GD.wr16(REG_VSIZE, 480);
GD.wr16(REG_VCYCLE, 525);
GD.wr16(REG_VOFFSET, 32);
GD.wr16(REG_VSYNC0, 0);
GD.wr16(REG_VSYNC1, 3);
GD.wr16(REG_PCLK, 2);
GD.wr16(REG_SWIZZLE, 0);
GD.wr16(REG_PCLK_POL, 1);
GD.wr16(REG_CSPREAD,0);
GD.wr16(REG_DITHER, 1);
GD.wr16(REG_ROTATE, 0);
|
| SCHERMO TFT DA 5,0 POLLICI | 800 x 480 |
GD.wr16(REG_HSIZE, 800);
GD.wr16(REG_HCYCLE, 928);
GD.wr16(REG_HOFFSET, 88);
GD.wr16(REG_HSYNC0, 0);
GD.wr16(REG_HSYNC1, 48);
GD.wr16(REG_VSIZE, 480);
GD.wr16(REG_VCYCLE, 525);
GD.wr16(REG_VOFFSET, 32);
GD.wr16(REG_VSYNC0, 0);
GD.wr16(REG_VSYNC1, 3);
GD.wr16(REG_PCLK, 2);
GD.wr16(REG_SWIZZLE, 0);
GD.wr16(REG_PCLK_POL, 0);
GD.wr16(REG_CSPREAD, 0);
GD.wr16(REG_DITHER, 1);
GD.wr16(REG_ROTATE, 0);
|
| SCHERMO TFT DA 7,0" | 800 x 480 |
GD.wr16(REG_HSIZE, 800);
GD.wr16(REG_HCYCLE, 928);
GD.wr16(REG_HOFFSET, 88);
GD.wr16(REG_HSYNC0, 0);
GD.wr16(REG_HSYNC1, 48);
GD.wr16(REG_VSIZE, 480);
GD.wr16(REG_VCYCLE, 525);
GD.wr16(REG_VOFFSET, 32);
GD.wr16(REG_VSYNC0, 0);
GD.wr16(REG_VSYNC1, 3);
GD.wr16(REG_PCLK, 2);
GD.wr16(REG_SWIZZLE, 0);
GD.wr16(REG_PCLK_POL, 1);
GD.wr16(REG_CSPREAD, 0);
GD.wr16(REG_DITHER, 1);
GD.wr16(REG_ROTATE, 0);
|
Esempio: Ciao mondo
Una volta apportate le modifiche di cui sopra al rispettivo file, è il momento di testare lo sketch 'Hello World':
Nota: le seguenti modifiche faranno riferimento ai tempi/registri del nostro EVE TFT da 4,3" come guida di esempio.
- Aprire il file helloword.ino andando su File > Esempi > Gameduino2 > Nozioni di base > Hello World.
- Sostituire
GD.begin(0);conGD.inizio(0,10,5);nelimpostare()funzione. - Ottieni i valori dalla tabella dei registri TFT EVE riportata sopra per le dimensioni del tuo display.
- Aggiungi la funzione
TFT_4_3()e richiamarlo nella funzione di configurazione come mostrato nel codice seguente. - Carica il codice sulla tua scheda Arduino Uno. Assicurati di selezionare la scheda e la porta prima di caricare il file dello sketch. Consulta la sezione "Carica uno sketch nell'IDE di Arduino" per maggiori informazioni.
Il codice finale dovrebbe essere simile a questo:
#include#include #include void TFT_4_3() { GD.wr16(REG_HSIZE, 480); GD.wr16(REG_HCYCLE, 548); GD.wr16(REG_HOFFSET, 43); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 41); GD.wr16(REG_VSIZE, 272); GD.wr16(REG_VCYCLE, 292); GD.wr16(REG_VOFFSET, 12); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 10); GD.wr16(REG_PCLK, 5); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 1); GD.wr16(REG_CSPREAD, 1); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); GD.swap(); } void setup() { GD.begin(0,10,5); TFT_4_3(); } void loop() { GD.ClearColorRGB(0x103000); GD.Clear(); GD.cmd_text(GD.w / 2, GD.h / 2, 31, OPT_CENTER, "Hello world"); GD.swap(); }
Se le modifiche sono state apportate correttamente, sul display TFT di EVE dovreste vedere quanto segue:
Congratulazioni! Ora puoi divertirti a eseguire gli sketch di esempio ed esplorare le entusiasmanti funzionalità della libreria Gameduino2 con i nostri display TFT EVE.
Supporto software
Please note all software related to the Gameduino2 library was designed by James Bowman, and is not created nor maintained by Newhaven Display International Inc. For any additional software support relating to the Gameduino2 library, we recommend visiting the James Bowman Github repository.
Link di riferimento
- Homepage di Gameduino2
- Pagina Github di Gameduino2
- Ricettario Gameduino2
- File di esempio FTDI EVE
- Visualizza in anteprima o scarica queste note applicative in formato PDF.
Risorse aggiuntive
Per ulteriore supporto sull'utilizzo dei nostri display TFT della serie EVE con la libreria Gameduino2 o per domande sui nostri altri prodotti di visualizzazione, contattateci tramite uno dei nostri canali di supporto tecnico:
| techsupport@newhavendisplay.com | |
| Telefono | (847) 844-8795 |
| Centro di supporto | Centro assistenza display di Newhaven |
Ultimi post del blog
-
A Guide to TFT Display Interfaces
Display interfaces often get less attention than screen resolution or brightness, but they carry jus …Dec 16th 2025 -
Choosing the Right Display Resolution: A User-Friendly Guide
Display resolution is one of the most defining choices in product interface design. It determines ho …Dec 11th 2025 -
Arduino vs Raspberry Pi vs BeagleBone: Key Features and Differences
If you're working on an electronics project—whether it's for a DIY automated device, a digital sign, …Dec 8th 2025