Estoy diseñando un dispositivo que ajusta automáticamente su posición física a medida que cambia la temperatura. Si el dispositivo se apaga o se desconecta la alimentación, el dispositivo debe recordar su última temperatura y posición. Tengo la capacidad de almacenar estos valores en EEPROM, pero el problema es que la posición y la temperatura podrían estar cambiando muy rápidamente. Si tuviera que escribir la temperatura y la posición en EEPROM después de cada cambio, eso (1) ralentizaría un poco el firmware y (2) probablemente mataría la EEPROM después de un año o dos. Entonces, como lo veo, mis opciones son las siguientes ...
1) use un condensador / batería para mantener el dispositivo encendido por un corto tiempo después de que se pierde la energía para que pueda escribir los valores en EEPROM solo en ese momento. No me gusta esto porque el tablero tiene un poco de hambre de energía y esto requeriría una gran capitalización. Y no tengo un montón de espacio libre. Y no quiero el costo adicional de una batería y un soporte de batería / o una tapa grande.
2) use F-RAM en lugar de EEPROM para poder escribirle billones de veces sin desgastarlo. No me gusta esta opción porque FRAM es bastante más caro que EEPROM y esto es para un producto de producción (no solo uno).
3) Solo escriba la posición y la temperatura cada 5 minutos más o menos. De esa manera, siempre tengo una posición / temperatura bastante reciente registrada, pero no escribo cada segundo, por lo que mi programa no se ralentiza y la EEPROM no morirá tan rápido. Esta parece ser mi mejor opción.
¿Alguien más tiene alguna sugerencia en la que no esté pensando?