美文网首页
Esp8266、Esp32上Arduino中EEPROM的相关经

Esp8266、Esp32上Arduino中EEPROM的相关经

作者: 大林哥 | 来源:发表于2024-05-16 09:53 被阅读0次
    1. String 不能直接用于 EEPROM.put() 和 EEPROM.get() 的存取,但至少可以通过下列示例代码实现:

      String str = "你好,hello !"; // 待储存到 EEPROM 的数据
      
      // 定义一个 char[] 数组 charArray,用于储存转换后的 str 数据
      // 这里的 60 是 str 预估长度,至少需要 不小于 str.length()+1;
      // 但是注意:直接用str.length()+1是不行的,会在 EEPROM.put(100, charArray); 这一行报错
      char charArray[60];
      strcpy(charArray, str.c_str());
      EEPROM.put(100, charArray);
      EEPROM.commit();
      
      // 读取上面储存的值:
      char str2[60]; // 可大于 60
      EEPROM.get(100, str2);
      Serial.print("str2:");Serial.println(str2);
      
    2. char*与char[]的存取需要对应,不能混淆

    3. EEPROM.commit(); 与 EEPROM.end(); 都会提交待写入数据,但是 EEPROM.end();会结束 EEPROM, 再次使用需要重新EEPROM.begin(1024); 而EEPROM.commit(); 之后还可以继续

    相关文章

      网友评论

          本文标题:Esp8266、Esp32上Arduino中EEPROM的相关经

          本文链接:https://www.haomeiwen.com/subject/htbbfjtx.html