Is it possible to read from SD card into Arduino's Flash memory

  • I'm trying to display images on an oled (0.96" monochrome, 128X64)
  • I've done it using examples where you program them directly on flash memory like this:
static const unsigned char PROGMEM image_array[] = { 
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ... 
  • However my goal is to display many different images, but only several fit in flash, even with Mega
  • So I got myself an SD card module thinking it should be easy to read from it and display

After searching a lot it seems like this is not easy at all, probably because the RAM is too small. So my question is whether it's possible to read a file from the SD card and store it on the Arduino's flash memory? The idea is to display it from there (using the Adafruit_SSD1306 lib), then replace it with a new image from the SD card and repeat?

Why not just read the multiple images directly from the SD card ?

Which "Arduino"? There are some 20 of them?

So read from SD card to RAM and then display? I've seen people struggling with this because the RAM is so small.

Depending ng and n exactly how you’re handling the Images, you could copy them directly to the display buffer.

Or, it might just necessary to buy a more powerful processor with more RAM.

I have an Arduino Uno R3 and Arduino Mega R3

For most practical purposes, no.
Only the bootloader can write to flash memory on an AVR. A sufficiently advanced ("larger") bootloader COULD read information from an SD card and put it in flash, but that's probably not what you want to do.

No.

@Railroader