Перейти к содержанию
    

В последнее время начал встречаться с подобными явлениями. Люди работающие на РIC-ах говорят что зависания в АVR-ках обычная вещь, дескать, поэтому они перешли на ПИКи... У меня был случай когда после 2-х недельного тестирования прибора он слегка завис при сдаче заказчику... и сторожевой таймер че-то не помог, вообщем мистика. Поделитесь мнениями - как с этим бороться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильно писать программы :)

 

И грамотно разводить питание. вот, вроде, и все :)

 

Я бы рекомендовал вам спросить этих ваших "работающих на PIC-ax" В чем именно причина зависания AVR...

 

а-зависания- обычная вещь, если не представлять себе как написанная тобой программа может и должно работать во времени...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"О сколько раз твердили миру..."(С)

 

Тема поднималась раза три, как минимум, за этот год, причем с весьма жаркими спорами! Вот нашлось на этом форуме, даже не перелистывая экран, правда в упрощенной версии форума.

 

http://electronix.ru/forum/lofiversion/index.php/t38646.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Люди работающие на РIC-ах говорят что зависания в АVR-ках обычная вещь, дескать, поэтому они перешли на ПИКи...

Это явление имело место лет 5 назад, до появления Меги8 и последующих тинь - самое веселое, что происходило регулярно - это стирание флеша по неопределенным причинам. Сейчас этого не происходит и причина зависаний может быть только в программных глюках или сбоях питания. Либо наводки на выводы кварцевого резонатора. Собака, кстати -не панацея от зависаний, правильная собака должна иметь двойной цикл сброса - взвод и сброс, процедуры которых должны втыкаться в основном тактирующем прерывании и в главном цикле. Тогда при зависании любого из них произойдет сброс. У атмела такого нет, поэтому сброс собаки лучше вешать в главном цикле с контролем основного тактирующего прерывания посредством флага.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это явление имело место лет 5 назад, до появления Меги8 и последующих тинь - самое веселое, что происходило регулярно - это стирание флеша по неопределенным причинам.

По "неопределенным причинам" небыло никогда. У меня все еще катаются в автомобилях тысячи изделий на 2313 и 8515 без каких либо перепрошивок. Была, правда, одна явно бракованная партия 90S8515 (0105), но там флеш не стерался, а просто помирал проц (или начинал делать разное всякое).

Если стерался флеш, то это к схемотехнику и разводчику...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1)Наиболее частая проблема в питании. Лечится подключением танталового конденсатора 1-10мкФ и керамического конденсатора 0,1мкФ прямо возле ножки питания проца.

 

2)Использование разъема для подключения ISP программатора в конечном изделии - крайне нежелательно. При невозможности его удаления - разводим плату так, что-бы длина дорожек разъем-проц была минимальная. При этом все его проводники (MISO, MOSI, SCK) должны быть подтянуты к +Uпит.

 

3)Используем супервизор питания.

 

При выполнении данных условий - проблемы только в программе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2)Использование разъема для подключения ISP программатора в конечном изделии - крайне нежелательно. При невозможности его удаления - разводим плату так, что-бы длина дорожек разъем-проц была минимальная. При этом все его проводники (MISO, MOSI, SCK) должны быть подтянуты к +Uпит.

И что это дает? Пока ресет не в нуле, то вход в режим программирования просто невозможен. Передо мной лежит плата, на которой разъём программирования находится на расстоянии сантиметров семи от процессора. Никаких "слетаний флэш и ЕЕПРОМ" за несколько лет серийного производсва не замечалось. Супервизора питания на ней нет, только включен BOD.

В свои устройства я тоже давно не ставлю супервизор питания. Один раз были жалобы, что у устройства слетает ЕЕПРОМ. Еду разбираться на место. Оказалось, что наладчик не прошил фьюз BODEN. Установил его и как бабка отшептала. С лета ни одного звонка с того объекта небыло, а устойств там порядка четырнадцати. Так что вот так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И что это дает? Пока ресет не в нуле, то вход в режим программирования просто невозможен. Передо мной лежит плата, на которой разъём программирования находится на расстоянии сантиметров семи от процессора. Никаких "слетаний флэш и ЕЕПРОМ" за несколько лет серийного производсва не замечалось. Супервизора питания на ней нет, только включен BOD.

