Afficher image .raw

bonjour a tous,
je suis en galere , je n'arrive pas a trouver une bibliotheque avec un exemple valide pour ouvrire une image .raw de la sd et l'afficher sur un ecrant tft .
est ce que quelqu'un pourrais m'aider

Il faudrait connaître le type de format utilisé dans votre .raw

chaque constructeur (Canon, Nikon, Sony, etc.) utilise son propre type de fichier raw avec des extensions spécifiques (comme .cr2, .nef, .arw). Ces fichiers ne sont donc pas interchangeables sans conversion et leur interprétation est spécifique.

merci de la réponse ,
j'utilise imageconverter 565.exe
et je part d'image que je me fait sur paint, sauvegardé en BMP, avant d'etre transformé en RAW
du coup je n'en sais pas plus . historiquement j'avais réussi avec le même hardware
mais la je ne trouve même pas une bibliothèque qui fonctionne .
"#include <UTFT_SdRaw.h> "
me cree une erreur
"Erreur de compilation pour la carte Arduino Mega or Mega 2560"

C’est cela que vous utilisez ?

Oui j'ai essayé. Mais je ne sais plus quoi utiliser comme bibliothèques. Rien ne fonctionne pour le moment

C’est pour la bibliothèque UTFT dont il parle

j'avais déjà la bibliothèque dont il parle , je l'ai quand même changé pour être sur . mais aucun résultat .
mais je suis pret a changer de matériel . la c'est trop frustrant .
j'espère juste une bibliothèque qui tourne avec un écran tactile .

Lisez ce qu’il dit sur sa bibliothèque UTFT et la taille memoire

Pour la partie touch si vous utilisez

Lisez aussi quels écrans sont supportés

non mais mais même avec la bibliothèque utft tinyfat . et les image fourni par la bibliothèque , ca me dit image non trouvé !
je ne veu pas devenir un expert et lire tout ce qu'il y a a lire sur internet . je souhaite juste trouver 1 exemple qui marche .
je ne serai jamais un expert et je n'en ai pas besoin. mais je suis surpris que dans aucun exemple je n'ai trouver de déclaration de la taille de l'écran . ni aucun exemple "simple" .

Quel écran et matériel avez vous ?

Donc ce n'est pas un problème de librairie graphique.

Oui ça ressemble à un souci d’accès du fichier.

fdufnews c'est que j'arrive a crer ecrire et effacer sur la SD .
mais mes "images , ou plutot le delir de pixel ne rempli pas l'ecran , comme si la taille n'étai pas bonne . mais je ne voi pas ou configurer les 320x240 .
. je ne sais pas comment formater ou format fat16 . mon pc ne me propose que le fat 32.
selon les sources c'est bon ou pas . mais comme j'arrive a lire et ecrire des fichiers ..

Tes réponses sont contradictoires.
Une fois tu dis "ca me dit image non trouvé !"
Une autre tu dis "le delire de pixel ne rempli pas l'ecran , comme si la taille n'était pas bonne"

Donne un programme minimal qui cause le problème et les fichiers que l'on comprenne le problème au lieu de parler dans le vide

alors avec ce code

// Master Binder v2 telecommande

#include <XBee.h>
#include <UTFT.h>
#include <URTouch.h>
#include <Adafruit_GFX.h> 
//#include <UTFT_SdRaw.h>
#include <SPI.h>
#include <SD.h>
//#include <Adafruit_ImageReader.h>
//SdFat                SD;         // SD card filesystem
//Adafruit_ImageReader reader(SD);


//////////////////////////////////////////////////////////////////////
//sd 
// Chip select may be constant or RAM variable.
const uint8_t SD_CS_PIN = 53;
//
// Pin numbers in templates must be constants.
const uint8_t SOFT_MISO_PIN = 35;
const uint8_t SOFT_MOSI_PIN = 37;
const uint8_t SOFT_SCK_PIN = 36;

