Например TDA7294

Форум РадиоКот • Просмотр темы - WatchDog Timer Сторожевой таймер в AVR
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Пн янв 27, 2020 16:01:59

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 207 ]  1, , , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: WatchDog Timer Сторожевой таймер в AVR
СообщениеДобавлено: Вс ноя 19, 2006 14:23:38 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: -1
Рейтинг сообщений: -1
Зарегистрирован: Пт ноя 10, 2006 16:50:24
Сообщений: 184
Откуда: Россия Крым Феодосия
Рейтинг сообщения: 0
WatchDog Timer - что это?
Обьясните что это такое как можно проще.
(использую tini13, и прогу AlgorithmBuilder)

_________________
Тот кто впереди, всегда боится отстать, - это наш шанс, вот так то.


Последний раз редактировалось Gudd-Head Пт фев 07, 2014 13:41:14, всего редактировалось 2 раз(а).
Тему прилепил


Вернуться наверх
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Пн ноя 20, 2006 07:39:01 
Нашел транзистор. Понюхал.
Аватар пользователя

Зарегистрирован: Чт янв 12, 2006 00:17:30
Сообщений: 186
Откуда: Новосибирск, ИФП СО РАН
Рейтинг сообщения: 0
Так называемый сторожевой таймер. Если он включен, то по его переполнению контроллер сбрасывается. Нужен чтобы зависаний не было. Програмно может обнулятиься.


Вернуться наверх
 
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт ноя 23, 2006 22:07:58 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: -1
Рейтинг сообщений: -1
Зарегистрирован: Пт ноя 10, 2006 16:50:24
Сообщений: 184
Откуда: Россия Крым Феодосия
Рейтинг сообщения: 0
Все спасибо, уже пошел делать.

_________________
Тот кто впереди, всегда боится отстать, - это наш шанс, вот так то.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $88 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay
Не в сети
 Заголовок сообщения: ATtiny24 не стартует WDT...
СообщениеДобавлено: Ср дек 05, 2012 20:35:55 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
Здравствуйте, Братья по паяльнику!
Ваяю один полезный "девайсик" с батарейным питанием. Основа - ATtiny24. Данный МК выбрал за его мелкоту, наличие АЦП и относительно невысокую цену. Но вот засада - аппаратный INT, способный выводить данный МК из "глубокой спячки" только один, что для моего случая не достаточно. Внимание привлёк WDT с возможностью не только давать сброс, но и прерывание, способное пробудить ядро МК. По пробуждению решил задать опрос нужных портов и потом, если что, снова отправлять МК в "спячку".
Попытался запустить WDT, создав проект в CV AVR и выставив все нужные опции при помощи "Визарда". Получилось следующее:


Но единица на соответствующем порту так и не появляется, то есть программа никогда не попадает в обработчик прерывания от WDT. Сброс МК тоже не происходит (пробовал по нажатию кнопок менять ШИМ). Думал, может чего с самим МК не так, попытался запустить в "Протеусе" - ситуация аналогичная.
Помогите, пожалуйста, разобраться.


Вернуться наверх
 
DC/DC-преобразователи: принципы работы и уникальные решения Maxim Integrated

Что нового можно сказать про DC/DC? Написаны десятки статей, а самостоятельное изготовление преобразователя мощностью от единиц Вт до нескольких кВт даже в домашних условиях не составляет большого труда. Тем не менее, когда речь идет о микро-, или даже нано-ваттах, проектировщик может столкнуться с рядом трудностей. Грамотная схемотехника системы питания не возможна без знания основ работы DC/DC преобразователей. Освежить базовые знания и узнать об особенностях проектирования узлов питания мобильного устройства с оптимальным энергопотреблением можно из следующей статьи.

Читать статьи>>
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Сб дек 08, 2012 18:32:39 
Открыл глаза

