|
Слетает flash |
|
|
|
 |
Ответов
|
Aug 7 2008, 15:16
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(GDI @ Aug 7 2008, 15:37)  Тут была ветка автором которой был некий Дон Амброзио, вот он поднимал подобный вопрос. там все же больше насчет магического кода который сам способен отдетектить свою правильность  Причина слетов здесь - отсутствие или неправильная работа супервизора. Не верится, что BOD у автора включен. Цитата Но системы никакой не отслеживается. Флэш слетает не всегда. Может слететь , а может и нет. Причина - кривая разводка, отстутствие блокировочных емкостей по питанию, кривой DC/DC, кривой супервизор питания. Других причин здесь нет. Workaround - поставить delay несколько десятков/сотен ms перед выполнением команды SPM (это по крайней мере вдвое снизит вероятность появления проблемы. При сбое на отключении питания SPM просто не успеет выполниться).
|
|
|
|
|
Aug 7 2008, 19:09
|
Частый гость
 
Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870

|
Цитата(defunct @ Aug 7 2008, 19:16)  Причина слетов здесь - отсутствие или неправильная работа супервизора. Не верится, что BOD у автора включен. Причина - кривая разводка, отстутствие блокировочных емкостей по питанию, кривой DC/DC, кривой супервизор питания. Других причин здесь нет. Возможно и так(я еще раз проверю). Но непонятно как влияет уровень напряжения на записанную флэш? У меня в самой программе SPM не выполняется нигде, а в загрузчике очень много условий для входа в саму загрузку. Записывается-то нормально, без сбоев. Разводка действительно очень плотная. И опять вопрос-- каким образом это влияет на целостность флэш? Предположим что где-то жуткие помехи -- изделие просто не будет работать или будет сбоить сама программа. Но тут получается , что прога работает прекрасно пока флэш не побита. Глюки все давно исправлены, да и программа несложная без изысков особых...
|
|
|
|
|
Aug 7 2008, 19:37
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Step_ARM @ Aug 7 2008, 22:09)  Разводка действительно очень плотная. И опять вопрос-- каким образом это влияет на целостность флэш? Когда уровень напряжения питания падает ниже критической отметки указанной в ДШ, не секрет что МК начинает глючить, первым искажается содержимое RAM. МК надо бы сбросить и держать сброшенным до того как это произойдет. В противном случае, процессор может выполнять блоки вашей программы в совершенно случайном порядке. С достаточно низкой вероятностью (но ее хватает чтобы испортить флеш) процессор выполняет опасную команду SPM с параметром Page Erase. После чего питание падает настолько что процессор отключается, либо наоборот возрастает до нормального уровня и процессор начинает выполнять все правильно с той точки где находится, но одной страницы уже нет. Кстати, можете убедиться в том, что слетает всегда только одна случайная страница флеш. Для этого прочитайте содержимое флеш после того как программа начнет работать неправильно и сравните с бинарником программы. Цитата Загрузчик начинает работать на запись только когда связался с компом и получил верные данные для записи страницы... Стоит еще добавить "железную" защиту от записи - перемычку, проверяемую непосредственно перед SPM. Я использую перемычку между MISO/MOSI, т.к. всегда есть разъем программирования. Правда без супервизора питания она все одно не поможет, но вероятность слета хоть как-то снизит.
|
|
|
|
Сообщений в этой теме
Step_ARM Слетает flash Aug 7 2008, 11:28 Rst7 Включите BOD. Это раз. Во вторых - было бы правиль... Aug 7 2008, 11:35 GDI Портится если в процессе программирования питание ... Aug 7 2008, 12:11 Step_ARM Цитата(GDI @ Aug 7 2008, 16:11) Портится ... Aug 7 2008, 12:16 Rst7 Попробуйте залить основной код программатором. При... Aug 7 2008, 12:34 Step_ARM Цитата(Rst7 @ Aug 7 2008, 16:34) Попробуй... Aug 7 2008, 12:46 Aleksandr Baranov И что, если обычным программатором запрограммировт... Aug 7 2008, 12:46 Step_ARM Цитата(Aleksandr Baranov @ Aug 7 2008, 16... Aug 7 2008, 18:43  SasaVitebsk Цитата(Step_ARM @ Aug 7 2008, 21:43) Загр... Aug 7 2008, 21:57 EmbedElektrik у меня такое тоже было, но питание нарастало медле... Aug 7 2008, 12:49 Rst7 ЦитатаДело в том , что я это уже делал
Понятно. С... Aug 7 2008, 13:00 Flasher Схема питается от импульсного источника питания? Aug 7 2008, 13:23 SasaVitebsk 1) Какая у вас частота процессора.
2) Какое напряж... Aug 7 2008, 17:13 Angelo Вместо 7805 предлагаю для эксперимента нашу 1156ЕН... Aug 7 2008, 18:51 rtfcnf конденсатор КМ-5 0,01 - 0,1 мкФ на ножки питания м... Aug 7 2008, 19:20 Step_ARM Цитата(rtfcnf @ Aug 7 2008, 23:20) конден... Aug 8 2008, 10:33 VDG Сотрите всю флеш - и бут и программу или чистый ко... Aug 7 2008, 19:27 Rst7 ЦитатаВ этом ли дело не уверен
Дело именно в этом... Aug 8 2008, 10:41 ReAl Цитата(Rst7 @ Aug 8 2008, 13:41) Дело име... Aug 9 2008, 05:39  Petka Цитата(ReAl @ Aug 9 2008, 09:39) В особо ... Aug 9 2008, 07:38   sKWO Цитата(Petka @ Aug 9 2008, 10:38) Это как... Aug 9 2008, 09:53    Petka Цитата(sKWO @ Aug 9 2008, 13:53) Поиск по... Aug 9 2008, 10:27    ReAl Цитата(sKWO @ Aug 9 2008, 12:53) Поиск по... Aug 9 2008, 10:28     sKWO Цитата(ReAl @ Aug 9 2008, 13:28) У тини13... Aug 9 2008, 18:11 ArtemKAD ЦитатаЯ не могу электролиты убрать помехи слишком ... Aug 8 2008, 18:52 demaven столкнулись с такой проблеммой на меге16, перепроб... Aug 9 2008, 04:08 Step_ARM Цитата(demaven @ Aug 9 2008, 08:08) столк... Aug 9 2008, 07:46 Flasher так в схему встроить автономный программатор, чтоб... Aug 9 2008, 07:43 Petka Цитата(Flasher @ Aug 9 2008, 11:43) так в... Aug 9 2008, 08:15
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|