I want to use this library ExtendedDatabaseLibrary in conjunction with the standard Arduino SD library. I explore function like readblock and writeblock in "SD2CARD.cpp" but still i am confuse how to use them.
I really appreciate your suggestions
The read and write handlers which i want to use for SDcard
// Uncomment the line appropriate for your platform
#define TABLE_SIZE 512 // Arduino 168 or greater
// The number of demo records that should be created. This should be less
// than (TABLE_SIZE - sizeof(EDB_Header)) / sizeof(LogEvent). If it is higher,
// operations will return EDB_OUT_OF_RANGE for all records outside the usable range.
#define RECORDS_TO_CREATE 10
// Arbitrary record definition for this table.
// This should be modified to reflect your record needs.
struct LogEvent {
int id;
int temperature;
}
logEvent;
// The read and write handlers which i want to use for SDcard
void writer(unsigned long address, byte data)
{
//EEPROM.write(address, data);
}
byte reader(unsigned long address)
{
//return EEPROM.read(address);
}
// Create an EDB object with the appropriate write and read handlers
EDB db(&writer, &reader);
void setup()
{
Serial.begin(9600);
Serial.println("Extended Database Library + Arduino Internal EEPROM Demo");
Serial.println();
db.create(0, TABLE_SIZE, sizeof(logEvent));
Serial.print("Record Count: "); Serial.println(db.count());
Serial.println("Creating Records...");
int recno;
for (recno = 1; recno <= RECORDS_TO_CREATE; recno++)
{
logEvent.id = recno;
logEvent.temperature = recno * 2;
db.appendRec(EDB_REC logEvent);
}
Serial.print("Record Count: "); Serial.println(db.count());
for (recno = 1; recno < RECORDS_TO_CREATE; recno++)
{
db.readRec(recno, EDB_REC logEvent);
Serial.print("ID: "); Serial.println(logEvent.id);
Serial.print("Temp: "); Serial.println(logEvent.temperature);
}
}
void loop()
{
}