Слёт прошивки на ATmega8A - причины?

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Здравствуйте.
Занимаюсь сборкой некоторых устройств на АТмега8А.
Начали появляться проблемы со слётом прошивки на некоторых устройствах.
В устройство заливается и FLASH и EEPROM.
Устройство имеет 4 входных канала и 4 выхода обработанного входного сигнала. Выбор режима работы через тактовую кнопку. Кнопка замыкает землю на ногу МК. Стоит шунт на питание.

Начались проблемы, что устройство толи вообще отказывается работать, никак даже не отвечая на работу кнопки, или же значения обработки сигнала становятся совершенно не "заводскими". Эти значения можно поменять только с кнопки, если войти в "меню".

Устройства были проданы, после чего возвращены с такой проблемой.
Исходника прошивки нет, прошивка коммерческая.

Из-за чего возможен слёт прошивки? Возможно, что при работе случилась какая-то беда с кварцем, что устройство начала так глючить?
Может некий брак самих МК?
Может магнитные бури? :shock:

Подскажите, куда копать, уважаемые! :?
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Реклама
orinoko

Сообщение orinoko »

Была и у меня аналогичная проблема когда-то. Периодически (неделя-месяц) слетала прошивка. В результате многодневных экспериментов проблема решилась подтяжкой сигнала SCK(PB7) на GND (или VCC) резистором 3,3-10 кОм. Вот такая вот загогулина.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

А BOD (Brown-out Detector) был сконфигурирован и включен? Во всех даташитах пишут что при недостаточном питании инструкции могут выполнятся некорректно и при этом можно попортить EEPROM. Правда не ясно можно ли таким образом испортить и флеш...
orinoko

Сообщение orinoko »

Испортить EEPROM можно, если при срабатывании BOD идёт запись. И то, только данную ячейку. Вроде как. А у меня слетала именно память программ. А вот что у ТС, неизвестно. Вот если бы произвести проверку дампа у неработающего МК с оригиналом прошивки. Причём у нескольких экземпляров, тех, которые возвратили. Набрать статистику, так сказать.
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Сообщение coredumped »

Атмелы боятся сильных электромагнитных полей. Были случаи порчи содержимого флеш при работе МК рядом с электродвигателем 1кВт. Если такие воздействия имеют место, советую применить "автомобильный" (automotive) вариант контроллера.
Все будет только лучше, в крайнем случае - хуже.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

orinoko, весьма интересное замечание. Спасибо. Не уточните, на землю или питание нужно подтягивать? По разводке платы мне ооочень удобно подтянуть на +5 питания.

По поводу BOD - он включён.
Вот прошиваемые фьюзы.
Изображение

coredumped, не расскажите про данный МК? Просто даже в даташите такой информации я не встречал...
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 454
Зарегистрирован: Вс янв 15, 2012 19:58:40

Сообщение radiokot__ »

Копайте в сторону EEPROM и питания, ну ещё можно посмотреть как RESET себя ведёт.
А по поводу наводки от мотора, то есть сильные сомнения, опять же питание EEPROM и RESET смотреть.
Ни один домашний кот незнает что он домашний.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

coredumped писал(а):Были случаи порчи содержимого флеш при работе МК рядом с электродвигателем 1кВт.
А я видел на одной котельной "коробочки" с мегами8535, находящиеся рядом с газогенератором на мегаватты. Только тогда ещё ничего не работало, было ещё строительство. Но такой проект котельной был не первый, остальные работают :dont_know:
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

radiokot__ писал(а):Копайте в сторону EEPROM и питания, ну ещё можно посмотреть как RESET себя ведёт.
А по поводу наводки от мотора, то есть сильные сомнения, опять же питание EEPROM и RESET смотреть.
Питание - 14В через L7805 (шунты двумя кондёрами 22мкФх25В).
На RESET подтяжка резистора 10к на +5В.

Наводка рассматриватся в самую последнюю очередь, в том месте, где стоит устройство - особых наводок быть не должно.
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

Вроде же имеют место быть случаи, когда из-за наводок на SPI контроллер пишет себя какой-то бурдой. Особенно в случае self-programming. Притяните SCL линию SPI к + питания, на всякий случай. Если есть параллельный программатор - вообще можно на фиг вырубить ISP.
orinoko

Сообщение orinoko »

Не уточните, на землю или питание нужно подтягивать? По разводке платы мне ооочень удобно подтянуть на +5 питания.
Как показали дальнейшие наблюдения, куда подтягивать - сугубо фиолетово. А наблюдалось одновременно около 100 контроллеров, так что как говорится, "факты - вещь упрямая".
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Бррр... Запутался, господа.
Какую ногу подтягивать на + ?
Сначала говорится, что "SCK(PB7)", но SCK - это PB5.
Потом говорите, что подтянуть нужно SCL.

Уточните, что подтягивать???

PS. напомню, что МК - ATmega8A-PU
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

CLK, SCK, SCL и ещё можно как угодно обозвать - суть одна. Та нога на которую идут тактовые импульсы SPI. И RESET к питанию внешне тоже лучше подтянуть. У вас это PB5, т.е. 19-я нога. Если подтяните к земле - ХЗ как потом его программировать на плате, всё же в землю пойдёт. Надо будет перемычку ставить или на панельку ставить МК, чтобы выдирать при программировании. Поэтому лучше к + питания.
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Мм...
19-ю ногу подтяну на + питания. Спасибо :beer:
Однако, может не прав, но SCL и SCK не одно и тоже. SCL - 28я нога, SCK - 19я нога.

Резет уже давно на + питания подтянут, а программируется он до впайки в плату :)
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Господа, а подскажите, какова природа сбоев вообще?
В частности, если не подтянуть SCK на + питания.
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

DataLife писал(а):SCL - 28я нога, SCK - 19я нога.
Я же конкретизировал, что на SPI, т.е. получается SCK, т.к. в данном случае SCL - это TWI. Суть одна - это тактовый вход.

А причина в том, что при стечении обстоятельств и звёзд на небе МК может ввалиться в режим приёма данных прошивки. Т.к. шьём по SPI, то при импульсах на тактовом входе он будет принимать то, что у него на входе MOSI в момент защёлкивания импульсов SCK. Раньше были частые проблемы с некоторыми роутерами, которые шились по USART'у: при загрузке или сбросе загрузчик ловил импульс для входа в режим кройки и шитья и зашивал во флеш непонятно что.
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Большое спасибо, понятно :)
Надеюсь, что сбоев больше не предвидится :beer:
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

На всякий противоглючный случай всё-таки хорошо бы юзать индустриальное исполнение, т.е. atmega8a-pi, кажется. Хотя может быть кроме температур работы никаких бонусов там и не будет. Честно говоря, не сильно задумывался над этим. А вот всяких хлам, летящий по SPI видел своими глазами, только не с МК, а с дисплеем.
Мудрый кот
Аватара пользователя
Сообщения: 1802
Зарегистрирован: Ср сен 07, 2011 21:40:30

Сообщение Flasher »

еще как предвидится, с такими-то советами :)
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Flasher, кроме язвы, есть более дельные замечания?
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»