Работа с WDT в МК PIC16F628
20.02.2015, 22:27
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,042
Сказал спасибо: 589
Сказали Спасибо 3,967 раз(а) в 1,825 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от RECTO
|
|
Если сделать прямыми руками, то всё будет гуд.
|
Немножко процитирую
|
Цитата:
|
|
А можно узнать, какой в этом смысл?
|
А в прочем...
Как говорила моя бабушка: "что ни садовод, то и чудак". Имхо, само в тему.
|
|
|
|
20.02.2015, 23:35
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от alvadep
|
|
А можно узнать, какой в этом смысл?
|
А смысл в том, что если в конкретной программе удобнее всего будет отправить МК в SLEEP именно в обработчике, то так и следует сделать. А не думать о том, гуд это или не гуд (потому что кто-то когда-то решил, что это не гуд).
|
|
|
|
21.02.2015, 00:47
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,042
Сказал спасибо: 589
Сказали Спасибо 3,967 раз(а) в 1,825 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от RECTO
|
|
А смысл в том, что если в конкретной программе удобнее всего будет отправить МК в SLEEP именно в обработчике, то так и следует сделать.
|
Ха-ха-ха! Это того же плана, что и отследить значение WDT. Вот только почему у Вас возник такой бурный восторг только в одном случае?
Я, например, не вижу причин для скоропостижного перехода в режим SLEEP, чтобы делать это в обработчике прерывания.
|
|
|
|
21.02.2015, 02:13
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от alvadep
|
|
Ха-ха-ха! Это того же плана, что и отследить значение WDT. Вот только почему у Вас возник такой бурный восторг только в одном случае?
|
Не было там никаких "восторгов", Вам показалось.
Сообщение от alvadep
|
|
Я, например, не вижу причин для скоропостижного перехода в режим SLEEP, чтобы делать это в обработчике прерывания.
|
А что, есть какая-то догма программирования - не делать это в обработчике? И нужны веские причины, чтоб от неё отступить?
Впрочем, ТС сам решит, как ему удобнее сделать.
|
|
|
|
21.02.2015, 02:54
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
После команды спать и вывода из спать по переполнению WDT все переменные изменённые в работе программы сохраняют своё значение.
|
|
|
|
21.02.2015, 14:56
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,815
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от RECTO
|
|
Потому что фактически это не пробуждение, а сброс МК. В остальных случаях все регистры сохраняют свои значения.
|
А регистры сохраняются даже при сборосе, если напряжение питания не снижается ниже указаного в даташите (напряжения сохранения RAM), это ориентировочно 1,5В-1,8.
__________________
"picavr(ГАВ)мыло.ру" USB_Analyzer, Digital_Storage_Oscilloscope "picavr.kr1.ru" заказы в Китай компонентов/изготовление: плат/ЖКИ/мембраных клавиатур/имп трансформаторов
|
|
|
|
21.02.2015, 18:37
|
|
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,762
Сказал спасибо: 76
Сказали Спасибо 1,840 раз(а) в 668 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
Сообщение от picavr
|
|
А регистры сохраняются даже при сборосе, если напряжение питания не снижается ниже указаного в даташите (напряжения сохранения RAM), это ориентировочно 1,5В-1,8.
|
Только Вы уточните, что сейчас Вы имели ввиду регистры, состояние которых после сброса не определено (например, общего назначения). А то в конец всех запутаете.
|
|
|
|
21.02.2015, 20:22
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
|
Re: Работа с WDT в МК PIC16F628
вот именно!  а еще в этом случае нужно после старта МК вначале определить причину сброса по битам состояния (если они есть) и только потом идти дальше, либо очищая регистры перед началом работы, либо продолжая работу их содержимым.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:57.
|
|