//ecran tft
 //model,cs,cd/rs,wr,rd,reset// rs option
UTFT    myGLCD(ITDB32S,38,39,40,41);
// ecran tactil
URTouch  myTouch( 6, 5, 4, 3, 2);
//myGLCD.begin(); 
//UTFT.InitLCD(240, 320); 
//
// Declare which fonts we will be using
extern uint8_t BigFont[];
extern uint8_t SmallFont[];

unsigned long tempoenvoi = 0;
int tempoaffich = 1000;



#define NOIR         0,   0,   0
#define NAVY         0,   0, 123
#define DARKGREEN    0, 125,   0
#define DARKCYAN     0, 125, 123
#define MAROON       123,   0,   0
#define PURPLE       123,   0, 123
#define OLIVE        123, 125,   0
#define LIGHTGREY    198, 195, 198
#define DARKGREY     123, 125, 123
#define BLUE         0,   0, 255
#define GREEN        0, 255,   0
#define CYAN         0, 255, 255
#define RED          255,   0,   0
#define MAGENTA      255,   0, 255
#define YELLOW       255, 255,   0
#define BLANC        255, 255, 255
#define ORANGE       255, 165,   0
#define GREENYELLOW  0 173, 255,  41
#define PINK         255, 130, 198



const int nbOutil = 9;
char* outil[nbOutil] = {"VIDE" ,"NANOPIX", "CAM_TH","ORCA" , "MULTI G" , "CAM360", "outil1","outil2","outil3"};

String Puce = " SUPER V2";
 // 320 x 240



//const int nbOutil = 9;
const int nbdim = 5;
//File myFile;
//UTFT_SdRaw myFile(&myGLCD);





void setup()
{
  tempoenvoi = millis();
  
  Serial.begin(115200);

  Serial.print("Initializing SD card...");

  // see if the card is present and can be initialized:
  if (!SD.begin(53)) {
    Serial.println("Card failed, or not present");
    // don't do anything more:
    while (1);
  }
  Serial.println("card initialized.");
delay(2000);
///////////////////////////////
  int xscreen = 0; // largeur ecrant
 int yscreen = 0;
 
  myGLCD.InitLCD (PORTRAIT);//(PORTRAIT);//(LANDSCAPE);//
  myGLCD.clrScr();

  myTouch.InitTouch();
  myTouch.setPrecision(PREC_MEDIUM);

  xscreen = myGLCD.getDisplayXSize();
  yscreen = myGLCD.getDisplayYSize();

 
  myGLCD.clrScr();
delay(2000);
 myGLCD.setFont(SmallFont);//(BigFont);
myGLCD.setColor(BLANC);
myGLCD.setBackColor(NOIR);
}

void loop()
{
   

/*
myGLCD.drawBitmap(10,20,"miniwoof.bmp",160,120);
delay(5000);

myGLCD.drawBitmap(10,20,"miniwoof.bmp",120,120,160);
delay(5000);
*/
  myGLCD.clrScr();
myGLCD.drawBitmap(0,0,"tiger.raw",240,320);
myGLCD.print("tiger.raw",10,20);
delay(5000);

  myGLCD.clrScr();
myGLCD.drawBitmap(10,20,"miniwoof.bmp",120,160);
myGLCD.print("miniwoof.bmp",10,20);
delay(5000);
  myGLCD.clrScr();
myGLCD.drawBitmap(0,0,"test.bmp",240,320);
myGLCD.print("test.bmp",10,20);
delay(5000);
  myGLCD.clrScr();
myGLCD.drawBitmap(0,0,"test.raw",240,320,1);
myGLCD.print("test.raw",10,20);
delay(5000);
  myGLCD.clrScr();
myGLCD.drawBitmap(2,2,"ced.bmp",240,320);
myGLCD.print("ced",10,20);
delay(5000);

}

j'optien un griboulli

et quand j'utilise le code de la bibliotheque utft tinyfat . ca me dit fichier non trouvé

