I'm working with an Atmega328P microcontroller. This microcontroller will be generating data and will be storing that data onto an SD card. My project will also be battery powered. My research has shown that writing to an SD card is relatively expensive. Especially due to the fact that I'm using a 225mAH battery with a 120mA limited power regulator.
I've read that a common method for saving power is to buffer write commands into a single write. This seems relatively straightforward.
However, I'm now running into the problem that the Atmega328p only has 2kB of RAM. Thus, I really have limited buffer space.
So my question: would it be a viable technique to purchase a dedicated flash memory / RAM IC to increase buffer space? I'm curious about the practicality of this and how difficult it would be to implement.
Any thoughts? I know the obvious answer would be to purchase a microcontroller with more RAM, but I'm trying to stick with this microcontroller such that the project is Arduino language compatible.