|
Опять WatchDog Timer, Atmega64 |
|
|
|
Jan 23 2013, 16:46
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
В коде программы команд сброса сторожевого таймера нет вообще, инициилизирую WD-таймер, хочу увидеть, как каждые 2 секунды будет моргать экран и инициализироваться меню, однако, после инициализации WD-таймера ничего не происходит. Что я упустил? Процессор Atmega64 Fusebits: WDTON=1 MC103=1 Код void WatchDogStart() { #asm("wdr") //на всякий случай сбросить сторожевой таймер WDTCR=0x1F; //WDCE=1, WDE=1, делитель 2 сек. WDTCR=0x0F; //WDCE=0, WDE=1, }
void WatchDogStop() { #asm("wdr") //сбросить сторожевой таймер WDTCR = 0x1F; //выключить сторожевой таймер WDTCR = 0x00; }
Сообщение отредактировал IgorKossak - Jan 23 2013, 19:56
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
|
|
|
|
|
 |
Ответов
|
Feb 14 2013, 12:33
|
Участник

Группа: Участник
Сообщений: 16
Регистрация: 11-10-06
Пользователь №: 21 205

|
День добрый! Есть программка в которой с помощью WDT осуществляется RESET. Есть 2 HEX файла одного и того же исходника полученные в CodeVision. Первый с оптимизацией по размеру, второй по скорости. Программируем загрузчиком chip45boot2. При загрузки первого файла, WDT не хочет делать RESET, а при загрузке 2го все работает. Если заливать софт через программатор, то работают оба. Господа, может есть у кого какие соображения??? Какая тут может быть связь.?  Подскажите плиз.
|
|
|
|
|
Feb 14 2013, 15:29
|
Участник

Группа: Участник
Сообщений: 16
Регистрация: 11-10-06
Пользователь №: 21 205

|
Видимо нет. Память aplication залитая программатором или загрузчиком идентична. (сверена после программирования) В варианте с загрузчиком, если изменить фьюс BOOTRST при котором старт начнется с нулевого адреса а не с адреса загрузчика (как оно и должно быть), все работает.
|
|
|
|
|
Feb 14 2013, 16:04
|
Гуру
     
Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322

|
Цитата(artic @ Feb 14 2013, 17:29)  В варианте с загрузчиком, если изменить фьюс BOOTRST при котором старт начнется с нулевого адреса а не с адреса загрузчика (как оно и должно быть), все работает. Возможно в загрузчике выполняются какие-то манипуляции с WDT. Цитата(artic @ Feb 14 2013, 17:29)  если изменить фьюс BOOTRST при котором старт начнется с нулевого адреса а не с адреса загрузчика (как оно и должно быть). Ну. если вам не нужен загрузчик - "как оно и должно быть" - то и не шейте его...раз всё работает. PS. В каком состоянии остальные байты фузов (там их три). Гадать можно долго.
|
|
|
|
|
Feb 14 2013, 16:30
|
Участник

Группа: Участник
Сообщений: 16
Регистрация: 11-10-06
Пользователь №: 21 205

|
Загрузчик выключает WDT. Как раз с загрузчиком и должно быть. Программируются биты BOOTRST BOOTSZ0 BOOTSZ1 ну и биты для работы с кварцем. Все остальное не запрограммировано. ATmega88.
|
|
|
|
Сообщений в этой теме
AndreyVN Опять WatchDog Timer Jan 23 2013, 16:46 _Артём_ Цитата(AndreyVN @ Jan 23 2013, 18:46) Что... Jan 23 2013, 17:16 Палыч Цитата(AndreyVN @ Jan 23 2013, 20:46) Что... Jan 23 2013, 18:41 AndreyVN Цитата(Палыч @ Jan 23 2013, 21:41) Упусти... Jan 24 2013, 04:14  Палыч Цитата(AndreyVN @ Jan 24 2013, 08:14) Нас... Jan 24 2013, 15:59   AndreyVN Цитата(Палыч @ Jan 24 2013, 19:59) Да, до... Jan 25 2013, 09:04    Сергей Борщ QUOTE (AndreyVN @ Jan 25 2013, 11:04) сов... Jan 25 2013, 11:24     AndreyVN Цитата(Сергей Борщ @ Jan 25 2013, 14:24) ... Jan 25 2013, 15:54      ARV Цитата(AndreyVN @ Jan 25 2013, 19:54) ... Feb 14 2013, 16:29       _Артём_ Цитата(ARV @ Feb 14 2013, 18:29) если мне... Feb 14 2013, 17:10        artic Да, реализованно на ассемблере. Иначе при компиляц... Feb 14 2013, 17:48         _Артём_ Цитата(artic @ Feb 14 2013, 19:48) Что уч... Feb 14 2013, 19:05          artic После "программного сброса" ничего не ра... Feb 15 2013, 05:28 alexeyv Не парьтесь и воспользуйтесь "avr\wdt.h... Jan 24 2013, 04:14 ILYAUL Ну так сравни два асм кода с разными оптимизациями... Feb 14 2013, 18:06 artic Я ж говорю, при любой оптимизации работает если ши... Feb 14 2013, 18:22 RabidRabbit Мож где при инициализации оборудования оптимизатор... Feb 15 2013, 05:51 ILYAUL ЦитатаЯ ж говорю, при любой оптимизации работает е... Feb 15 2013, 06:32 artic Загрузчик не компилирую. Он изначально есть только... Feb 15 2013, 07:23
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|