hola a todos, estoy de vuelta jaja...quería consultar como de grabar en varias posiciones de la EEPROM, yo tengo este código:
#include <EEPROM.h>
char loquesea[] = "hola foreros";
const int Tamano_EEPROM = 13;
char buffer_EEPROM[Tamano_EEPROM];
void setup() {
Serial.begin(9600);
Serial.println("Grabando datos en la EEPROM...");
Escribir_EEPROM(loquesea);
}
void loop() {
Leer_EEPROM(buffer_EEPROM);
Serial.print("Estos son los datos de la EEPROM: ");
Serial.println(buffer_EEPROM);
delay(10000);
}
//Función para escribir en la EEPROM
void Escribir_EEPROM(char *UnString){
for(int i = 0; i < strlen(UnString); i++){
EEPROM.write(i, UnString[i]);
}
}
//Función para leer de la EEPROM
void Leer_EEPROM(char *bufferIn){
for(int i = 0; i < Tamano_EEPROM; i++){
bufferIn[i] = EEPROM.read(i);
}
}
void Borrar_EEPROM() {
//Limpiamos la EEMPROM byte a byte
for (int i = 0 ; i < EEPROM.length() ; i++) {
EEPROM.write(i, 0);
}
Serial.println("Memoria EEPROM borrada!");
}
el codigo funciona muy bien, pero como puedo hacer para grabar datos en las distintas posiciones sin tener q andar agregando funciones?? a ver si me explico, la forma q se me ocurrió es la siguiente:
const int Tamano_EEPROM1 = 13; //agrego tamaño de eeprom 1
char buffer_EEPROM1[Tamano_EEPROM1]; //agrego el buffer de eeprom 1 tambien..
//Función para escribir en la EEPROM
void Escribir_EEPROM1(char *UnString){
for(int i = 1; i < strlen(UnString); i++){
EEPROM.write(i, UnString[i]);
}
}
es agregar una funcion que escriba a partir de la posicion 1...y para leerla lo mismo:
//Función para leer de la EEPROM
void Leer_EEPROM1(char *bufferIn){
for(int i = 1; i < Tamano_EEPROM1; i++){
bufferIn[i] = EEPROM.read(i);
}
}
la consulta es, no hay otra manera mas rapida y limpia de poder hacer lo mismo?? porque pienso que si quiero garbar 10 posiciones me ocupo toda la flash en codigo y no se que mas ocuparia...
la idea es poder contar con una mini agenda dentro del codigo, o sea para agregar numeros leer y borrar numeros, pero bue eso tal vez es mucho mas avanzado...pero tal vez se pueda usar la mem eeprom pero de una forma mas practica y dinamica que haciendo copy paste de las funciones y cambiando 1 y 2 y 3 etcc...
aguardo comentarios gracias..
Any..