|
Сбой C8051F340, слетает прошивка |
|
|
|
Nov 12 2007, 08:10
|
Частый гость
 
Группа: Новичок
Сообщений: 148
Регистрация: 13-12-05
Пользователь №: 12 162

|
Цитата(asrael @ Nov 12 2007, 08:47)  При нестабильном питании периодически перестает загружаться контроллер. Что это может быть и как с этим бороться? В основном при исчезновении питания в самом начале загрузки (кратковременно воткнуть вилку в розетку и сразу вытащить). Контроллер C8051F340 ИМХО, Флэша бьется... Смотрите даташит, разделы 11.1 и 11.2. Если не поможет, то внешний супервизор должен спасти ситуацию...
|
|
|
|
|
Nov 13 2007, 04:15
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
А что означает: "The VDD Monitor must be allowed to stabilize before it is selected as a reset source. Selecting the VDD monitor as a reset source before it has stabilized will generate a system reset." ? Потому что этот ресет задействован, но может быть не правильно что-то настроено...
|
|
|
|
|
Nov 13 2007, 08:01
|
Частый гость
 
Группа: Свой
Сообщений: 170
Регистрация: 11-05-07
Пользователь №: 27 656

|
Цитата(asrael @ Nov 13 2007, 07:15)  А что означает: "The VDD Monitor must be allowed to stabilize before it is selected as a reset source. Selecting the VDD monitor as a reset source before it has stabilized will generate a system reset." ? Потому что этот ресет задействован, но может быть не правильно что-то настроено... Перевод: VDD Monitor должен выйти на стабильный режим работы, перед тем как он будет выбран источником сброса. Выбор VDD Monitor в качестве источника сброса, перед тем как он выйдет на стабильный режим работы, вызовет сброс МК. Необходимо сначала включить VDD Monitor. После этого подождать (временную задержку смотрите в datasheet) и только после этого выбрать VDD Monitor в качестве источника сброса. Посмотрите еще внешние цепи сброса. Пример правильного построения сброса смотрите в документации на Evaluation Board. Еще есть Watchdoc. Он по умолчанию включен. Его программно в самом начале необходимо выключить.
|
|
|
|
|
Nov 13 2007, 11:21
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
Внешний сброс мы не используем (пока). Watchdoc отключен.
Подобных проблем ни у кого не было? На одной плате у нас 2 контроллера. Второй MC9S12NE64, на том же питании. Программа на порядок меньше по объему. И он не сбоит. Все в порядке.
Какие вероятные причины такого поведения контроллера могут быть кроме питания?
|
|
|
|
|
Nov 14 2007, 07:13
|
Частый гость
 
Группа: Свой
Сообщений: 170
Регистрация: 11-05-07
Пользователь №: 27 656

|
Цитата(asrael @ Nov 13 2007, 14:21)  Внешний сброс мы не используем (пока). Внешние RC цепи сброса все равно должны быть.
|
|
|
|
|
Nov 14 2007, 07:48
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
А, вы это имеете ввиду. Проверю. Я подумал про внешний супервизор.
|
|
|
|
|
Nov 14 2007, 12:51
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
Внешний сброс в порядке, причем я перепробовал несколько комбинаций RC. Сейчас оставил 10k - 0.1 mkF.
Слетает прошивка при выключении. Включал вилку в розетку удерживая рукой кнопку сброса, затем отпускал. Два раза грузится программа, на третий - уже нет. Все таки я думаю что это связано с VDD monitor или еще с чем нибудь подобным. Никаких экстремальных режимов нет. Блок питания импульсный, пятивольтовый, затем стоит стабилизатор на 3,3В. Еще думаю может как-то влиять реле, обмотка которого питается от 5В... Оно включается после загрузки контроллера и отключается когда пропадает питание.
|
|
|
|
|
Nov 14 2007, 15:46
|
Частый гость
 
Группа: Свой
Сообщений: 170
Регистрация: 11-05-07
Пользователь №: 27 656

|
Цитата(asrael @ Nov 14 2007, 15:51)  Слетает прошивка при выключении. Что Вы имеете ввиду? C8051F340 содержит Flash память. После манипуляций со сбросом память стирается что ли? Попробуйте не импульсный источник питания, а линейный.
|
|
|
|
|
Nov 15 2007, 04:58
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
Манипуляции со сбросом я придумал для того, чтобы выяснить, происходит сбой при включении устройства или при выключении. А происходит следующее: после сбоя устройство может не работать совсем, т.е. вести себя так, будто контроллер не запрограммирован, а может работать, но ЖК экран не инициализирует. Какой-то частичный сбой. Источник то у нас импульсный, но он на 5 вольт. Поэтому для питания контроллера это напряжение преобразуем в 3,3 при помощи стабилизатора IRU1117. Там должно быть все линейно. По крайней мере на осциллографе никакой шерсти нет.
|
|
|
|
|
Nov 15 2007, 07:38
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 3-03-06
Пользователь №: 14 931

|
Попробуйте прочитать флэш память после сбоя программатором и сравнить с тем, что туда заливалось. Может, появятся какие-то мысли. Нет ли у Вас в коде каких-либо функций, пишущих во флэш во время исполнения программы ?
|
|
|
|
|
Nov 15 2007, 09:35
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 13-03-07
Пользователь №: 26 125

|
Есть, но при исчезновении питания нет. Есть сигнал об исчезновении питания, и тогда всякие записи блокируются. Сегодня на питание поставил конденсатор 470 пик, вызвать сбой не удалось, может это решение проблемы, но пока утверждать не стану. Похоже идет ВЧ помеха по питанию... Тема пока актуальна
Сообщение отредактировал asrael - Nov 15 2007, 09:37
|
|
|
|
|
Nov 19 2007, 19:34
|

Частый гость
 
Группа: Новичок
Сообщений: 111
Регистрация: 10-02-07
Из: St.Petersburg, Russia
Пользователь №: 25 241

|
Цитата(asrael @ Nov 13 2007, 14:21)  Внешний сброс мы не используем (пока). Watchdoc отключен. Какие вероятные причины такого поведения контроллера могут быть кроме питания? У контроллера есть вход, разрешающи работу монитора питания аппаратно, сразу при включении питания. Вроде, MON называется. Его куда-то нужно присоединить. Советы программного включения собаки и монитора питания архиглупые -- флеш [SENSORED] задолго до того, как программа дойдёт до этого участка кода.
Сообщение отредактировал IgorKossak - Nov 20 2007, 13:52
--------------------
[ZX]
|
|
|
|
|
Nov 20 2007, 07:24
|
Частый гость
 
Группа: Свой
Сообщений: 170
Регистрация: 11-05-07
Пользователь №: 27 656

|
Цитата(Kirill Frolov @ Nov 19 2007, 22:34)  У контроллера есть вход, разрешающи работу монитора питания аппаратно, сразу при включении питания. Вроде, MON называется. Его куда-то нужно присоединить. Это уже становится совсем интересно. Какой это вывод?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|