Такая вот ситуация: Берем МК, например Тини 26, у него предделитель Timer1 может быть 16384 и при частоте 1 МГц мы получаем переполнение за 4 секунды. Задача такая, останавливаемся на sleep, раз в четыре секунды вываливаемся в прерывание по переполнению, что то делаем, и если условие неверно, опять переходим в sleep. Вопрос у меня вот в чем: как сбрасывать wdr в момент сидения в sleep? Я сижу в sleep 4 секунды, а максимальное время wdr - 2 секунды. Отказыватся от wdr не хочется, питание устройства очень редко будет отключатся, sleep - устройство питается от аккумуляторов, хоть достаточно и мощных, но снижение потребления хоть немного не помешает. Единственное, что пришло в голову, разбивать 4 секудный отрезок таймера по крайней мере на три и сбрасывать wdr. Но вероятно есть и другие решения?
--------------------
Андрей Смирнов
|