41 #include PLATFORM_HEADER
46 #define EE_HW_ADDRESS 0xA0
47 #define EE_PAGESIZE 32
48 #define EE_PAGEMASK 0x1F
49 #define EE_MAX_TRIALS 300
71 if(trials++ == EE_MAX_TRIALS) {
75 }
while((SC2_STAT(SC_TWIRXNAK)) == SC_TWIRXNAK);
100 unsigned int curaddr;
103 for(i = 0; i < size; i++) {
106 if(i == 0 || (curaddr & EE_PAGEMASK) == 0) {
121 if(i == size - 1 || (curaddr & EE_PAGEMASK) == EE_PAGEMASK) {
155 for(i = 0; i < size; i++) {
void eeprom_read(eeprom_addr_t addr, unsigned char *buf, int size)
Read data from the EEPROM.
void i2c_write(uint8_t data)
Send a byte to I2C bus.
void i2c_stop(void)
Generate I2C STOP condition.
uint8_t i2c_read(int ack)
Read a byte from I2C bus.
void i2c_start(void)
Generate I2C START condition.
void eeprom_write(eeprom_addr_t addr, unsigned char *buf, int size)
Write a buffer into EEPROM.
void eeprom_init(void)
Initialize the EEPROM module.