реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Слетает flash
Step_ARM
сообщение Aug 7 2008, 11:28
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Доброго дня всем...
Камень mega32. Загрузка ПО через бутлоадер. Все нормально работает. Но... если создавать помехи быстрым включением и выключением изделия может слетать флэш. Это выглядет примерно так-- изделие либо полностью не рабочее , либо не работает подсветка или индикатор или любая другая часть функций. При этом если прочитать флэш через програматор, то часть оказывается не такой как исходный файл. Причем в разных случаях разная степень подпорченности.
Питание -- стабилизатор 5 В с обвязкой.
Сектор бутлоадера 512 слов. Бут закрыт от записи чтения. Программный сектор не закрыт.
Никто не сталкивался с подобным явлением?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 7 2008, 11:35
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Включите BOD. Это раз. Во вторых - было бы правильно проверить в бутлоадере CRC основной программы, а не запускать наобум.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
GDI
сообщение Aug 7 2008, 12:11
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Портится если в процессе программирования питание дергать или просто при работе?


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Step_ARM
сообщение Aug 7 2008, 12:16
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Цитата(GDI @ Aug 7 2008, 16:11) *
Портится если в процессе программирования питание дергать или просто при работе?

В работе.

Цитата(Rst7 @ Aug 7 2008, 15:35) *
Включите BOD. Это раз. Во вторых - было бы правильно проверить в бутлоадере CRC основной программы, а не запускать наобум.

BOD ставил 2.7В и 4В -- никак не повлияло.
CRC загрузчик проверяет. Еще - если после загрузки через Bootloader прочитать программный сектор, то совпадает с исходником полностью.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 7 2008, 12:34
Сообщение #5


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Попробуйте залить основной код программатором. При этом вместо бутлоадера пусть будут 0xFF. Затем попробуйте пощелкать питание. По результатам будем думать дальше.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
GDI
сообщение Aug 7 2008, 12:37
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Цитата
В работе.

Тогда ищите источник помехи, который может вам флешь сбивать. Тут была ветка автором которой был некий Дон Амброзио, вот он поднимал подобный вопрос. И там даже следи множества буков, вроде , были какие то рецепты.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Step_ARM
сообщение Aug 7 2008, 12:46
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Цитата(Rst7 @ Aug 7 2008, 16:34) *
Попробуйте залить основной код программатором. При этом вместо бутлоадера пусть будут 0xFF. Затем попробуйте пощелкать питание. По результатам будем думать дальше.

Дело в том , что я это уже делал. Действительно я не добился выхода из строя при прошивке через SPI. Но системы никакой не отслеживается. Флэш слетает не всегда. Может слететь , а может и нет. Изначально все изделия прошивались на параллельном программаторе. Примрно 20 % из них вышли из строя. После перешивки через bootloader они опять работали... Но могли через некоторое время слететь.
Go to the top of the page
 
+Quote Post
Aleksandr Barano...
сообщение Aug 7 2008, 12:46
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 169
Регистрация: 31-08-05
Из: New York
Пользователь №: 8 118



И что, если обычным программатором запрограммировть, при аналогичных экспериментах флэш не портится?
Вы на одном процессоре ставили опыты или перебрали несколько?


--------------------
ASB
Go to the top of the page
 
+Quote Post
EmbedElektrik
сообщение Aug 7 2008, 12:49
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 121
Регистрация: 30-07-08
Из: Тверь, Россия
Пользователь №: 39 321



у меня такое тоже было, но питание нарастало медленно, убрал электролиты вроде работает, тьфу-тьфу
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 7 2008, 13:00
Сообщение #10


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Дело в том , что я это уже делал


Понятно. Схему с номиналами в студию. И разводку.

Цитата
у меня такое тоже было, но питание нарастало медленно


Если BOD включен, то должно быть пофиг. Автору топика: проверьте еще раз, точно ли включен BOD у Вас.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Flasher
сообщение Aug 7 2008, 13:23
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 374
Регистрация: 6-09-05
Из: Тирасполь, Приднестровье
Пользователь №: 8 294



Схема питается от импульсного источника питания?
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 7 2008, 15:16
Сообщение #12


кекс
******

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



Цитата(GDI @ Aug 7 2008, 15:37) *
Тут была ветка автором которой был некий Дон Амброзио, вот он поднимал подобный вопрос.

там все же больше насчет магического кода который сам способен отдетектить свою правильность smile.gif

Причина слетов здесь - отсутствие или неправильная работа супервизора.
Не верится, что BOD у автора включен.

Цитата
Но системы никакой не отслеживается. Флэш слетает не всегда. Может слететь , а может и нет.

Причина - кривая разводка, отстутствие блокировочных емкостей по питанию, кривой DC/DC, кривой супервизор питания. Других причин здесь нет.

Workaround - поставить delay несколько десятков/сотен ms перед выполнением команды SPM (это по крайней мере вдвое снизит вероятность появления проблемы. При сбое на отключении питания SPM просто не успеет выполниться).
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Aug 7 2008, 17:13
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



1) Какая у вас частота процессора.
2) Какое напряжение.
3) Что подводится на ножки SPI (Програмирования)

Сделай задержку в 0.5 секунды при старте программы и лоадера.
Go to the top of the page
 
+Quote Post
Step_ARM
сообщение Aug 7 2008, 18:43
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 132
Регистрация: 11-07-08
Пользователь №: 38 870



Цитата(Aleksandr Baranov @ Aug 7 2008, 16:46) *
И что, если обычным программатором запрограммировть, при аналогичных экспериментах флэш не портится?
Вы на одном процессоре ставили опыты или перебрали несколько?

На 4-х с камнями из разных серий...

Цитата(EmbedElektrik @ Aug 7 2008, 16:49) *
у меня такое тоже было, но питание нарастало медленно, убрал электролиты вроде работает, тьфу-тьфу

Я не могу электролиты убрать помехи слишком большие будут...

Цитата(Flasher @ Aug 7 2008, 17:23) *
Схема питается от импульсного источника питания?

Нет. Обычный 7805

Цитата(SasaVitebsk @ Aug 7 2008, 21:13) *
1) Какая у вас частота процессора.
2) Какое напряжение.
3) Что подводится на ножки SPI (Програмирования)

Сделай задержку в 0.5 секунды при старте программы и лоадера.

4МГц

PB5,6,7 -- транзисторы подсветки.
Загрузчик начинает работать на запись только когда связался с компом и получил верные данные для записи страницы... То есть , загрузчик посылает байт запроса, получает три байта в ответ. Если они совпали , то загрузчик посылает подтверждение компу. Дальше команда адрес и сразу 128 байт в буфер с проверкой CRC.
Go to the top of the page
 
+Quote Post
Angelo
сообщение Aug 7 2008, 18:51
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 58
Регистрация: 1-12-07
Пользователь №: 32 871



Вместо 7805 предлагаю для эксперимента нашу 1156ЕН1 или похожую буржуйку LM2925
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 16:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01489 секунд с 7
ELECTRONIX ©2004-2016