В свои устройства я тоже давно не ставлю супервизор питания. Один раз были жалобы, что у устройства слетает ЕЕПРОМ. Еду разбираться на место. Оказалось, что наладчик не прошил фьюз BODEN. Установил его и как бабка отшептала. С лета ни одного звонка с того объекта небыло, а устойств там порядка четырнадцати. Так что вот так.

 

точно-точно, без BOD-а ЕЕПРОМ слетал постоянно, пока я не узнал, что есть такая ВЕЩЬ, как BOD

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По "неопределенным причинам" небыло никогда. У меня все еще катаются в автомобилях тысячи изделий на 2313 и 8515 без каких либо перепрошивок. Была, правда, одна явно бракованная партия 90S8515 (0105), но там флеш не стерался, а просто помирал проц (или начинал делать разное всякое).

Если стерался флеш, то это к схемотехнику и разводчику...

ИМХО: "Всякое разное" проц начинает как раз делать от помех по питанию и сбоев тактового генератора - вот это как раз вопрос к разработчику, а процедура запуска стирания флешь не должна запускаться от случайных помех. У Микрочипов хоть программатор и посложнее, но такой лажи с ними ни разу не происходило.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, флешь на старых 90s2333 постоянно слетал. это было лет эдак 8 назад :)

Была пара промышленных устройств ( клеевые манипуляторы) которые по весне, обязательно в марте-апреле (!!!) зависали и ничего не делали. Лечилось только перепрошивкой. :)

 

Работяги шутили-у машины весенний авитаминоз, надо лечить :)

Года через 4 меня это достало я сделал новую версию на 2313.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ИМХО: "Всякое разное" проц начинает как раз делать от помех по питанию и сбоев тактового генератора - вот это как раз вопрос к разработчику, а процедура запуска стирания флешь не должна запускаться от случайных помех.

Просто "разное всякое" без каких либо помех - на столе. Еще раз - просто была такая одна партия...

У Микрочипов хоть программатор и посложнее, но такой лажи с ними ни разу не происходило.

Еще не вечер. Я пару месяцев назад переразводил плату ребятам из Луганска по причине неустойчивой работы того самого PIC-а(16f62x).

ЗЫ. Просто Атмел раньше начал работать с Флеш-памятью и на данный момент через все грабли уже прошел...

Изменено пользователем ArtemKAD

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще не вечер. Я пару месяцев назад переразводил плату ребятам из Луганска по причине неустойчивой работы того самого PIC-а(16f62x).

ЗЫ. Просто Атмел раньше начал работать с Флеш-памятью и на данный момент через все грабли уже прошел...

Флеш и внутренний программатор - немного разные вещи. Стирание флеша у Атмелов инициирует внутренний программер, которого у Атмеловских 89-х в помине не было. А у Микрочипсов внутренние программаторы были уже тогда, когда Атмела еще и в помине небыло. В АВРы Атмелы его воткнули, но сделали его несколько кривовато, хорошо хоть исправили, а то нельзя было бы ими еще до сих пор пользоватся нормально. А Микрочипсы уже во второй итерации своих флеш процессоров ужесточили режим входа в режим программирования, хотя и до этого вроде никто не жаловался.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Люди работающие на РIC-ах

если бы эти люди работали не только на PIC-ах, или говорили о зависаниях обоснованно, тогда можно было бы послушать. А так, извиняйте, эти высказывания больше похожи на лозунги фанатов. :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Стирание флеша у Атмелов инициирует внутренний программер, которого у Атмеловских 89-х в помине не было.

Не знаю у кого как и когда стирается флеша, но я такого безобразия с 1998-го не наблюдал. Единственное - у 90S2343 мог не запускаться внутренний RC-генератор, что могло выглядеть как стирание шлешки. Никаких особых защит и подтяжек НИКОГДА не делал. На RESET на старых AT90S ставил супервизор (простейший), на новых не ставлю ни емкостей ни подтяжек. Условия эксплуатации - автомобиль. Объемы - за 40 тыс..

 

 

ЗЫ. Кстати, а кто иннициировал у Атмелов часто наблюдавшееся у старых чипов (особенно на 90S1200) стирание сигнатуры чипа ;) ? То-же SPI ?!

Изменено пользователем ArtemKAD

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...