Go Down

Topic: Algunos consejos para usar TFT´s (Read 56964 times) previous topic - next topic

arkarash

Perdón si te pareció fuera de lugar, sólo quería saber para el uso que iba a darle yo que pantallas de recomendaban. Pero ya he decidido, me he comprado una nextion y probaré a ver qué tal. Mi intención no era comprarme la mejor pantalla del mercado que es de lo que hablan la mayoría de hilos, ni de pantallas súper hd con buenas velocidades si no cogerme algo bueno, bonito y barato sin llegar a llenarme de papeles. Aumente volví a postear por hacer un Up al hilo que ya había cambiado a la página 2.

TFTLCDCyg

#196
Jul 09, 2018, 02:56 am Last Edit: Jul 09, 2018, 02:58 am by TFTLCDCyg
Ojalá y que cuando te llegue la pantalla que has optado por usar en tus proyectos, nos des a conocer tus impresiones, ya sea en este hilo o bien en un nuevo post en el foro; ya que a mas de un forero he visto que le interesan ese tipo de pantallas.

La idea es que sea más fácil para todos programar otro tipo de pantallas, nos ayudaría bastante a conocer otras alternativas; ya que igual he menospreciado la capacidad de esos TFT.

arkarash

No dudes que lo haré TFTLCDyg, tus comentarios los he leído todos pero voy a muchos años luz de tus experimentos con TFT's. Espero que para lo que yo necesito que es muuuuy simple esta pantalla de el pego, estaba por pillarme una china de esas de 4€ hasta que leí todos los comentarios de líos de librerías y montones de fallos. Creo que eso es lo importante de esta comunidad, la experiencia conjunta y el no repetir errores.

lightcalamar

hasta que leí todos los comentarios de líos de librerías y montones de fallos. Creo que eso es lo importante de esta comunidad, la experiencia conjunta y el no repetir errores.
Por ello hemos escrito, para que no repetir errores.
A estos errores, hemos invertido mucho dinero para daros a conocer otros horizontes.

Por cierto, yo tengo una Nextion de 7 pulgadas, y de momento la tengo en el cajón(no para abandonarla) pero es una HMI sin futuro y ademas mas complicada de programar que una FT81x. te lo escribo, por que tengo de ambos tipos, y donde esten las FTDI, que guarden cola las demas para hacerles sombra

Mi proyecto Radio FM con RDS -  MDC v1.0;
https://forum.arduino.cc/index.php?topic=400484.0
https://forum.arduino.cc/index.php?topic=448606.0
https://github.com/lightcalamar

arkarash

Ya tengo la Nextion, de momento la experiencia es buena, con el software de Nextion he conseguido fácilmente crear una interfaz para mi botonera a base de imagenes PNG y sustitución de partes de la imagen al pulsar. Gracias a todos por los consejos, me han servido para encontrar una buena opción.

Sobre las pantallas FTDI, se por vuestros comentarios que son mucho mejores que las Nextion pero como ya dije necesitaba una pantalla simple y barata para hacer simplemente un teclado de clave de acceso. Vamos que no lo iba a sacar el jugo con gráfricas ni nada que mereciese la pena el gasto. Sin duda me las miraré para proyectos de más envergadura que tengan más interfaz gráfico.

emilts

Hola.

Antes de nada daros las gracias por compartir vuestra gran afición y horas invertidas en aclarar estos temas.

Soy Informático, desde hace muchos años, y al final el tiempo te enseña que lo mejor es utilizar estándares que utilice una mayoría para desarrollar productos y no morir en el intento.

Ahora tengo que hacer un proyecto con arduino, donde soy novato, para controlar emisiones de luz RGB parametrizando valores sencillos desde una pantalla TFT, en principio con controles estándar como botones, "slider-bar", cajas de texto, "scroll-bar", "progress-bar", etc.

La pregunta es, qué TFT táctil me aconsejáis que utilice en torno a 3" o mayor, dado que el tamaño no es problema, pero que me complique lo mínimo, que sea si es posible un shield, de arduino uno en principio, que tenga librerías de programación lo más extendidas y sencillas posible aunque potentes y que no de problemas.

Gracias

danielpaz88

#201
Jan 15, 2019, 10:19 pm Last Edit: Jan 16, 2019, 01:03 am by danielpaz88
Hola , muy bueno tu aporte. estoy teniendo problemas por que la pantalla está en blanco. EL programa es el siguiente, lo tomé de tu ejemplo TFT_Menu. El driver al parecer es ILI9341. ya no se que hacer he intentado de todo. es una pantalla tft con sd de 2.2" de 240x320.

