Carte graphique arduino?

Bonjour à tous!

Je cherche une solution pour gérer mon tft 7" de façon "rapide"
J'utilise déjà cet afficheur (acheté sur www.elecfreaks.com, avec les bibliothèques fourni par Electronics - Henning Karlsen ) mais si on veut faire des modification d'affichage impliquant beaucoup de pixel, l'arduino (mega) traine.

Je cherche donc une carte externe qui n'aurait pas peur de 800x480 pixel couleur, qui communiquerait avec l'arduino. Est ce que quelque chose du genre existe d'après vous?

Merci a vous

Salut, sans vouloir faire au plus vite, je t'aiguillerai bien vers un rasperry qui est plus rapide et gère plus facilement ce genre de chose ^^ sinon en arduino je crois pas qu'il y est beaucoup plus rapide, essaye de repenser ta prog pour un gain de temps, priorise l'affichage à toute la réflexion qui le précède ! Quitte à utiliser les interruption.

GL

Skizo !

Gameduino 2 : Seeed Studio Bazaar, The IoT Hardware enabler.

Sympa ça, je connaissait pas mais sa m'intéresse :grin:

Je viens de voir le prix en plus... OMG c'est de la bombe ^^

Oui ça a l'air vraiment puissant :slight_smile: en plus gestion du tactile et du son, bref ça le destine à beaucoup de choses et ça montre bien comment dans les systèmes qu'on trouve un peu partout (bornes SNCF, ordinateur de bord auto ...) on se fout bien de notre gueule ...

Je suis bien d’accord sur ce point, il nous vende de la merde à prix d’or c’est scandaleux…

Merci pour vaut réponses! je vais approfondir cette histoire de gameduino!

Sylvain

Bonjour,

Petite remarque concernant la Gameduino 2 : le module d'évaluation de FTDI pour le chipset FT800 existe en version 5" pour l'écran :wink:
Bon par contre cette version coûte un bras (80€). C'est limite moins cher de prendre la carte sans écran et d'aller sur ebay prendre l'écran séparément.

Sinon l'API typée openGL c'est une tuerie, les codes d'exemples avec les widgets tout fait ça dépote.
Faire un clavier tactile se résume à quelques lignes de code.

je decouvre ce truc , c'est génial moi qui me suis pris la tete avec mon interface , ou tout est généré par l'arduino direct la c'est plus fluide , plus rapide ( a coder) , bref c'est plus , je croi que je vais en commander un tout suite ! :astonished:

Le FT800 est vraiment un super chip. La doc développeur est très complète et on voit que FTDI s'est bien cassé la tête pour simplifier la tâche des codeurs et obtenir un résultat super fluide sans avoir à rentrer "dans le dur" pour l'obtenir. Tout est optimisé à la base

c’est bien ce que j’ai vue en regardan la doc ! :astonished: perso j’utilisé la lib UTFT que j’ai quelque peut modifier pour mes besoin mais l’affichage use enormement de temps de travail de l’ATMEGA et beaucoup de RAM , mais avec ce genre de systeme c’est claire que l’on abouti plus rapidement au résultat avec en plus des effet graphiques de ouf ( transparence dégradé etc)!
pour son prix je me suis laché directe maintenant va faloir que je recode l’interface de mon systeme !

exemple d’un code pour généré et récupéré l’activation d’un bouton que j’utilise pour le moment avec UTFT.h :

// --- trace une touche a partir des coordoné du haut gauche de la touche xo, yo

boolean UTFT::Bouton (int xo, int yo,prog_uchar *text,byte type_Police) {

  byte t_policeX;
  byte t_policeY;
  byte nb_caracter=0;

  char Texte_Buf[30] = {
    0                              };
  byte c, i = 0;
  byte conteur=0;

  //{0,204,204};
  boolean reponse=false;


  c =(char)pgm_read_byte(text);
  while(c != 0 && i < 30){
    Texte_Buf[i++] = c;
    nb_caracter++;
    c =(char)(pgm_read_byte(++text));
  }

  switch (type_Police){
  case 1 :
    t_policeX=8;
    t_policeY=12;
    setFont(SmallFont);
    break;
  case 2 :
    t_policeX=16;
    t_policeY=16;
    setFont(BigFont);
    break;
  case 3 :
    t_policeX=32;
    t_policeY=50;
    setFont(SevenSegNumFont);
    break;

  };

  switch (comptAffTouch){
  case 0 :

      drawBitmap(xo, yo, 16, 48, &BoutGauche2, 1);
      for ( byte a=1; a<=nb_caracter;a++){
        drawBitmap(xo+(a*16)-1, yo, 16, 48, &BoutCentre2, 1);
      }
      drawBitmap(xo+(nb_caracter+1)*16-1, yo, 16, 48, &BoutDroite2, 1);



   /* recPleinCoinArrondi((xo),(yo),(xo+taille_policeX*(nb_caracter+2)),(yo +taille_policeY*3),Couleur_Touche);*/
   // recCoinArrondi((xo+2),(yo+2),(xo-2+taille_policeX*(nb_caracter+2)),(yo-2+taille_policeY*3),Couleur_cadre);
   // setColor(Couleur_Texte);
   setColor(COLOR_BLACK);
     // setBackColor(Couleur_Touche);
     BackTrans(true);
    print(Texte_Buf,(xo+t_policeX), (yo+t_policeY));
    BackTrans(false);
    break;

  case 1 :

    if (TestTouche(xo,yo,t_policeX*(nb_caracter+2),t_policeY*3)==true){

         drawBitmap(xo, yo, 16, 48, &BoutGauche, 1);
      for ( byte a=1; a<=nb_caracter;a++){
        drawBitmap(xo+(a*16)-1, yo, 16, 48, &BoutCentre, 1);
      }
      drawBitmap(xo+(nb_caracter+1)*16-1, yo, 16, 48, &BoutDroite, 1);

      //recPleinCoinArrondi((xo),(yo),(xo+taille_policeX*(nb_caracter+2)),(yo +taille_policeY*3),Couleur_Touche);
      //recCoinArrondi((xo+2),(yo+2),(xo-2+taille_policeX*(nb_caracter+2)),(yo-2+taille_policeY*3),Couleur_cadre2);
      setColor(COLOR_BLACK);
      //setBackColor(Couleur_Touche);
      BackTrans(true);
      print(Texte_Buf,(xo+t_policeX), (yo+t_policeY));
      BackTrans(false);

       drawBitmap(xo, yo, 16, 48, &BoutGauche2, 1);
      for ( byte a=1; a<=nb_caracter;a++){
        drawBitmap(xo+(a*16)-1, yo, 16, 48, &BoutCentre2, 1);
      }
      drawBitmap(xo+(nb_caracter+1)*16-1, yo, 16, 48, &BoutDroite2, 1);

      //recPleinCoinArrondi((xo),(yo),(xo+taille_policeX*(nb_caracter+2)),(yo +taille_policeY*3),Couleur_Touche);
      //recCoinArrondi((xo+2),(yo+2),(xo-2+taille_policeX*(nb_caracter+2)),(yo-2+taille_policeY*3),Couleur_cadre);
      setColor(Couleur_Texte);
      //setBackColor(Couleur_Touche);
      BackTrans(true);
      print(Texte_Buf,(xo+t_policeX), (yo+t_policeY));
      BackTrans(false);
      reponse=true;
    };

    break;

  };
  return reponse;
}