Blame | Last modification | View Log | SVN | RSS feed
/*********************************************************************** Functions for reading and writing to EEPROM.*********************************************************************** FileName: $HeadURL: https://svn.auml.se/svn/HomeAutomation/trunk/EmbeddedSoftware/PIC/Include/EEAccess.c $* Last changed: $LastChangedDate: 2006-11-14 20:15:02 +0100 (Tue, 14 Nov 2006) $* By: $LastChangedBy: johboh $* Revision: $Revision: 94 $********************************************************************/#include <p18cxxx.h>#include <EEaccess.h>BYTE EERead(WORD addr){EEADRH=(BYTE)(addr>>8);EEADR=(BYTE)(addr & 0xFF);EECON1bits.EEPGD=0;EECON1bits.CFGS=0;EECON1bits.RD=1;return EEDATA;}void EEWrite(WORD addr,BYTE data){PIR2bits.EEIF=0;EEADRH=(BYTE)(addr>>8);EEADR=(BYTE)(addr & 0xFF);EEDATA=data;EECON1bits.EEPGD=0;EECON1bits.CFGS=0;EECON1bits.WREN=1;INTCONbits.GIE=0;EECON2=0x55;EECON2=0xAA;EECON1bits.WR=1;INTCONbits.GIE=1;while(!PIR2bits.EEIF);EECON1bits.WREN=0;}