All modern displays whether GLCD, TFT, OLED have their own internal display memory.You write once. The screen will display that data forever.For the best experience, you only update when something changes. And you only update the minimal area of the screen.Yes, an OLED will "screen burn" if you display the same data continuously. So there is a good argument for changing the picture every few hours.David.
Yes, you can replace with different screen saver(s). Or you can just switch the display off. It will wake up with the same picture.Regarding text. You can just move the text every few hours.Your original question implied redrawing the whole screen every few milliseconds. Since the data / picture will be unchanged (most of the time) it is a pointless exercise.You can still execute your loop() continuously. Just set a flag when data changes.Only redraw when the flag is set.David.
You can vertical scroll most OLEDs in software. Some will horizontal scroll or diagonal scroll in hardware. This will prevent any screen burn.Life is much easier if you say which OLED controller you are using. Monochrome, Grayscale or Colour.David.
If you can, invert the whole thing on a regular basis. So for an hour it would be white text on a black background, then an hour later, black text on a white background.Even if its done once every few hours on a simple counter, or even once a day, as long as the pixels all get their chance to be black and white you wont get specific burn in.