#include "Adafruit_GFX.h"  
#include "Adafruit_TFTLCD.h"
#include "SD.h"              
#include "SPI.h"            
#include "TouchScreen.h"    

#define YP A1
#define XM A2
#define YM 7
#define XP 6

//Rotacion 3
short TS_MINX = 68; // Controla el final de eje X del lado derecho en rotacion 3
#define TS_MAXX 950  //Controla el inicio de eje X del lado izquierdo en rotacion 3  // no contenpla los botones prediseñados 1-318
short TS_MINY = 170; // inicio Eje  Y
#define TS_MAXY 890  //   fin Eje Y  
//Rotacion 3

#define MINPRESSURE 1
#define MAXPRESSURE 1000
// Instancia del panel tactil (Pin XP, YP, XM, YM, Resistencia del panel)
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 364);

#define LCD_CS A3  
#define LCD_CD A2  
#define LCD_WR A1
#define LCD_RD A0
#define LCD_RESET A4

#if defined __AVR_ATmega2560__
#define SD_SCK 13              
#define SD_MISO 12  
#define SD_MOSI 11
#endif

#define SD_CS 10  
Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, A4);

#define BLACK   0x0000  
#define BLUE    0x001F  
#define RED     0xF800  
#define GREEN   0x07E0
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define WHITE   0xFFFF
uint16_t  color;

int X, Y, Z;
int deltaTactil = 10 ; //ajuste tactil-x en botones de diseño, por el uso de iconos prediseñados la tactil es unos 10/12 px mas grande que el TFT

char imagesOnSDCard1[8][30]={"Foff.bmp","Fon.bmp","6oB.bmp","6oH.bmp","6oI.bmp","ico9.bmp","ico7.bmp","La1.bmp"};
unsigned char imagenSD1 = 1;
char TX[50];

//iconos prediseñados
///////acá yo los saque a propósito por que no los uso. aparte me daba error por que me decía que el programa era muy largo y me excedía de la capacidad, estoy usando Android 1.8.7

void setup()
{
 tft.reset();
 tft.begin(0x9325);
 tft.fillScreen(0);
 Serial.begin(9600);

 #if defined __AVR_ATmega2560__              
 if (!SD.begin(SD_CS, SD_MOSI, SD_MISO, SD_SCK ))
 {
   tft.println(F("failed!"));  
   return;
 }
 #else
 if (!SD.begin(SD_CS)) {
   tft.println(F("failed!"));
   return;
 }
 #endif
 tft.setRotation(3);
 //MenuP();
}

void loop(){
 delay(1000);
  bmpDraw("6oB.bmp",140,220);        
   delay(2000);
   bmpDraw("6oH.bmp",170,220);   }

TFTLCDCyg

Hola.

Antes de nada daros las gracias por compartir vuestra gran afición y horas invertidas en aclarar estos temas.

Soy Informático, desde hace muchos años, y al final el tiempo te enseña que lo mejor es utilizar estándares que utilice una mayoría para desarrollar productos y no morir en el intento.

Ahora tengo que hacer un proyecto con arduino, donde soy novato, para controlar emisiones de luz RGB parametrizando valores sencillos desde una pantalla TFT, en principio con controles estándar como botones, "slider-bar", cajas de texto, "scroll-bar", "progress-bar", etc.

La pregunta es, qué TFT táctil me aconsejáis que utilice en torno a 3" o mayor, dado que el tamaño no es problema, pero que me complique lo mínimo, que sea si es posible un shield, de arduino uno en principio, que tenga librerías de programación lo más extendidas y sencillas posible aunque potentes y que no de problemas.

Gracias
Hace un tiempo que no pasaba por el post, espero que mi respuesta no llegue demasiado tarde.

Recientemente he visto una versión de 3.2" de pantallas SPI ILI9341 (320x248 px), es el tope en tamaño para ese controlador. Es de lo mejor en cuanto a si necesitas buena respuesta gráfica al manejar múltiples instrucciones.

Desafortunadamente la parte táctil deja mucho que desear ya que el chip no ha sido actualizado, se sigue empleando el XPT2046 o equivalente. Quizás por mantener el costo final del producto bajo o bien por un elevado stock de ese chip en las empresas que fabrican el TFT.