Карма: 2
Рейтинг сообщений: 7
Зарегистрирован: Вт мар 20, 2012 07:16:43
Сообщений: 47
Рейтинг сообщения: 0
Возможно выставлены неправильные настройки сторожевого таймера, в СИшном коде мало понимаю. Скинул скриншот с настройками из книги "Микроконтроллеры AVR семейств Tiny Руководство пользователя". В Протеусе есть пошаговая отладка, не пробовал там смотреть чем занят микроконтроллер?


Вложения:
настройки таймера.jpg [98.1 KiB]
Скачиваний: 1042
Вернуться наверх
 
Руководство для разработчика приложений на базе STM32WB55

Представив двухъядерные беспроводные микроконтроллеры STM32WB для IoT-приложений, компания STMicroelectronics предлагает разработчикам экосистему, включающую в себя отладочные платы, примеры кода для микроконтроллера, готовое ПО всех уровней и большой массив документации.

Читать статью>>
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 02:50:06 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
Благодарю за ответ.
В качестве настройки в регистр таймера последовательно записываются два значения
WDTCSR=0x1A;
WDTCSR=0x4A;
затем разрешается глобальный флаг прерываний
#asm("sei")
Но, похоже, что этого не достаточно и нужно ещё где-то чего-то разрешить.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 19:27:22 
Открыл глаза

Карма: 2
Рейтинг сообщений: 7
Зарегистрирован: Вт мар 20, 2012 07:16:43
Сообщений: 47
Рейтинг сообщения: 0
ELcat:
WDTCSR=0x4A=1001010;

WDIF-WDIE-WDP3-WDCE-WDE-WDP2-WDP1-WDP0
0______1____ 0_____0____1____0_____1____0

Бит WDIE - разрешение прерывания от сторожевого таймера.
Бит WDE - должен быть сброшен в 0. См. файл который я прикреплял, он взят из книги "Микроконтроллеры AVR семейств Tiny Руководство пользователя.djvu".

P.S. извиняюсь, в первый раз переклинило, перепутал малость :shock:


Последний раз редактировалось стьюдент Вс дек 09, 2012 22:52:51, всего редактировалось 1 раз.

Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 21:27:25 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
стьюдент писал(а):
WDIF-WDIE-WDP3-WDCE-WDE-WDP2-WDP1-WDP0
0______0____ 1_____0____0____0_____1____0
Не догнал...
Ты пишешь, что WDTCSR=0x4A=1001010; и тут же рисуешь биты 0010 0010, что в hex будет 0х22, почему??? Там что, записью "1" меняется состояние на противоположное? Поясни, пожалуйста.


Вернуться наверх
 
Распродажа паяльных станций ATTEN и аксессуаров!
Индукционная паяльная станция AT315D - 3 977 ₽, станция паяльная AT80D – 2177 ₽, станция паяльная AT936b – 1000 ₽!

Заходите в раздел акции и спецпредложения на сайте prist.ru, покупайте измерительные приборы, инструмент и паяльно-ремонтное оборудование по специальным ценам.
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 21:33:54 
Мудрый кот
Аватар пользователя

Карма: 21
Рейтинг сообщений: 142
Зарегистрирован: Сб фев 21, 2009 13:11:40
Сообщений: 1899
Откуда: Москва
Рейтинг сообщения: 0
вы названия битов то прочтите.

_________________
Ставим плюсы: )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 22:58:38 
Открыл глаза

Карма: 2
Рейтинг сообщений: 7
Зарегистрирован: Вт мар 20, 2012 07:16:43
Сообщений: 47
Рейтинг сообщения: 0
Отредактировал сообщение :shock: сейчас должно быть все правильно


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вс дек 09, 2012 23:46:06 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
Блин, не люблю загадки!
Может ошибка в том, что сначала необходимо установить только один бит - бит разрешение изменения регистра:
WDTCSR |= 0b00010000;
и только потом внести сами настройки:
WDTCSR |= 0b01001010; ???
То есть 0х10 и 0х4А ???


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Пн дек 10, 2012 00:08:30 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
Нихрена не помогает. Складывается такое впечатление, как будто даташит написан к какому-то другому микроконтроллеру. Кроме того нигде в инете не встречал подобного примера настройки и использования WDT в режиме генерации прерываний. Конечно, далеко не все AVR-ки имеют такую функцию у встроенного WDT, но всё же надеялся найти хотябы какой-нибудь пример...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Чт дек 13, 2012 23:51:15 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 12
Рейтинг сообщений: 67
Зарегистрирован: Пт авг 27, 2010 05:57:06
Сообщений: 2482
Откуда: Тюмень
Рейтинг сообщения: 0
как насчет того, чтобы не путаться в битовых и других магических константах и сделать вот так:
WDTCSR = (1<<WDE)|(1<<WDIE)|(1< WDP1);

А насчет загадок могу сказать, что вам код генератор уже создал нравильную последовательность активации таймера собаки, осталось выбрать правильный режим, на картинке , которую вам привели описано, что есть несколько режимов, если ваш Мк будет всегда уходить в перезагруз, то никаких лампочек вы не увидите. попробуйте в основном цикле сделать:
1 зажечь лампу
2 сбросить собаку


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Пт дек 14, 2012 10:08:13 
Модератор
Аватар пользователя

Карма: 56
Рейтинг сообщений: 882
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 17532
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Честно говоря, не имел дело ни с 24-й Тинькой, ни с собакой.
Но! После прочтения соотв. раздела ДШ по диагонали, кое-что прояснилось:
Помимо фьюзов, включать/выключать собаку можно программно.
В зависимости от конфигурации, собака может вызывать ресет или своё прерывание.
Для конфигурирования собаки надо выставить бит WDCE: Watchdog Change Enable и в течение 4-х тактов внести изменения.
Есть какие-то два safety level, которые влияют на возможность отключения сторожа :facepalm:

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Могу не отвечать пару месяцев, не беспокойтесь.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Пт дек 14, 2012 10:34:57 
Вымогатель припоя

Карма: 22
Рейтинг сообщений: 101
Зарегистрирован: Пн июн 14, 2010 13:07:29
Сообщений: 612
Откуда: Жуковский
Рейтинг сообщения: 0
в Safety level 1 (WDTON не запрограммирован) можно выставлять таймаут и без WDTCE.
Тоже хочется разобраться с WD, но под рукой контроллера нет, а Proteus, похоже, некорректно работает с WDT.
ELcat, попробуйте в железе для проверки простой тест:
Код:
ISR(SIG_WATCHDOG_TIMEOUT)
{
  PORTA ^= 0xFE;
}

int main(void)
{
  DDRA = 0xFF;

  WDTCSR = (1<<WDCE) | (1<<WDE);
  WDTCSR = (1<<WDIE) | (1<<WDP1) | (1<<WDP2);
  sei();

  while(1)
  {
    PORTA ^= 1;
    _delay_ms(500);
  }
}
только CLKDIV8 не программировать.
в основном цикле дергание ножкой PA0 1 Гц, а если прерывание WD будет работать, то будут дергаться остальные PA7-PA1 0.5 Гц.
скомпилированный HEX прилагается.


Вложения:
main.hex [394 байт]
Скачиваний: 535
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Пт дек 14, 2012 22:44:44 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
a_skr, к сожалению, мне этот код в "девайс" лить нельзя, поскольку "девайс" уже полностью спаянный и частично работает (без "спячки" пока, разумеется). На РА.7 повешен затвор HexFETa, и если туда вместо корректного ШИМ подать "1" на полсекунды, то буду иметь "пичальку" с погоревшими детальками бустера. Если можно, перепишите код, пожалуйста, исключительно для РВ.0, РВ.1 и РВ.2 (подключены светодиоды). Все остальные линии портов надо оставить "плавающими", то есть входами без "подтяжек".

