Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: EEPROM в 16а876
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
Antonii
Использую pic16f876a, делаю устройство регулирующее неважно какие параметры. нужно сохранять эти параметры и после отключения питания(4 байта). Решил сохранять в EEPROM.
вопрос:
сколько циклов перезаписи в этом самом EEPROM е? в даташите написана интересная цифра, 100к! 07.gif
это понимать надо как 100 000 циклов? или как?
Ilya_A
Цитата(Antonii @ Apr 3 2008, 06:54) *
Использую pic16f876a, делаю устройство регулирующее неважно какие параметры. нужно сохранять эти параметры и после отключения питания(4 байта). Решил сохранять в EEPROM.
вопрос:
сколько циклов перезаписи в этом самом EEPROM е? в даташите написана интересная цифра, 100к! 07.gif
это понимать надо как 100 000 циклов? или как?

Так точно. Большее количество циклов не гарантируется, хотя может прослужить и 200к и 500к.

Все зависит от того как часто у вас отключается устройство. Лучше конечно сделать постоянный сдвиг. У микрочипа есть аппноут эмуляции ЕЕПРОМА :
http://www.microchip.com/stellent/idcplg?I...ppnote=en530593
там все пишеться во флэш память программ, и как раз реализован такой алгоритм. Можно позаимствовать саму идею сдвига wink.gif

(они утверждают что срок службы увеличиваеться в 500 раз)
Antonii
Цитата(Илья @ Apr 2 2008, 17:48) *
Так точно. Большее количество циклов не гарантируется, хотя может прослужить и 200к и 500к.

Все зависит от того как часто у вас отключается устройство. Лучше конечно сделать постоянный сдвиг. У микрочипа есть аппноут эмуляции ЕЕПРОМА :
http://www.microchip.com/stellent/idcplg?I...ppnote=en530593
там все пишеться во флэш память программ, и как раз реализован такой алгоритм. Можно позаимствовать саму идею сдвига wink.gif

(они утверждают что срок службы увеличиваеться в 500 раз)

спасибо за ссылочку, а то я уже алгоритмик почти накидал, правда опасаюсь ошибиться, наверняка в этом ЕЕПРОМЕ есть камушки подводные, а протестировать 100к раз на железе как то несерьезно smile.gif
etoja
Проверить число циклов программирования вполне реально. Сами такое делали.
Вот фрагменты программы на С (hpdpic):
// --------------------------------------------------------------------------------
unsigned char eeprom_read(unsigned char xaddr) // чтение из EEPROM
{
unsigned char ch;
EEADR = xaddr;
EEPGD = 0;
EECON1 |= 1;
while((EECON1 & 1)!=0);
ch = EEDATA;
return(ch);
}
// --------------------------------------------------------------------------------
void eeprom_write(unsigned char xaddr, unsigned char xdata) // запись в EEPROM
{
EEADR = xaddr;
EEDATA = xdata;
EEPGD = 0; // доступ к EEPROM
EECON1 |= 4;
GIE = 0;
EECON2 =0x55;
EECON2 =0xAA;
EECON1 |= 2;

while((EECON1 & 2)!=0);

GIE = 1;
EECON1 &= ~4;
}
// --------------------------------------------------------------------------------
blackbit
Цитата(etoja @ Apr 7 2008, 09:50) *
Проверить число циклов программирования вполне реально. Сами такое делали.

Как раз не "вполне реально". Число циклов зависит от T эксплуатации, значения Vdd и качества кремния в партии. Поэтому приводится для предельных условий + конструкторский запас. Так что проверки на столе при комнатной температуре особого смысла не имеют: предельное число получится больше заявленного и будет меняться от партии к партии.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.