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

 
 
 
Reply to this topicStart new topic
> При включенном BOOTRST не работает Watchdog [РЕШЕНО]
Alt.F4
сообщение Apr 8 2012, 16:38
Сообщение #1


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Добрый день.
Столкнулся с проблемой, как только выставляю фьюз BOOTRST перестает работать Watchdog.
Вернее он работает, но МК не перезагружается, а тупо входит в ресет и все.
Подскажите, куда копать?
Спасибо.

Сообщение отредактировал Alt.F4 - Apr 9 2012, 10:34
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Apr 8 2012, 16:48
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Alt.F4 @ Apr 8 2012, 19:38) *
Добрый день.
Столкнулся с проблемой, как только выставляю фьюз BOOTRST перестает работать Watchdog.
Вернее он работает, но МК не перезагружается, а тупо входит в ресет и все.
Подскажите, куда копать?
Спасибо.


Какой процессор-то?
Вы уверены что меняете BOOTRST а не WDTON?
Чему равны остальные fuse байты?
Чем заполнено память в области boot?
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Apr 8 2012, 18:01
Сообщение #3


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Артем, atmega644, меняю BOOTRST и стартует именно с того адреса, где расположен бутлодЫрь. (Остальные фьюзы здесь не влияют).

Повторюсь: как только включаю BOOTRST, так сразу и перестает перезапускаться мк по WDT.
Если BOOTRST выключен и прога стартует с нулевого адреса, то WDT отрабатывается на ура.

Вопрос: после рестaрта по WDT, он самовыключается?
Хотя даже если он не выключается, то не вариант. У меня настроен на 4сек. За этот промежуток времени он проскочил бы bootloader.

Сообщение отредактировал Alt.F4 - Apr 8 2012, 18:24
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Apr 8 2012, 19:04
Сообщение #4


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

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Похоже Вы не попадаете в адреса прерываний.



When the BOOTRST Fuse is programmed and the Boot section size set to 8K bytes, the most typical and general program setup for the Reset and Interrupt Vector Addresses is: стр 64 DS



--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
Artem_Petrik
сообщение Apr 8 2012, 19:08
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 443
Регистрация: 22-07-06
Из: Украина, г. Харьков
Пользователь №: 19 006



Цитата(Alt.F4 @ Apr 8 2012, 21:01) *
Вопрос: после рестaрта по WDT, он самовыключается?
Хотя даже если он не выключается, то не вариант. У меня настроен на 4сек. За этот промежуток времени он проскочил бы bootloader.

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

P.S. Саму аппликуху быстро найти не удалось, но выдержку из нее нашел здесь на форуме:http://electronix.ru/forum/index.php?showt...st&p=417632

Цитата
For these newer AVRs a function needs to be added to the .init3 section (i.e. during the startup code, before main()) to disable the watchdog early enough so it does not continually reset the AVR.
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Apr 8 2012, 20:32
Сообщение #6


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Цитата
Похоже Вы не попадаете в адреса прерываний.
При чем тут прерывания и приведенная Вами цитата из DS? ph34r.gif
Если что, в бутлодыре прерывания не юзаю.

Artem_Petrik, завтра попробую.

Сообщение отредактировал Alt.F4 - Apr 8 2012, 20:34
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Apr 9 2012, 06:59
Сообщение #7


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

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(Artem_Petrik @ Apr 8 2012, 23:08) *
P.S. Саму аппликуху быстро найти не удалось,


Вы наверно про эту? стр.83
Прикрепленные файлы
Прикрепленный файл  avr_libc_user_manual_1.6.5.pdf ( 2.51 мегабайт ) Кол-во скачиваний: 11
 


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Apr 9 2012, 10:31
Сообщение #8


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Artem_Petrik, спасибо за наводку.
Все написано в даташите (стр.57):
Цитата
If the Watchdog is accidentally enabled, for example by a runaway pointer or brown-out
condition, the device will be reset and the Watchdog Timer will stay enabled. If the code is not
set up to handle the Watchdog, this might lead to an eternal loop of time-out resets.
После сброса WDT не выключается и у него сбрасывается Prescaler на 16мс.

Сообщение отредактировал Alt.F4 - Apr 9 2012, 10:36
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 14:35
Рейтинг@Mail.ru


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