Go Down

Topic: HOW TO SPPED UP TRANSFERING IMAGES FROM SD CARD TO 5 INCH TFT (Read 285 times) previous topic - next topic

JAVAD_JAM

HI EVERYONE

I AM USING A 5 INCH TFT IN MY PROJECT. THE MAIN ISSUE IS THAT WHEN I TRANSFER THE IMAGES

FROM SD CARD TO THE LCD , EACH IMAGE TAKES ABOUT 3 TO 4  SECONDS TO GET LOADED.

HOW COULD I SPEED UP THIS TRANSFER???

THANKS

 

bDeters

There are two main bottlenecks to the image draw time. The transfer and the decompression (if the image is compressed). Depending on the content of the images, you can use a smaller image format, which makes the transfer time faster but may increase the complexity and time of the decompression.

What image formats are you currently using? (JPG, PNG, GIF)
What are the content of the images you want to display? (photographic, computer drawn, text)

JAVAD_JAM


 Hi

 I am using Raw Format Images.
 
 by the way my Arduino is SAM3X8E.  (Using 84 MegaHertz)
 
 The images are designed in Photoshop with 800*400 resolution & Jpeg Format ,

 I then change the Format to Raw Format.

 Then I read the Raw Format Images from the SD Card.

 But it takes 3-4 Seconds to Show each Image.

 Thanks

 

bDeters

Raw is uncompressed which means it's a big file so transfer time will be maximized while decompression is non existent. For photographic content I would recommend trying JPEG. There is at least one JPEG library that can help. You can play with the image quality setting in photoshop and get the file size down pretty small, but too small and you see artifacts in the image.

david_prentice

#4
Jun 29, 2017, 08:01 am Last Edit: Jun 29, 2017, 08:05 am by david_prentice
Go on.  Be realistic.  You have a big display.   It will take at least 800x480x50ns = 17.2ms to write the pixels on a 16-bit bus.   Only you know which TFT library you are using.

It depends on how fast you can read 768000 RAW bytes from your SD card.   What SPI speed are you using?   e.g. 768k @ 8MHz = 768ms.   Is your SD library using DMA?

A compressed image means less SPI transfers but significant CPU time e.g. to decode JPEG.

David.

JAVAD_JAM



      I am Using Libraries : UTFT_SDRAW  and SDFat

       The SPI speed is 84MHz divide per 2  ( using Maximum speed for SPI  )

     
      How could I find out that the SD Library is using DMA or NO  ???
 
      Please inform me .
 
     Thanks

david_prentice

What hardware are you using?   
The 40-pin Due Adapter is very fast.   If you are using a 40-pin Mega Adapter,   all the port pins are random.   

So the pixel write will be slow with the wrong Adapter.    I would expect the Mega to be faster with a Mega Adapter.

Oh,   you cannot do anything fast with UTFT.   It is designed to be Universal not efficient.

David.

JAVAD_JAM



   Yes , I am using 40-Pin Due Adapter .

   So What Library you suggest to be efficient
 
   What Library should I use instead of UTFT_SdRaw

   

Go Up