//-*************************************
//-************** EERead ***************
unsigned char EERead(unsigned char Addr)
{
RP1=1;
RP0=0;
EEADR=Addr;
RP0=1;
EEPGD=0;
RD=1;
while(RD==1);
RP0=0;
return EEDATA;
}
unsigned int EERead_Db(unsigned char Addr)
{
unsigned char RdByteLo,RdByteHi;
unsigned int rddbtmp;
RdByteHi = EERead(Addr);
RdByteLo = EERead(Addr+1);
rddbtmp = RdByteHi;
rddbtmp = rddbtmp << 8;
rddbtmp += RdByteLo;
return(rddbtmp);
}
//-*************************************
//-************** EEWrite ***************
void EEWrite(unsigned char Data,unsigned char Addr)
{
GIE=0;
EEADR=Addr;
EEDATA=Data;
WREN=1;
EECON2=0x55;
EECON2=0xAA;
WR=1;
while(WR==1);
EEIF=0;
GIE=1;
}
void EEWrite_Db(unsigned int Data,unsigned char Addr)
{
unsigned char WrByteLo,WrByteHi;
WrByteLo = Data;
WrByteHi = Data >> 8;
EEWrite (WrByteHi,Addr);
EEWrite (WrByteLo,Addr+1);
}