我正在设计一种设备,它可以随着温度的变化自动调整它的物理位置。如果设备关闭或电源断开,设备需要记住它的最后温度和位置。我有能力将这些值存储在 EEPROM 中,但问题是位置和温度可能变化非常迅速。如果我在每次更改后将 temp 和 pos 写入 EEPROM,那会(1)稍微减慢固件速度,(2)可能在一两年后杀死 EEPROM。所以在我看来,我的选择如下......
1)在断电后使用电容器/电池使设备保持供电很短的时间,以便我只能在那个时候将值写入 EEPROM。我不喜欢这个,因为董事会有点耗电,这需要一个很大的上限。而且我没有大量的可用空间。而且我不希望增加电池和电池座/或大容量的成本。
2) 使用 F-RAM 而不是 EEPROM,这样我就可以写入数万亿次而不会磨损它。我不喜欢这个选项,因为 FRAM 比 EEPROM 贵很多,而且这是用于生产产品(不仅仅是一个)。
3)每5分钟左右只写一次位置和温度。这样我总是记录了一个相当新的位置/温度,但我不是每秒都在写,所以我的程序不会减慢,EEPROM 也不会死得那么快。这似乎是我最好的选择。
还有其他人有什么我没有想到的建议吗?