tone-generator/eeprom.cpp

42 lines
698 B
C++
Raw Normal View History

#include <Wire.h>
#include <Arduino.h>
#include <SparkFun_External_EEPROM.h>
#include "eeprom.hpp"
constexpr uint8_t ADDR = 0x50;
constexpr unsigned DELAY = 100;
static ExternalEEPROM mem;
static unsigned at = 0;
void eeprom::init() {
Wire.setClock(400000);
Wire.begin();
mem.setMemoryType(1025);
mem.begin();
}
unsigned eeprom::length() {
return mem.length();
}
void eeprom::jump(unsigned loc) {
at = loc;
}
void eeprom::read(char* data, unsigned len) {
mem.read(at, data, len);
at += len;
}
void eeprom::read(unsigned loc, char* data, unsigned len) {
mem.read(loc, data, len);
}
void eeprom::write(unsigned loc, const char* data, unsigned len) {
mem.write(loc, data, len);
}