A screenshot of a computer program

Description automatically generated

A screenshot of a computer program

Description automatically generated

A screenshot of a computer

Description automatically generated

 

//Libraries

#include <EEPROM.h>//https://github.com/espressif/arduino-esp32/tree/master/libraries/EEPROM

 

//Constants

#define EEPROM_SIZE 512

 

void EEwriteFloat(int Addr, float Val)

{

  EEPROM.writeFloat(Addr, Val);

  EEPROM.commit();

}

 

void EEwriteInt(int Addr, int Val)

{

  EEPROM.writeInt(Addr, Val);

  EEPROM.commit();

}

 

void EEwriteByte(int Addr, uint8_t Val)

{

  EEPROM.writeByte(Addr, Val);

  EEPROM.commit();

}

 

void EEwriteStr(int Addr, String Val)

{

  EEPROM.writeString(Addr, Val);

  EEPROM.commit();

}

 

float EEreadFloat(int Addr)

{

  float Val = EEPROM.readFloat(Addr);

  //EEPROM.get(EELevelAddr, ReadParam);

 

  //Serial.println(String(Val));

  return Val;

  //EEPROM.end();

}

 

int EEreadInt(int Addr)

{

  int Val = EEPROM.readInt(Addr);

  //EEPROM.get(EELevelAddr, ReadParam);

 

  //Serial.println(String(Val));

  return Val;

  //EEPROM.end();

}

 

uint8_t EEreadByte(int Addr)

{

  uint8_t Val = EEPROM.readByte(Addr);

  //EEPROM.get(EELevelAddr, ReadParam);

 

  //Serial.println(String(Val));

  return Val;

  //EEPROM.end();

}

 

String EEreadStr(int Addr)

{

  String Val = EEPROM.readString(Addr);

  //Serial.println(Val);

  return Val;

  //EEPROM.end();

}

 

void setupEEPROM()

{

  //Init EEPROM

  EEPROM.begin(EEPROM_SIZE);

  // End EEPROM

  //EEPROM.end();

}

 

// cmd

// testing Cmd

// cmd,addr,val,datatype\n

 

// W,10,1234,I

// R,10,0,I

 

// W,10,34,B

// R,300,0,B

 

// W,10,1.234,F

// R,10,0,F

 

// W,10,min,S

// R,10,0,S

 

//Response

//$R,Addr,Val,Status#\r\n

//$W,Addr,Val,Status#\r\n

//$C,Cmd Format Error!#\r\n

 

A screenshot of a computer

Description automatically generated