Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: mega32 и idle mode
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Serj78
Задача состоит в следущем- минимизировать энергопотребление логгера температуры.

Для этого использую idle, таймер2 с часовым кварцем отсчитывает минутные интервалы, по переполнению просыпаемся, опрашиваем DS18S20, датчики, пр, пишем во внешнюю память, и снова в idle...

так вот- несмотря на то, что в idle ядро вроде как останавливается, ток почему-то зависит от тактовой частоты.( если верить даташитам). Для активного режима частота нужна высокая (считать надо и создавать временные интервалы) - а для режима idle- и 32кгц достаточно- работает только таймер2.

возникла идея- можно- ли на время пока идет режим idle как-нибудь переключать тактовый генератор на работу от кварца RTC ?, напрмер внешним коммутатором? smile.gif

кто-нибудь так делал?
rx3apf
Цитата(Serj78 @ Mar 18 2007, 01:39) *
Задача состоит в следущем- минимизировать энергопотребление логгера температуры.

Для этого использую idle, таймер2 с часовым кварцем отсчитывает минутные интервалы, по переполнению просыпаемся, опрашиваем DS18S20, датчики, пр, пишем во внешнюю память, и снова в idle...

так вот- несмотря на то, что в idle ядро вроде как останавливается, ток почему-то зависит от тактовой частоты.( если верить даташитам).

Именно так. Потому как там есть не только ядро...
Цитата(Serj78 @ Mar 18 2007, 01:39) *
Для активного режима частота нужна высокая (считать надо и создавать временные интервалы) - а для режима idle- и 32кгц достаточно- работает только таймер2.

возникла идея- можно- ли на время пока идет режим idle как-нибудь переключать тактовый генератор на работу от кварца RTC ?, напрмер внешним коммутатором? smile.gif

кто-нибудь так делал?

Редкое извращение wink.gif Не надо idle, делай power save. По прерыванию timer2 просыпаемся и работаем на высокой частоте. Потребление будет этак с 10 uA.
Alex_Pol
Попробуйте использовать МК MSP430. Там можно менять частоту тактирования программно.
Serj78
rx3apf, спасибо большое! Надо мне внимательнее читать даташиты smile.gif
SasaVitebsk
Цитата(Serj78 @ Mar 18 2007, 02:39) *
Задача состоит в следущем- минимизировать энергопотребление логгера температуры.

Для этого использую idle, таймер2 с часовым кварцем отсчитывает минутные интервалы, по переполнению просыпаемся, опрашиваем DS18S20, датчики, пр, пишем во внешнюю память, и снова в idle...

так вот- несмотря на то, что в idle ядро вроде как останавливается, ток почему-то зависит от тактовой частоты.( если верить даташитам). Для активного режима частота нужна высокая (считать надо и создавать временные интервалы) - а для режима idle- и 32кгц достаточно- работает только таймер2.

возникла идея- можно- ли на время пока идет режим idle как-нибудь переключать тактовый генератор на работу от кварца RTC ?, напрмер внешним коммутатором? smile.gif

кто-нибудь так делал?


Я делал практически аналогичные вещи. Разница в том, что у меня м88. Подключён кварц часовой. Работаю от внутреннего RC генератора 8МГц. В м88 можно менять тактовую частоту (точнее коэффициент деления). Пробовал по всякому. Пришёл только к варианту с таким написанием программы, чтобы время сна было максимальным и во время сна выключается максимум аппаратуры.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.