Страница 1 из 1

Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Пт янв 06, 2017 11:12:15
bondyara
Столкнулся с непонятным поведением МК.
Функционирование прошивки зависит от содержимого EEPROM (если ключевой байт не равен 0x00 - работает). Некоторое время работает (вкл/выкл. несколько раз), затем перестает.
Читаю программатором память - ключевой байт сброшен в 0x00, также появляются артефакты по неиспользуемым адресам памяти.
В прошивке нет кода, пишущего в память, только чтение, так что ошибка логики исключается.
После записи памяти проверяю содержимое - все точно.
Скорость программатора на минимуме - ошибок чтения быть не должно, да и неработающая прошивка говорит об изменении памяти.

Что тогда?

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Пт янв 06, 2017 12:44:25
koms48
Тоже мне бином Ньютона. Защита от халявы поставлена. Счетчик включений в ЕЕПРОМе сидит.
В прошивке нет кода, пишущего в память, только чтение - кто сказал что нет, суслика можно и не видеть, а он есть. И воще вопрос ни о чём.

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Сб янв 07, 2017 10:29:35
Jack_A
Да, ответ ни о чем.
СпойлерНовичку простительно - придя на форум, считают себя Ст.Джобсами, как минимум, среди недоумков. Это не наезд - так, мягкое внушение. :)
Может быть, дело в питании. При плавной подаче-снятии питания могут быть такие ситуации, когда в промежуточном состоянии (0...5В) МК как бы "полуработает", т.е. он вроде уже и МК, только не совсем - разные "органы" его оживают не одновременно. Пытаться найти логику поведения в такой ситуации = предсказать траекторию прыжков раненого тореаодорм быка. Решение - не надо экономить 5 копеек, надо установить супервайзер питания, который ресетом разрешает работу только при установившемся питании. Кстати, в доке это прописано. И второе - разрушаются ( по моим наблюдениям ) обычно начальные ячейки EEPROM, потому я в своих изделиях ( тиражи - сотни экз. ) использовал начиная приблизительно с 0x20 . В самом МК тоже есть BOD (Brown-out Detector), но я его не использовал, потому не могу охарактеризовать.
Вторая причина - опять же в питании. Сильная помеха может проникать в кристалл и, независимо от отсутствия команд записи, непосредственно воздействовать на EEPROM . Правильная разводка, экранирование, фильтрация - эта азбука проектировщика д. быть соблюдена. Надеюсь, керамика > 0,1 mkF непосредственно у МК стоит ?

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Сб янв 07, 2017 20:55:51
BOB51
Либо аппаратная ошибка (питание ниже 2,7вольта при работе с еепром на стирание/запись) либо программный глюк.
Корректно записанная программатором информация искажаться не должна.
На крайний случай схемы BOD и POR с соответствующим программным контролем
флагов вполне справляются с помехами по питанию.
8)

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 03:11:10
koms48
Всё это гадания. Какое питание неизвестно. Исходник или прошивка засекречена. О чём говорить?

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 09:06:30
Demiurg
Основные правила работы с EEPROM: включить BODEN, не использовать первый байт EEPROM, после работы с EEPROM указатель на первый байт. Если и МК и насрет в этот байт, то мы его все равно не используем. Учитываем, что запись 1 байта длится 8 мс. Если используется WATCHDOG, то перед записью в EEPROM либо отключать либо считаем байты и время записи и настраиваем сторожевой таймер на соответствующее время с запасом.

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 09:23:16
koms48
Друзья Кота, грызущие канифоль! Все хорошо, теорию погрызли. И? Уж коль пошла такая котовасия, требую от ТС выложить причину сей котовасии. Asm or hex, что есть. А там посмотрим. Нехрен тухлый вискас перетирать.

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 10:01:49
Jack_A
Ничего требовать не нужно. Хозяин - в баре, т.е. ТСу если обсуждение помогло, то хорошо, нет - продолжит консультацию. А по хексу анализировать прогу, не зная конкретного окружения - удовольствие ниже среднего, "есть тьма искусников — я не из их числа" © Чацкий :) Рекомендации, imho, были достаточно разумными и полезными не только ТСу.

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 10:42:46
koms48
В данном разе окружение МК не требуется, и ковыряние в хексе (в данном разе) не так страшно. Ну и ладно, не хотитЁ, как хотитЁ.

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 11:53:15
Jack_A
Телепат. Видит, чем управляет дивайс, какое питание, разводка платы, помеховая обстановка. Считать, что ошибка работы дивайса = 100% ошибка в проге может только очень начинающий embedder .
А ТСу это уже до лампы, он уже Рождество отметил, ему хорошо :)

Re: Самопроизвольное искажение EEPROM ATtiny13

Добавлено: Вс янв 08, 2017 12:13:29
koms48
Не надо с ног на голову батон крошить. Про ошибку в проге я не говорил. Было 2 мнения. Питание и защита от халявы. Пока хекса не будет я тут не ходец.