|
Опять 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] - для короткого!!!
|
|
|
|
|
 |
Ответов
|
Jan 23 2013, 18:41
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(AndreyVN @ Jan 23 2013, 20:46)  Что я упустил? Упустили значения битов WDP при установке WDCE и WDE. Посмотрите как это сделано в примере от Atmel Цитата /* Write logical one to WDCE and WDE */ WDTCR |= (1<<WDCE) | (1<<WDE); Ой, не зря это они так сделали !
|
|
|
|
|
Jan 24 2013, 04:14
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
Цитата(Палыч @ Jan 23 2013, 21:41)  Упустили значения битов WDP при установке WDCE и WDE. Посмотрите как это сделано в примере от Atmel Ой, не зря это они так сделали ! Насколько я понял из описания, бит WDCE=1 разрешает изменение состояния "собаки" и сбрасывается аппаратно через 4 цикла. То есть, мой вариант манипуляции с WDTCR, вроде должен быть работоспособен. Попробую как Вы советуете... Цитата Что вы понимаете под MC103=1? Процессор в режиме совместимости или нет? Fusebits активируются нулевым уровнем. Единичка соответствует значению Unprogrammed.
|
|
|
|
|
Jan 24 2013, 15:59
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(AndreyVN @ Jan 24 2013, 08:14)  Насколько я понял из описания, бит WDCE=1 разрешает изменение состояния "собаки" и сбрасывается аппаратно через 4 цикла. То есть, мой вариант манипуляции с WDTCR, вроде должен быть работоспособен. Да, должен быть работоспособен... Тогда, вариант один - между двумя обращениями к регистру WDTCR проходит более 4 тактов: либо транслятор так "криво" код генерит, либо мешают разрешенные прерывания. Кстати, макросы, которые советует alexeyv, и время обращения к WDTCR выдерживают правильное и от прерываний во время своего выполнения защищены.
|
|
|
|
Сообщений в этой теме
AndreyVN Опять WatchDog Timer Jan 23 2013, 16:46 _Артём_ Цитата(AndreyVN @ Jan 23 2013, 18:46) Что... Jan 23 2013, 17:16   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 artic День добрый!
Есть программка в которой с помо... Feb 14 2013, 12:33 _Артём_ Цитата(artic @ Feb 14 2013, 14:33) Господ... Feb 14 2013, 13:48  artic Видимо нет.
Память aplication залитая программат... Feb 14 2013, 15:29   _Артём_ Цитата(artic @ Feb 14 2013, 17:29) В вари... Feb 14 2013, 16:04    artic Загрузчик выключает WDT.
Как раз с загрузчиком и ... Feb 14 2013, 16:30 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
|
|
|