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

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

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

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

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

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


 
Опции темы

WDT

Непрочитано 19.05.2016, 20:09  
rusyvochka
Гражданин KAZUS.RUN
 
Аватар для rusyvochka
 
Регистрация: 30.05.2008
Адрес: Запорожье, Украина
Сообщений: 505
Сказал спасибо: 190
Сказали Спасибо 95 раз(а) в 56 сообщении(ях)
rusyvochka на пути к лучшему
По умолчанию WDT

Доброго времени!
Возникла такая непонятка с WDT...
Есть такая схема, собранная на такой плате, работающая по программе в архиве , симмулятор в Протеусе прилагается. (это для любителей тыкать носом на отсутствие исходников ).
Команда CLRWDT есть в обработке прерывания от Т0, в попдпрограммах чтения / записи по 1-Wire, где добавились позже, на всякий.
А теперь о проблеме:
На выходе трансформатора ~9в, при входном 220. В отладке - тестировании проблем не было. Изделие переехало на пмж в часный сектор, где в сети 200в днем, и 190 утром - вечером. Трижды пойманы сюрпризы, а именно - потухший индикатор. Откл/вкл питания возвращает в нормальный режим. Понимаю, что пик уходит в кольцо, зависает, еще какой нить катаклизм, имеет право, бор, скорее всего, ни при чем, т.к. напряжение 5 в присутствует. Емкостей на 0,1, смд, прям на плате, чуть ли не на выводах поставлено. Лучше не стало. А теперь вопрос: почему WDT не перезапускает пик?
Нет индикации, нет записи, бор не остановил по снижению питания, вдт не сбрасывается, должен переполниться и перезапустить программу с 0х00. вывод Resset, используется как порт ввода, 10 кОм + 0,1 на корпус. Пока работает в режиме, не включение / выключение коммутируемой нагрузки (около 500 ват), не рядом включение пилорамы, не другие возмущения к сбоям не приводят. А вот так, просто в процессе работы, имело место быть.
Озвучу еще раз: в квартире, неделю, по сосетству с утюгами, кондиционераи и пр. "соседями" глюков не замечено. Чего зеваю?
Миниатюры:
Нажмите на изображение для увеличения
Название: Kurytnik_Sh.JPG
Просмотров: 0
Размер:	442.1 Кб
ID:	93044   Нажмите на изображение для увеличения
Название: Kurytnik_Pl.JPG
Просмотров: 0
Размер:	445.1 Кб
ID:	93045  
Вложения:
Тип файла: rar Kurytnik.rar (225.4 Кб, 0 просмотров)
Реклама:
__________________
Смотрящий под ноги - звёзды видит в лужах.
rusyvochka вне форума  
Непрочитано 19.05.2016, 20:45  
Eddy71
Гуру портала
 
Аватар для Eddy71
 
Регистрация: 22.02.2008
Адрес: Ukraine, Полтава
Сообщений: 10,450
Сказал спасибо: 5,996
Сказали Спасибо 26,906 раз(а) в 6,081 сообщении(ях)
Eddy71 на пути к лучшему
По умолчанию Re: WDT

WDT работает везде и всегда, даже когда больше ничего не работает. Это RC-генератор. А вот сбрасывать WDT в прерывании совсем не хорошо. Подозреваю, что у Вас плохо организовано питание и работа с BOR-детектором.
__________________
«Мышление - это когда ты упрощаешь вещи, а не усложняешь их»
/Жак Фреско/

моя домашняя страничка: http://www.eddy.com.ua/
Eddy71 вне форума  
Непрочитано 19.05.2016, 21:01  
rusyvochka
Гражданин KAZUS.RUN
 
Аватар для rusyvochka
 
Регистрация: 30.05.2008
Адрес: Запорожье, Украина
Сообщений: 505
Сказал спасибо: 190
Сказали Спасибо 95 раз(а) в 56 сообщении(ях)
rusyvochka на пути к лучшему
По умолчанию Re: WDT

Вот уж не допонял: это почему же в прерывании не камильфо?
Есть 2 прерывания, на входе - проверка, какое из обрабатывать, если Т0, знать питание в норме, Т0 работает, переполнился, можно и "собачку дёрнуть". Чего то не туде занесло, моло ли адрес / данная лишнюю единицу подхватила или потеряла - перезапуск.
Или я чего то не допонимаю? Есть "сторожевики, которые задействованы только для организации задержки "рессет" при подаче питани и остановке при снижении его же (напряжение) меньше заданного уровня - в пик не тот случай. Насколько я в курсе, ВДТ считает всё время, через заданный делитель и при переполнении перезапускает контроллер.
А насчет питания: как измениться настройка / порог БОР, при передергивании сетевой вилки ? Думаю - никак. И уж сильно сомневаюсь, сто из-зи всплесков питания слетели бы биты конфигурации, только динамич. данные, которые при старте с 0х00 обнуляются (ВСЕ!) и, некоторые, получают конкретные значения.
__________________
Смотрящий под ноги - звёзды видит в лужах.
rusyvochka вне форума  
Непрочитано 19.05.2016, 21:46  
cogen
Прописка
 
