Pages Menu
TwitterFacebook



BANNER2_ALT

Posted by on Abr 24, 2014 in Pantallas LCD/TFT | 9 comments

Pantalla TFT RGB 2.2″

Pantalla TFT RGB 2.2″

Pantalla TFT RGB 2.2″ SPI Arduino DUE

 

SONY DSC

La pantalla TFT de 2.2″ es ideal para mostrar de manera visual elementos gráficos en proyectos o prototipos electrónicos. En este tutorial se vera como hacer uso de la misma gracias a bibliotecas creadas por Adafruit para el controlador ILI9341 que tiene esta pantalla. Las bibliotecas deben de ser compatibles con cualquier tarjeta con pantalla con controlador ILI9341, pero para este caso nos vamos a limitar a probar la que parece en la foto.

Primero que nada, cabe mencionar que la pantalla funciona a 3.3V  y no a 5V (solo con un divisor de voltaje de 2 resistencias, revisar mas adelante la actualización para 5V) ya que por ahí hemos encontrado tutoriales donde mencionan que también funcionan a 5V, pero hemos realizado pruebas con dispositivos a 5V y nada, asi como la hoja de especificaciones del controlador menciona que los niveles son de 1.65V a 3.3V (pagina 8):

http://www.displayfuture.com/Display/datasheet/controller/ILI9341.pdf

 

Dado lo antes mencionado se decidió hacer uso de un Arduino DUE para realizar las pruebas correspondientes, las conexiones también son validas para un MEGA pero siempre y cuando considerar el voltaje de las señales. El Arduino DUE es una tarjeta que implementa un ARM, el cual tiene características diferentes que cualquier Arduino con AVR, como la mayoría, por lo que se recomienda tomar en consideración cualquier diferencia de la tarjeta.

Para poder hacer uso de un Arduino DUE se necesita tener la versión del IDE de Arduino que soporte el DUE, al momento de escribir el tutorial la versión es la 1.5.6 Beta. Una vez descargado el IDE adecuado se procede a descargar la biblioteca Adafruit_ILI9340 del siguiente enlace:

https://github.com/adafruit/Adafruit_ILI9340

 

Una vez descargada se descomprime la carpeta, se le pone el mismo nombre que el archivo “.cpp” que se encuentra dentro de la misma y se copia en la carpeta “libraries” dentro de la carpeta donde se instalo el Arduino IDE. Una vez copiada la carpeta es necesario abrir el IDE Arduino y seleccionar Programa – Importar Librería – Añadir Librería y seleccionar la carpeta previamente copiada.

Aplicamos el mismo procedimiento con la biblioteca GFX:

https://github.com/adafruit/Adafruit-GFX-Library

 

SONY DSC

Antes de poder cargar algún ejemplo y realizar alguna prueba se necesita realizar las conexiones correspondientes, las conexiones se hicieron de la siguiente manera, modificando el ejemplo “graphictest”

#define _cs 53
#define _sclk 52
#define _mosi 51
#define _miso 50
#define _dc 49
#define _rst 48

Una vez modificado el codigo y realizadas las conexiones con el Arduino, se procede a cargar el codigo o configurar el mismo para desplegar los datos que uno requiera, por ejemplo en las siguientes lineas de codigo, en donde se hace uso de las funciones con el objeto tft:

unsigned long testText() {
tft.fillScreen(ILI9340_BLACK);
unsigned long start = micros();
tft.setCursor(0, 0);
tft.setTextColor(ILI9340_WHITE); tft.setTextSize(1);
tft.println("Hello World!");
tft.setTextColor(ILI9340_YELLOW); tft.setTextSize(2);
tft.println(1234.56);
tft.setTextColor(ILI9340_RED); tft.setTextSize(3);
tft.println(0xDEADBEEF, HEX);
tft.println();
tft.setTextColor(ILI9340_GREEN);
tft.setTextSize(5);
tft.println("HeTPro");
tft.setTextSize(2);
tft.println("Herramientas Tecnológicas,");
tft.setTextSize(1);
tft.println("PROFESIONALES.");
tft.println("And hooptiously drangle me");
tft.println("with crinkly bindlewurdles,");
tft.println("Or I will rend thee");
tft.println("in the gobberwarts");
tft.println("with my blurglecruncheon,");
tft.println("see if I don't!");
return micros() - start;
}

 

Notese como el texto se imprime con la función println y de manera previa podemos seleccionar el color y tamaño del texto, así como el uso de funciones como el color de fondo o la rotación pueden ser modificadas. Como recomendación final se recomienda para una aplicación particular revisar detenidamente las funciones de las bibliotecas recién instaladas.

 

ACTUALIZACIÓN!!!

Para probar la pantalla con un Arduino de 5V basta con implementar un divisor de voltaje con una resistencia de 470 Ohms y otra de 1k Ohms con cada una de las lineas de datos.  Agradecemos la información proporcionada por Amadeus Ortega que nos menciono que funciono muy bien la pantalla con esa configuración.

 

 

 

Referencia de imagen de conexion:

http://arduino.arigato.cz/Wiring/SPI%20TFT%2022%20wiring%20to%20Arduino%20DUE%20-%20BL%20always%20ON.png

 

SONY DSC SONY DSC SONY DSC SONY DSC SONY DSC

9 Comments

  1. compre hace unas semanas una lcd 2.2. tft con el ili 9341, la estoy tratando de hacer funcionar con un arduino yun pero no puedo hacerla funcionar, tienen algún tip que me puedan dar, ¿la descripción de los pines impreso en la tarjeta es la correcta?
    ¿si se alimenta con 5vdc se daña?
    veo que la tarjeta tiene un regulador de 3vdc en la alimentación.

    • Yo tengo la de 1.8″ y tengo el mismo problema que tú

      Tú ya lo pudiste resolver ???
      Me puedes ayudar???

      Mi Arduino es un

      Arduino nano CH4303

  2. Hace unos días compre la pantalla de 1.8″ y no la e podido hacer funcionar con un Arduino CH4303 me podrían pasar la conexión

  3. Cuando intento compilar el ejemplo me manda un error: no include path in which to search for limits.h

    a que crees que se deba?

    • No me suena ese error Jorge, checa que todo este bien copiado. Saludos

  4. Buenas.
    ¿Y sería posible conectar esta pantalla a Raspberry?
    ¿Cómo?
    Gracias 😀

  5. Hola y que hay para conectar esta TFT a un pic 18F4550, saben de alguna librería?

Post a Reply

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *