/* * at24cxx.c * * Created on: Mar 3, 2024 * Author: gxms0 */ #include "at24cxx.h" /** 在这里对eeprom读写操作,根据长度什么的进行操作 */ uint16_t at24xcc_read(AT24C_ptr ptr,uint16_t reg,uint8_t *data, uint16_t len) { uint16_t state = 0; state = i2c_read(ptr->i2c, ptr->address, reg, data, len); return state; } uint16_t at24xcc_write(AT24C_ptr ptr,uint16_t reg,uint8_t *data, uint16_t len) { uint16_t state = 0; state = i2c_write(ptr->i2c, ptr->address, reg, data, len); return state; } /* 生成一个,并且有指针 */ void at24cxx_init(AT24C_ptr ptr,I2C_ptr i2c,uint16_t address) { //AT24C_ptr ptr = (AT24C_ptr)malloc(sizeof(AT24C_t)); ptr->address = address; ptr->i2c = i2c; //读写绑定 ptr->read = &at24xcc_read; ptr->write = &at24xcc_write; //return ptr; }