Регистрация: 25.04.2010
Сообщений: 24
Сказал спасибо: 9
Сказали Спасибо 17 раз(а) в 17 сообщении(ях)
cogen на пути к лучшему
По умолчанию Re: WDT

вроде BOREN в конфигурации снят, не? поставьте на всякий резистор 100 Ом на вход сброса (последовательно). Проанализируйте как себя ведёт прибор при сбое термодатчика.
cogen вне форума  
Непрочитано 19.05.2016, 22:16  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: WDT

Сообщение от rusyvochka Посмотреть сообщение
почему WDT не перезапускает пик?
Потому что слишком часто и безусловно сбрасывается wdt.
В общем случае, нельзя сбрасывать wdt, не убедившись, что всё пучком...
NewWriter вне форума  
Непрочитано 19.05.2016, 22:21  
cogen
Прописка
 
Регистрация: 25.04.2010
Сообщений: 24
Сказал спасибо: 9
Сказали Спасибо 17 раз(а) в 17 сообщении(ях)
cogen на пути к лучшему
По умолчанию Re: WDT

Можно дергать собачку в подпрограмме чтения термометра, предварительно убедившись, что цифры в норме. В остальных местах убрать.
cogen вне форума  
Непрочитано 19.05.2016, 22:27  
Alex9797
Почётный гражданин KAZUS.RUN
 
Аватар для Alex9797
 
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,548
Сказал спасибо: 5,035
Сказали Спасибо 10,605 раз(а) в 3,594 сообщении(ях)
Alex9797 на пути к лучшему
По умолчанию Re: WDT

Возможно, что от помехи сбивается конфигурация выводов портов. И тогда пик может честно отрабатывать динамическую индикацию (и сбрасывать при этом вдт), но ничего не будет светиться, потому что выходные пины стали входами. Или другая ситуация - пик ждет какого-то события на входе, и не дождется, потому что этот вывод уже стал выходом.
Alex9797 вне форума  
Непрочитано 19.05.2016, 22:40  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: WDT

Сообщение от cogen Посмотреть сообщение
убедившись, что цифры в норме
Не надо. Если цифры неправильные - это проблема датчика и/или линии связи. При этом надо либо повторно запросить циферки, либо сообщить об ошибке датчика, либо и то и другое. Если датчик или линия связи испортились, то сбросом МК делу не поможешь, зато добавишь неразберихи - мол, че-каво происходит?
Wdt же защищает работу кода в самом МК. Например, при короткой просадке питания, когда не сработала цепь сброса, а данные в регистрах подпортились, или если в результате каких то действий получили совсем не то, что надобно.
Однако, после сброса МК по wdt надо определить причину сброса и произвести некоторые действия. Быть может, переход в аварийный или резервный режим работы устройства, или повторная инициализация периферии с дефолтными устрановками, отмена пользовательских изменений.
NewWriter вне форума  
Непрочитано 19.05.2016, 22:51  
cogen
Прописка
 
Регистрация: 25.04.2010
Сообщений: 24
Сказал спасибо: 9
Сказали Спасибо 17 раз(а) в 17 сообщении(ях)
cogen на пути к лучшему
По умолчанию Re: WDT

Так ведь за счет сброса и получится полная реинициализация после нескольких ошибок чтения датчика. Если с самого начала и до первого успешного чтения датчика показывать на дисплее прочерки, то сразу будет понятно что произошло - датчик не подключен или сдох. Если он оживает после передёргивания вилки - ставить управление его питанием от контроллера и дёргать после сброса
cogen вне форума  
Непрочитано 19.05.2016, 22:58  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: WDT

повторную инициализацию датчика температуры можно проводить и без сброса самого МК. Поскольку, представьте, что МК например, помимо второстепенного датчика температуры, еще и крутит моторчик, перемещая какую-нить шняшку на какое-то расстояние. А тут из-за ошибки датчика температуры моторчик останавливается, а после перезапуска МК положение шняшки в пространстве неизвестно, и придется вернуть ее в первоначальное положение и повторить всё сначала.
NewWriter вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Attiny13 на коде из Bascom не просыпается по WDT 123ksn AVR 7 18.12.2017 23:30
Работа с WDT в МК PIC16F628 vavan1983 PIC 17 21.02.2015 20:22
wdt не работает yellow87 PIC 14 14.02.2014 05:08
PIC16F88 & WDT tolyanv8 Микроконтроллеры, АЦП, память и т.д 2 02.08.2010 15:37
WDT с чем его едят? t34 Микроконтроллеры, АЦП, память и т.д 6 17.08.2005 23:16


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.