По поводу подозрений в том, что я "мог не поймать ресет". Сейчас в основном цикле программы опрашиваются кнопки с частотой около 10Гц. По нажатию инкрементируется/декрементируется содержимое регистра OCR0B, по которому и формируется выходной сигнал ШИМ. То есть, если бы были сбросы, то при попытке установить какой-либо уровень скважности он периодически сбрасывался бы в 0х00, поскольку именно это число в моём коде пишется в OCR0B при инициализации таймера 0. Но тем не менее этого не происходило при любой записываемой мной комбинации в WDTCSR.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Пн дек 17, 2012 09:33:44 
Вымогатель припоя

Карма: 22
Рейтинг сообщений: 101
Зарегистрирован: Пн июн 14, 2010 13:07:29
Сообщений: 612
Откуда: Жуковский
Рейтинг сообщения: 0
ok. давайте попробуем. используются PB.0 - основной цикл, PB.1 - таймаут WD:
Код:
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>

ISR(SIG_WATCHDOG_TIMEOUT)
{
  PORTB ^= 2;
}

int main(void)
{
  DDRB = 3;
  WDTCSR = (1<<WDCE) | (1<<WDE);
  WDTCSR = (1<<WDIE) | (1<<WDP1) | (1<<WDP2);
  sei();
  while(1)
  {
    PORTB ^= 1;
    _delay_ms(500);
  }
}


Вложения:
main.hex [394 байт]
Скачиваний: 631
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Вт дек 18, 2012 21:02:05 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
a_skr, прошу прощения, что долго не отвечал. Отец ушёл. Похороны. Ваш код работает, мигают оба светодиода (со снятым фузом CKDIV8). Проблема не в фузе. Мой вариант на CVAVR так и не запускается. Выкладываю архив проекта. Прошу вас взглянуть что в нём не так.


Вложения:
DL.ZIP [30.29 KiB]
Скачиваний: 466
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Ср дек 19, 2012 08:36:53 
Вымогатель припоя

Карма: 22
Рейтинг сообщений: 101
Зарегистрирован: Пн июн 14, 2010 13:07:29
Сообщений: 612
Откуда: Жуковский
Рейтинг сообщения: 0
сожалею :(
по программе. про фьюз CKDIV8 я указал просто, чтобы задержка нормально работала.
я так понял, что сброс по WD не интересует, только таймаут, так?
если так, то попробуйте поменять Ваши строчки:
WDTCSR=0x1A;
WDTCSR=0x4A;
на следующие:
WDTCSR=0x18;
WDTCSR=0x42;
таймаут 64 mS, правильно?
из обработчика таймаута WD уберите WDTCSR|=0x40;
кстати, в обработчике у Вас просто включается светодиод.
для проверки на первое время можно просто помигать им из обработчика, не трогая в главном цикле.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: ATtiny24 не стартует WDT...
СообщениеДобавлено: Ср дек 19, 2012 20:08:55 
Друг Кота
Аватар пользователя

Карма: 45
Рейтинг сообщений: 585
Зарегистрирован: Вт май 19, 2009 09:27:30
Сообщений: 3557
Откуда: Украина
Рейтинг сообщения: 0
Благодарю за соболезнования. Он пережил операцию, мучался больше года. Мы все до последнего момента верили, но чуда так не произошло. Онкология никого не щадит. Для нашей семьи, друзей и знакомых это невосполнимая потеря. Он был видным общественным деятелем и очень уважаемым человеком.

a_skr писал(а):
попробуйте поменять Ваши строчки:
WDTCSR=0x1A;
WDTCSR=0x4A;
на следующие:
WDTCSR=0x18;
WDTCSR=0x42;
Не помогло.


Вложения:
DL.ZIP [30.72 KiB]
Скачиваний: 442
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 207 ]  1, , , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: k22 и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y