I'm making a slow control system using Arduino Mega. The Arduino board needs to measure temperature, magnetic field, switch on/off LEDs, and exchange messages with an external system via UART. All of the measurement data needs to be recorded in a microSD card with accurate and precise(1ms or smaller) timestamps.
At a glance the tasks seem to require a RTC. However, I'm not able to put a battery on my peripheral board due to a space limitation. Then it would make more sense that I don't use a RTC but just count time using a Arduino timer. However, I wonder if timing count with a Arduino timer is reliable.
With the combination of a RTC and Arduino timer input capture mode, one can achieve a timing resolution of 1/32k seconds. Without the RTC, Arduino timer can prescale system clock and count time. Without using AVR library, would the timestamping be accurate enough?