Hello. I’m planning a project with Arduino Mega and two displays (128x128 multi-color, and 128x64 monochrome). I will record real-time data, probably store it in SRAM (but I also will save it on SD card) and display it as a text on 128x64 display with u8glib (though there will be no scrolling, so all data will fit within a screen). Also I will display simple geometric animation on 128x128 display with Adafruit-GFX-Library. How much SRAM could be possibly used by this? I know that the memory for displays can be counted as 12864/8 (1K) and 128128/8 (2K). But can it require more, i.e. can animation require more SRAM?
You could get external RAM for the Mega2560, still might. That would give you 56K heap space.
Try multiplying 128 x 128 x desired color depth to see how real storing that in RAM will be.
Smart move is buffering 128 x color depth bits image strips stored in flash (2560 has 256K flash, little room?) or SD and writing pictures a strip at a time. If it takes 40ms, human eyes can't follow 25FPS.
Currently, I'm planning a list of components to buy, and I actually want to save some money by not getting external RAM, so I'm wondering if I can make my project work with just 8K. The color depth will be "8-bit color" I guess, so the "simplest" one. I only will use 4 total plain colors (I will animate filled circle sector like so: https://i.stack.imgur.com/jwZ9k.png). And there will be shown only one color at a time on a display. But even with 8-bit color, it gives me 1281288/8=16K, could this really be so? Or maybe this will happen only if I actually use all possible 256 colors on a single screen (which I won't)?
You choose a color depth, it should be 2, 4 or 8 to make life easier.
How do you normally send the image to the display? Byte by byte serial or byte by byte parallel?
Either way, the display only gets sent 1 byte at a time. Figure out how fast you need to have them ready. Pulling data from flash takes 1 more cycle than from RAM. You need to supply 16384 pixels but you don't need to have them all in RAM at the same time. Don't expect PC graphics speed even with a high-end ARM board. AVR is slower, expect that and get what you can.