16+
Суббота
16 февраля
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры AVR

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Boвa  (12.01.2019 17:48 - 12.01.2019 23:53) , в ответ на когда МК работает при нештатном напряжении питания это вы считаете что там записи нет, а реально может совсем по другому получиться автор: AlexG
Контроллер при сбое тактирования может случайно забежать в функцию записи в ЕЕPROM, и выполнить запись того мусора который есть в стеке, но вероятность этого можно снизить если в начале функции записи проверять специальную переменную в ОЗУ. 
Если в переменной EEPROM_WR код отличается от ключевого (например от 0x5A), то игнор записи. В процессе записи переменная EEPROM_WR сразу же сбрасывается в 0.
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{
if(EEPROM_WR!=0x5A)
 {NaLamansh();}// какой-нибудь код для приведения контроллера в 
               // адекватное состояние или джамп на ресет  
 else {
    EEPROM_WR=0;
   ...//код записи в EEPROM
   } 
}
Естественно перед вызовом функции записи следует каким-то образом устанавливать переменную EEPROM_WR (желательно замысловатым). Хотя конечно никакой гарантии от сбоев все равно нет.
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXIX