Arduino EEPROM设置初始化

电子说

1.3w人已加入

描述

步骤1:什么是EEPROM?

EEPROM是一个很小的存储器,即使在Arduino板断电时,其值也会保留。这就像一个很小的硬盘驱动器,因此您可以在下次启动设备时存储参数。根据Arduino板的类型,每个板上的可用存储量会有所不同,例如Uno有1024字节,Mega有4096字节,LilyPad有512字节。

重要的是要注意,所有EEPROM都有有限数量的写周期。 Atmel为Arduino上的EEPROM指定了大约100000写/擦除周期的预期寿命。这听起来好像很多写操作,但是如果您正在循环读取和写入内容,则很容易达到此限制。一旦一个位置被写入和擦除了太多次,它就会开始变得不可靠。它可能无法返回正确的数据,或者无法从相邻位返回值。

步骤2:导入库

要使用此内存,我们首先包括Arduino提供的库。该库提供了两种方法:读取和写入相应的操作。读取功能接受我们要读取的地址,而写入功能接受我们要写入的地址和值。

在我们的示例中,目标是在Arduino的每次启动时准备好一系列的设置,因此我们首先定义要用于存储的数组,并为每个对象定义地址。我们要存储的设置。在我们有1024个可用字节的芯片中,地址位置将从0到1023。

步骤3:设置初始化标志

EEPROM

初始设置默认值的技巧是使用地址之一作为指示,以了解是否已初始化设置。我使用了最后一个地址,因为它通常不用于其他任何地方。如果存储的值中有一个“ T”字符,loadSettings函数将首先检查该位置,如果没有,它将通过设置进行设置,并为每个值写入初始值。完成后,它将立即将跟踪初始化设置的位置的值设置为“ T”字符,并且下次打开Arduino电源时,我们将不再初始化值,而是将保存的数据读入

步骤4:更新设置

EEPROM

要更新值,我们可以使用我们拥有的write函数关于初始化,但更好的方法是使用提供的更新功能。该功能的作用是,它首先检查我们要保存的值是否与EEPROM中已经存在的值相同,如果不保存则不更新。这样,它会尝试减少写操作的次数,以延长EEPROM的寿命。

步骤5:尽情享受吧!

我希望这个Instructable对您有帮助,并且您设法学到了一些东西。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分