facebook pixel מדריך: ספריה - EEPROM - פונקציית ()put - www.4project.co.il
Main logo www.4project.co.il
כל הרכיבים לפרוייקט שלכם
עגלת קניות

העגלה ריקה

לפי הנחיות פיקוד העורף, עקב המצב הביטחוני, המחסן סגור.
נוכל לטפל בהזמנות שלכם לאחר שהמצב ירגע וינתן אישור להפעיל מקומות עבודה לא חיוניים.
יחד ננצח!

ספריה - EEPROM - פונקציית ()put


2024-11-25 10:20:52
פונקציית ()EEPROM.put כותבת כל סוג נתון או אובייקט ל-EEPROM.


תחביר

קוד: בחר הכל
EEPROM.put(address, data);

פרמטרים:
address - מיקום לביצוע הכתיבה, החל מ-0. מסוג int
data - משתנה לכתיבה, יכול להיות מסוג בסיסי כמו float או מסוג מורכב כמו struct

הפונקציה מחזירה מצביע למשתנה שנכתב.

פונקציה זו משתמשת ב-()EEPROM.update לביצוע הכתיבות, כך שהיא לא מבצעת כתיבה אם הערך לא השתנה.

דוגמה

קוד: בחר הכל
/***
    eeprom_put example.

    This shows how to use the EEPROM.put() method.
    Also, this sketch will pre-set the EEPROM data for the
    example sketch eeprom_get.

    Note, unlike the single byte version EEPROM.write(),
    the put method will use update semantics. As in a byte
    will only be written to the EEPROM if the data is actually
    different.

    Written by Christopher Andrews 2015
    Released under MIT licence.
***/

#include <EEPROM.h>

struct MyObject {
  float field1;
  byte field2;
  char name[10];
};

void setup() {

  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  float f = 123.456f;  //Variable to store in EEPROM.
  int eeAddress = 0;   //Location we want the data to be put.


  //One simple call, with the address first and the object second.
  EEPROM.put(eeAddress, f);

  Serial.println("Written float data type!");

  /** Put is designed for use with custom structures also. **/

  //Data to store.
  MyObject customVar = {
    3.14f,
    65,
    "Working!"
  };

  eeAddress += sizeof(float); //Move address to the next byte after float 'f'.

  EEPROM.put(eeAddress, customVar);
  Serial.print("Written custom data type! \n\nView the example sketch eeprom_get to see how you can retrieve the values!");
}

void loop() {
  /* Empty loop */
}



ראו גם:

()EEPROM.write
()EEPROM.read
()EEPROM.update
()EEPROM.get

פירוט שפת תכנות לסביבת Arduino


עמוד זה הוא תרגום של ()EEPROM.put לפי רישיון Creative Commons Attribution-ShareAlike 3.0.