Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 20.02.2015, 10:19  
aliste
Прописка
 
Регистрация: 13.10.2009
Сообщений: 116
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
aliste на пути к лучшему
По умолчанию Сторожевой таймер

Привет всем, возникла небольшая проблемка, есть необходимость задействовать сторожевой таймер WDT в микроконтроллере pic16f628, так вот как его настроить понятно а можно ли как то отследить его значение?
Реклама:
aliste вне форума  
Непрочитано 20.02.2015, 10:54  
alvadep
Почётный гражданин KAZUS.RU
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Сторожевой таймер

В лоб нельзя. Пользователю доступно только обнуление WDT. Но можно косвенно оценить примерное значение используя другой штатный таймер или программный подсчет времени от момента обнуления WDT.
alvadep вне форума  
Сказали "Спасибо" alvadep
aliste (20.02.2015)
Непрочитано 20.02.2015, 11:39  
aliste
Прописка
 
Регистрация: 13.10.2009
Сообщений: 116
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
aliste на пути к лучшему
По умолчанию Re: Сторожевой таймер

Спасибо.Да жалко что так нельзя, буду пробовать ориентироваться на TMR0
aliste вне форума  
Непрочитано 20.02.2015, 20:49  
NewWriter
Почётный гражданин KAZUS.RU
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,504
Сказал спасибо: 401
Сказали Спасибо 2,217 раз(а) в 1,315 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Сторожевой таймер

WDT работает от отдельного внутреннего RC-генератора, поэтому его частота нестабильна и может отличаться у разных микросхем. Типовое значение периода переполнения - 18 мс, умноженное на предделитель. А разброс значений - от 7 мс до 33 мс. Работает WDT несинхронно таймерам МК.
Да и я пока что не вижу применения тому, чтобы знать, сколько конкретно отсчитал WDT. В программе достаточно расставить clrwdt с такой периодичностью, чтобы гарантированно сбросить WDT в нормальных циклах и чтобы он не сбрасывался на критических циклах, где возможно зависание (ожидание конца АЦП-преобразования, ожидание конца передачи и т.п.)
NewWriter вне форума  
Непрочитано 20.02.2015, 21:36  
RECTO
Супер-модератор
 
Регистрация: 09.06.2011
Сообщений: 2,633
Сказал спасибо: 73
Сказали Спасибо 1,793 раз(а) в 647 сообщении(ях)
RECTO на пути к лучшему
По умолчанию Re: Сторожевой таймер

Сообщение от aliste Посмотреть сообщение
а можно ли как то отследить его значение?
А можно узнать, какой в этом смысл?
Чтобы просто узнать, не пора ли его сбрасывать?
RECTO вне форума  
Непрочитано 20.02.2015, 21:44  
NewWriter
Почётный гражданин KAZUS.RU
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,504
Сказал спасибо: 401
Сказали Спасибо 2,217 раз(а) в 1,315 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Сторожевой таймер

...а узнать об этом проще простого - после сброса отследить биты состояния и узнать причину сброса.
NewWriter вне форума  
Непрочитано 20.02.2015, 22:57  
aliste
Прописка
 
Регистрация: 13.10.2009
Сообщений: 116
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
aliste на пути к лучшему
По умолчанию Re: Сторожевой таймер

Сообщение от NewWriter Посмотреть сообщение
В программе достаточно расставить clrwdt с такой периодичностью, чтобы гарантированно сбросить WDT в нормальных циклах
То есть можно просто в конце подпрограмм расставить clrwdt если они не слишком длинные и не заморачиваться.
aliste вне форума  
Непрочитано 20.02.2015, 23:13  
NewWriter
Почётный гражданин KAZUS.RU
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,504
Сказал спасибо: 401
Сказали Спасибо 2,217 раз(а) в 1,315 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Сторожевой таймер

Разумеется! Даже можно и в более длинных подпрограммах, но несколько раз, с гарантированным интервалом до срабатывания WDT менее чем 7 мс (если без предделителя). Нужно длинее - можно предделитель настроить (но предделитель один и задействован либо на TMR0, либо на WDT). Расставляй команду clrwdt в тех местах, где безвыходное зацикливание кода не произойдет, то есть, в том месте, где подпрограмма гарантированно закончится и перейдет к продолжению основного цикла программы. А в тех кусках циклов, где есть ожидание завершения какого-то действия или что-то подобное, при котором из-за ошибок может нарушиться нормальная работа программы, там clrwdt ставить не нужно, при условии что подобран интервал переполнения WDT так, что не будет ложных сбросов.

Последний раз редактировалось NewWriter; 20.02.2015 в 23:16.
NewWriter вне форума  
Сказали "Спасибо" NewWriter
aliste (21.02.2015)
Непрочитано 21.02.2015, 00:22  
aliste
Прописка
 
Регистрация: 13.10.2009
Сообщений: 116
Сказал спасибо: 12
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
aliste на пути к лучшему
По умолчанию Re: Сторожевой таймер

Все понял буду пробовать.
aliste вне форума  
Непрочитано 21.02.2015, 21:25  
alvadep
Почётный гражданин KAZUS.RU
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Сторожевой таймер

Сообщение от NewWriter Посмотреть сообщение
А разброс значений - от 7 мс до 33 мс. Работает WDT несинхронно таймерам МК.
А слабо найти некое соответствие между этими таймерами?
Это скорей вопрос для разминки серого вещества, нежели поиск практического применения, хотя...
Можно найти и практическое применение, например, в этой теме.
alvadep вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ADUC831 и сторожевой таймер Belka12 ПЛИС и другие МК 4 31.07.2014 17:01
"Шахматный" таймер на ATmega 8515 Bahmut_aiirsoft Песочница (вопросы новичков) 14 17.11.2013 14:14
Сторожевой таймер в ATtiny25/45/85 mike124 Proteus 11 30.10.2012 11:19
Сторожевой таймер. Проведите ЛИКБЕЗ. radarr Микроконтроллеры, АЦП, память и т.д 9 22.01.2008 21:50
таймер и симуляция в MPLAB Sim lisergin Микроконтроллеры, АЦП, память и т.д 0 16.01.2006 15:35


Часовой пояс GMT +4, время: 19:42.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot