Loading...

Learning   Examples | Foundations | Hacking | Links

示例 > EEPROM 库

EEPROM 写入

Auduino 开发板上的微控制器有 512 字节的 EEPROM 存储,就像一个微型硬盘一样,可在电源关闭时保存数据。

这个例子演示了怎样使用 EEPROM.write() 函数来储存从模拟输入 0 读入的值。在开发板关闭的时候,这些值仍然储存在 EEPROM 中,并且可供其它程序读取。

硬件需求

  • Arduino 开发板

电路

这个例子没有电路。

图片绘制采用 Fritzing. 更多的电路示例,请参考 Fritzing 项目页面  

代码

/*
 * EEPROM 写入
 *
 * 将从模拟输入 0 读入的值写入 EEPROM 中。
 * 在开发板关闭的时候,这些值仍然储存在 EEPROM 中,
 * 并且可供其它程序读取。
 */


#include <EEPROM.h>

// EEPROM 的当前地址
// 即我们将要写入的地址
int addr = 0;

void setup()
{
}

void loop()
{
  // 由于模拟输入的值域是在 0 到 1023 之间,
  // 而 EEPROM 的每个字节只能存储 0 到 255,
  // 需要将模拟输入值除 4。
  int val = analogRead(0) / 4;
 
  // 将处理过的字节写入 EEPROM。
  // 这些值会在开发板电源关闭的时候仍然保存。
  EEPROM.write(addr, val);
 
  // 前进到下一个地址。
  // EEPROM 只有 512 字节,地址从 0 到 511
  // 所以如果地址等于 512,应该回到 0
  addr = addr + 1;
  if (addr == 512)
    addr = 0;
 
  delay(100);
}

请参阅