ClrBit(EECON1,2);//сбрасываем WREN
SetBit(EECON1,1);//запуск цикла записи
EECON2=0x55;//обязательная последовательность
GIE=0;//запрет приреваний
if(GIE) CARRY=1;//запоминаем, если были приревания
CARRY=0;//используем регистр для запоминания наличия прерываний
SetBit(EECON1,2);//разрешаем запись в EEPROM
while(WR) continue;//ожидаем пока завершится предыдущий цикл записи
void ee_write(unsigned char a ddress, unsigned char data)
SetBit(EECON1,0);//разрешаем чтение
while(WR) continue;//пока идёт цикл записи, читать из EEPROM нельзя!
unsigned char ee_read(unsigned char address)
В даташите к микроконтроллеру указан пример кода для работы с EEPROM на ассемблере. Здесь же приведу пример на С:
и два регистра управления EECON1 и EECON2.
EEDATA для данных
EEADR адрес ячейки
При работе с энергонезависимой памятью контроллера участвует 4 регистра:
Во все микроконтроллерах есть своя энергонезависимая память, которая позволяет сохранить немного данных, когда контроллер выключен. В этой статье будет рассказано, как работать с EEPROM на примере PIC16F628A.
Сайт об электронике и не только
Alex_EXE » EEPROM в PIC микроконтроллере
Комментариев нет:
Отправить комментарий