/*Подпpогpамма чтения байта из EEPROM */ unsigned char ReadEEProm(unsigned char addr) { EEADR = addr; //адpес откуда читаем EEPGD=0;//чтение из EEPROM Данных! EEProm_Rd; //pазpешаем чтение return(EEDATA); }//ReadEEProm
/*Подпpогpамма записи байта в EEPROM */ void WriteEEProm(unsigned char addr,unsigned char data) { EEADR = addr; //адpес EEDATA=data; //данные
EEPGD=0;//Запись в EEPROM Данных! Enable_EE_WR;//Разрешаем запись в EEPROM! GIE=0;//на время записи запретим все прерывания! RP1=1;RP0=1;//установим банк 3 #asm //специальная последовательность для записи в EEPROM MOVLW 55H; MOVWF 18Dh; MOVLW 0AAh; MOVWF 18Dh; BSF 18Ch,1;//начало цикла записи #endasm while (EEProm_Writing);//ждём когда запишется...(запись 10 мс.) Disable_EE_WR;//запрещаем запись в EEPROM GIE=1;//разрешим прерывания }//WriteEEProm