Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: EEPROM в ATTINY2313
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
big_nikolas
Всем привет!
У меня возник вопрос. Написал прогу для attiny2313 в том числе и п/п чтения/записи EEPROM. Так вот, опробовали всё работает. Прошло 4 месяца и тю-тю перестало работать. Разбираюсь в чём дело. Не работает EEPROM. (подумал перестарался с записью) но цикл 100000. ладно пусть. Взял новый контроллер перепаял таже фигня. Программа напроч отказывается работать с EEPROM. Причём есть несколько версий моих программ на которых я отлаживал, всё было нормально. Но тут всё перестало работать.
Вчём дело? Я пока в тупике.
Плата вроде работает, т.к. работа осуществляется по RS-485 (канал работает). help.gif
_artem_
Прерывания во время записи в еепром запрешаете?
evg123
Возможно есть какой-то глюк в проге, который случается крайне редко. Возможно надо установить кое-где "критические секции", чтобы преырвания не конфликтовали с основной программой. Возможно частота кварца немного выше, чем максимальное (AVR тогда может выкинуть какой-нибудь фокус). Что значит сбоит EEPROM? Что, совсем дохнет? Ни записи ни чтения? У меня также были случаи, когда источник питания имел на корпусе переменку (т.е. был слегка пробит на корпус) и она дале попадала на землю прибора, т. е. на его корпус. Дальше, я касаюсь прибора отверткой - перезагрузка, еще пара раз - AVR надо перепрограммировать, флэш испорчена.
defunct
Цитата
Взял новый контроллер перепаял таже фигня. Программа напроч отказывается работать с EEPROM. Причём есть несколько версий моих программ на которых я отлаживал, всё было нормально. Но тут всё перестало работать.
Вчём дело? Я пока в тупике.

Требуется уточнение, выберите верное утверждение или добавьте свое если все неверны:
1. не работают все программы, даже старые отладочные на всех МК Tiny2313;
2. не работает конкретная программа на разных МК;
3. перестали работать ваши отладочные программы на конкретном МК;
4. не работает конкретная программа в конкретном устройстве.
arttab
Цитата
(подумал перестарался с записью) но цикл 100000. ладно пусть

нолик лишний написали.
и дествительно, уточнить надо
big_nikolas
Спасиба всем что откликнулись! Ну по порядку:

Цитата(_artem_ @ Oct 4 2006, 17:15) *
Прерывания во время записи в еепром запрешаете?

Не, незапрещал. Ща попробую! Во, заработало СПАСИБО. Тока у меня возник вопрос, а чего она 4 месяца работала и отладочные программы работали. А тут раз и перестало всё работать.

Цитата(defunct @ Oct 5 2006, 02:13) *
Цитата
Взял новый контроллер перепаял таже фигня. Программа напроч отказывается работать с EEPROM. Причём есть несколько версий моих программ на которых я отлаживал, всё было нормально. Но тут всё перестало работать.
Вчём дело? Я пока в тупике.

Требуется уточнение, выберите верное утверждение или добавьте свое если все неверны:
1. не работают все программы, даже старые отладочные на всех МК Tiny2313;
2. не работает конкретная программа на разных МК;
3. перестали работать ваши отладочные программы на конкретном МК;
4. не работает конкретная программа в конкретном устройстве.

ближе 3 пункт. Мало того что отладочные перестали работать, но и боевая тоже

Цитата(arttab @ Oct 5 2006, 05:39) *
Цитата
(подумал перестарался с записью) но цикл 100000. ладно пусть

нолик лишний написали.
и дествительно, уточнить надо


Сори. Ноликом обшибся
Nanobyte
Цитата(arttab @ Oct 5 2006, 05:39) *
Цитата
(подумал перестарался с записью) но цикл 100000. ладно пусть

нолик лишний написали.

Нет, не лишний. Цитата из DS для Tiny2313
"In-System Programmable EEPROM Endurance: 100,000 Write/Erase Cycles"
arttab
проблема у самого была, но она сразу проявилась. то работает, то не работает. подключил библиотеку обнавленныю, в которой есть ожибание окончания критической части записи в еепром (запрет прерываний). Можно самиму запретить и ждать выставления флага о окончании записи.
Цитата
а чего она 4 месяца работала и отладочные программы работали

ну не повезло Вам. Не накладывались прерывания друг на друга. Что то в условиях (внешних) при написании и потом изменилось.
big_nikolas
Мляя!
я сёня с утра включил плату и она НЕРАБОТЕТ. потом вроде стала работать с переменным успехом. Сижу голову ломаю.
Вощем посмотрел, команда которая выдает в канал информацию о значении которое записывается в EEPROM находется в п/п EEPROMа. А значение-то не меняется, значит до п/п EEPROM не доходит. Что может быть, ума не приложу. Повторюсь программа работала 4 месяца на объекте. Какие могут факторы павлиять. Да кстати кварц внешний.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.