#include <REGX52.H>
#include "EEPROM.h"
#include "I2C.h"
#include "Display.h"
#define EEPROM_ADDR 0xA0
BOOL EEP_Read(USHORT nAddr, PVOID pData, int nData)
{
BYTE aAddr[1];
aAddr[0] = LOBYTE(nAddr);
Display_On(FALSE);
EA = 0;
i2c_writereadblock(EEPROM_ADDR + 2 * HIBYTE(nAddr), aAddr, 1, pData, nData);
EA = 1;
Display_On(TRUE);
return TRUE;
}
BOOL EEP_Write(USHORT nAddr, VOID CONST* pData, int nData)
{
BYTE CONST* pbData = (BYTE CONST*)pData;
BYTE lAddr = LOBYTE(nAddr);
while (nData--) {
BYTE aData[2];
aData[0] = lAddr++;
aData[1] = *pbData++;
Display_On(FALSE);
EA = 0;
i2c_writeblock(EEPROM_ADDR + 2 * HIBYTE(nAddr), aData, 2);
EA = 1;
Display_On(TRUE);
}
return TRUE;
}