Existen pantallas un poco más grandes con chips ILI9488 de 3.5" (480x320 px), el formato es idéntico al de las ILI9341, usan el chip táctil XPT2046, sin embargo el controlador de pantalla es la actualización directa del chip ILI9341.

Ambas versiones son TFT´s relativamente grandes.

Si tu presupuesto te lo permite te recomendaría pantallas FT813 de 3.5" o de 4.3", NHD tiene pantallas de este tipo con doble conector: un cabezal de 20 pines y un zócalo para cable plano de 20 pines.


TFTLCDCyg

Hola , muy bueno tu aporte. estoy teniendo problemas por que la pantalla está en blanco. EL programa es el siguiente, lo tomé de tu ejemplo TFT_Menu. El driver al parecer es ILI9341. ya no se que hacer he intentado de todo. es una pantalla tft con sd de 2.2" de 240x320...
Bueno primero que nada felicidades por intentar un proyecto diferente. Te prevengo: habrá varias conexiones fallidas, pero ya diste el primer paso.

Veo en la foto que has compartido, que usas un cableado bastante largo, procura que el tamaño total de cada hilo no supere los 15 cm.

Las resistencias deben estar conectadas en forma de divisor de voltaje 5V/3.3V para cada línea de control de la pantalla, excepto para VCC y GND. Si te es posible consigue un chip CD4050BE, te ahorrará dolores de cabeza.

La mejor librería que puedes usar es esta

JOSEBERMUDEZ

Hola, soy jose y soy nievo en esto de las pantallas tft, a ver si podeis ayudarme porque ando muy perdido y nadie me hecha un cable, queria empezar por algo sencillo, encender y apagar un rele desde un icono el la pantalla tft. No se por donde empezar, os agradezco de antemano vuestra ayuda.

TFTLCDCyg

Hola, soy jose y soy nievo en esto de las pantallas tft, a ver si podeis ayudarme porque ando muy perdido y nadie me hecha un cable, queria empezar por algo sencillo, encender y apagar un rele desde un icono el la pantalla tft. No se por donde empezar, os agradezco de antemano vuestra ayuda.
Esto del hobby con arduino implica que inviertas parte de tus ahorros en las piezas que quieres usar y antes que nada soy muy respetuoso con ese tema. Para empezar, te podría recomendar 6 o 7 opciones de TFT, pero quizás terminarás por sustituir por algo mucho mejor, por eso antes de opinar al respecto, me gustaría precisar algunas ideas.

Como siempre he dicho, mis opiniones son imparciales respecto a los fabricantes: si me sirve un TFT lo usaré en el proyecto, sino, irá directo al cajón de cosas sin usar y no lo recomendaré más, simplemente para evitar dolores de cabeza.

Bajo esta premisa, me he topado con piezas que han resultado algo costosas, pero que no he vuelto a usar, porque el TFT luego de un tiempo de uso muestra alguno que otro defecto. Sin olvidar el tiempo invertido en la curva de aprendizaje de la librería de control; que en varias ocasiones me ha retrasado el proyecto principal.

Ahora bien, en tu comentario veo que quieres un TFT con panel táctil con capacidad para gestionar imágenes. En ese sentido es mejor que te alejes de los TFT con táctil resistivo, el tema de cableado, calibración y sensibilidad dan paso a muchos problemas.

Los TFT con táctil capacitivo son de lejos la mejor opción.

Desafortunadamente la tecnología capacitiva está poco documentada en arduino y el universo de pantallas está muy reducido. Además el costo de este tipo de pantallas supera com mucho los 3 o 4 USD de las pantallas resistivas.

El complemento al TFT que quieres es el manejo de imágenes. Aquí necesitarás un lector micro SD para el manejo de archivos; esto ayudará que tu código consuma poca memoria en la placa de control o MCU

Otro aspecto a considerar es un buen MCU: muchos pines y capacidad para gestionar con librerías todo el hardware que quieres en tu proyecto.

Verás en internet demasiados proyectos muy bien logrados, pero no todo lo que dicen está documentado, el trasfondo implica que el dueño del proyecto pasó infinidad de horas creando sus propias librerías y que no siempre están dispuestos a compartir, quizás porque tienen un negocio detrás que deben cuidar...

El formato de la pantalla es importante: es mejor usar pantallas con pocos hilos de control y con cableado corto hacia el MCU.

Go Up