Quel hardware ??

Serialisez les problèmes - faites pour le moment un code qui ne gère que l’écran ou que la SD.

Ton code compile sans erreur ni warning?
Voilà la signature de drawBitmap

void	drawBitmap(int x, int y, int sx, int sy, bitmapdatatype data, int scale=1);
void	drawBitmap(int x, int y, int sx, int sy, bitmapdatatype data, int deg, int rox, int roy);

Et voilà ton code

myGLCD.drawBitmap(10,20,"miniwoof.bmp",120,160);

Pourquoi inclure Adafruit_GFX qui risque de mettre la pagaille?

J-Mj jackson , le code sd fonctione , dans la mesure ou j'arrive a creer des fichier text, les remplir et les lire .

fdufnews , Adafruit_GFX etait un essai .. infructueux , je l'ai enlevé . après , je suis prêt a me servir de n'importe quel bibliothèque ou matériel , ca fait des jour que je suis bloqué juste pour afficher une image .
pour la syntaxe :
" myGLCD.drawBitmap(0, 0, "/miniwoof.raw", 320, 240, 1);" , ne me genere pas d'ereur de compilation , alors que
" myGLCD.drawBitmap(0, 0, 320, 240, "/miniwoof.raw", 1);", en revanche m'en genére une

maintenant le code est juste ca

#include <UTFT.h>
#include <URTouch.h>

#include <SPI.h>
#include <SD.h>



//////////////////////////////////////////////////////////////////////
//sd 
// Chip select may be constant or RAM variable.
const uint8_t SD_CS_PIN = 53;
//
// Pin numbers in templates must be constants.
const uint8_t SOFT_MISO_PIN = 35;
const uint8_t SOFT_MOSI_PIN = 37;
const uint8_t SOFT_SCK_PIN = 36;

//ecran tft
 //model,cs,cd/rs,wr,rd,reset// rs option
UTFT    myGLCD(ITDB32S,38,39,40,41);
// ecran tactil
URTouch  myTouch( 6, 5, 4, 3, 2);
//myGLCD.begin(); 
//UTFT.InitLCD(240, 320); 
//
// Declare which fonts we will be using
extern uint8_t BigFont[];
extern uint8_t SmallFont[];


void setup()
{

  
  Serial.begin(115200);

  Serial.print("Initializing SD card...");

  // see if the card is present and can be initialized:
  if (!SD.begin(53)) {
    Serial.println("Card failed, or not present");
    // don't do anything more:
    while (1);
  }
  Serial.println("card initialized.");
delay(2000);
///////////////////////////////
  int xscreen = 0; // largeur ecrant
 int yscreen = 0;
 
  myGLCD.InitLCD (PORTRAIT);//(PORTRAIT);//(LANDSCAPE);//
  myGLCD.clrScr();

  myTouch.InitTouch();
  myTouch.setPrecision(PREC_MEDIUM);

  xscreen = myGLCD.getDisplayXSize();
  yscreen = myGLCD.getDisplayYSize();

 
  myGLCD.clrScr();
delay(2000);
 myGLCD.setFont(SmallFont);//(BigFont);
myGLCD.setColor(255,255,255);

}

void loop()
{
   
myGLCD.drawBitmap(0, 0, "/miniwoof.raw", 320, 240, 1);
delay(5000);

}

et dans la biliotheque UTFT Tinyfat il n'y a qu'un seul mot clef qui est loadBitmap
pourtant je me retrouve avec cet erreur.
"
'class UTFT' has no member named 'loadBitmap'; did you mean 'drawBitmap'?
"

Faudrait peut-être l'inclure cette librairie dans ton code.
Et créer une instance de UTFT_tinyFAT

Je voudrais pas faire mon désagréable mais la librairie est livrée avec des exemples de code.
Si tu regardes un peu comment ils sont écrit tu devrais assez rapidement comprendre pourquoi ton code ne fonctionne pas.