“EEPROM:update()”的版本间的差异
来自YFRobotwiki
(以“:EEPROM {| border="0" cellpadding="20" width="100%" |- |width="100%" valign="top" align="left"| <font color="olivedrab" size="+3">'''update()'''</font...”为内容创建页面) |
|||
(未显示1个用户的2个中间版本) | |||
第10行: | 第10行: | ||
<font color="orange" size="+1">'''描述'''</font> | <font color="orange" size="+1">'''描述'''</font> | ||
− | + | 写一个字节到EEPROM。该值如果不同于已保存在同一地址的值时才会写入(更新该地址的值)。 | |
− | |||
− | + | <font color="orange" size="+1">'''语法'''</font> | |
− | + | EEPROM.update(address, value) | |
− | |||
− | <font color="orange" size="+1">''' | + | <font color="orange" size="+1">''' 参数'''</font> |
− | + | address: 写入的位置,从0开始 (int 整型) | |
− | <font color="orange" size="+1">''' | + | value: 写入的值,值范围0~255 (byte型) |
+ | |||
+ | |||
+ | <font color="orange" size="+1">''' 返回值'''</font> | ||
+ | |||
+ | 无 | ||
+ | |||
+ | |||
+ | <font color="orange" size="+1">'''注意'''</font> | ||
+ | |||
+ | EEPROM一次写入需要3.3ms才能完成。EEPROM内存有100000次 写/擦除的固定生命周期, 所以如果写入的数据不经常更改的话,使用该函数代替[[EEPROM:write()|write()]]函数可以节省使用周期。 | ||
+ | |||
+ | |||
+ | <font color="orange" size="+1">'''示例'''</font> | ||
<pre style="color:dimgray"> | <pre style="color:dimgray"> | ||
#include <EEPROM.h> | #include <EEPROM.h> | ||
− | |||
− | |||
− | |||
void setup() | void setup() | ||
{ | { | ||
− | + | for (int i = 0; i < 255; i++) { | |
+ | // this performs as EEPROM.write(i, i) | ||
+ | EEPROM.update(i, i); | ||
+ | } | ||
+ | for (int i = 0; i < 255; i++) { | ||
+ | // write value "12" to cell 3 only the first time | ||
+ | // will not write the cell the remaining 254 times | ||
+ | EEPROM.update(3, 12); | ||
+ | } | ||
} | } | ||
void loop() | void loop() | ||
{ | { | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
2015年7月14日 (二) 11:14的最后版本
update()
描述 写一个字节到EEPROM。该值如果不同于已保存在同一地址的值时才会写入(更新该地址的值)。
EEPROM.update(address, value)
address: 写入的位置,从0开始 (int 整型) value: 写入的值,值范围0~255 (byte型)
无
EEPROM一次写入需要3.3ms才能完成。EEPROM内存有100000次 写/擦除的固定生命周期, 所以如果写入的数据不经常更改的话,使用该函数代替write()函数可以节省使用周期。
#include <EEPROM.h> void setup() { for (int i = 0; i < 255; i++) { // this performs as EEPROM.write(i, i) EEPROM.update(i, i); } for (int i = 0; i < 255; i++) { // write value "12" to cell 3 only the first time // will not write the cell the remaining 254 times EEPROM.update(3, 12); } } void loop() { } |
更多建议和问题欢迎反馈至 YFRobot论坛