tryb uśpienia atmega

Czy możliwe będzie uśpienie mikrokontrolera w trybie np. idle i odliczanie przez timer 0 okolo 5sekund oraz zliczanie przez timer 2 impulsów zewnętrznych w czasie tych 5 sekund. Wszystko co jest możliwe do wyłączenia w tym czasie powinno być wyłączone. Czy taka praca mikrokontrolera w tym trybie jest możliwa? Wydaje mi się, że w tym trybie atmega wiele nie zaoszczędzi - czy mam racje? Czy ktoś potrafi określić w procentach ile w danym trybie uśpienia oszczędza mikrokontroler? Czy mogę to zrobić w jakimś innym bardziej oszczędnym trybie?

Reply to
mateuszek
Loading thread data ...

Użytkownik "mateuszek" <mateus1934 snipped-for-privacy@o2.pl napisał w wiadomości news:dj5kr3$lbd$ snipped-for-privacy@nemesis.news.tpi.pl...

Wszystko masz w dokumentacji: budzikiem może być licznik 2; liczniki pracują w trybach Idle, ADC NRM i Power Save; w Idle pobór prądu obniża się o mniej niż połowę, w ADC NRM podobnie, w Power Save wynosi kilkanaście uA.

Pzdr, Raf.

Reply to
invalid unparseable

Jeśli dobrze zrozumiałem z not aplikacyjnych to w sleep mode Timer2 działa jako timer asynchroniczny, czyli zasilany z dodatkowego rezonatora o niższej częstotliwości. Pozostałe timery chyba nie działają? Pozostaje mi chyba tylko tryb idle lub adc noise reduction, gdyż potrzebuje dwóch działających liczników. Jeden zlicza impulsy zewnętrzne a drugi okresla czas w jakim są zliczane te impulsy, czyli budzi mikrokontroler ze snu.

Reply to
mateuszek

Użytkownik "mateuszek" <mateus1934 snipped-for-privacy@o2.pl napisał w wiadomości news:dj601t$r14$ snipped-for-privacy@atlantis.news.tpi.pl...

Dobrze zrozumiałeś, ja natomiast się zagalopowałem. :) Możesz jeszcze poeksperymentować następująco:

- jako budzik wykorzystaj watchdoga, działającego w trybie generacji przerwań,

- sygnał, którego zbocza zliczasz, podłącz do TOSC1 (podają niestety, że: "Applying an external clock to the TOSC1 pin may result in incorrect Timer/Counter2 operation", co warto sprawdzić),

- układ wprowadzaj w tryb Power-save. Metoda stosowalna, o ile nie potrzebujesz z góry określonej długości czasu opóźnienia (jego dokładną wartość możesz natomiast zbadać, mierząc go po starcie układu z użyciem któregoś timera).

Powodzenia, Raf.

Reply to
invalid unparseable

To bardzo ciekawy pomysł. Jak najszybciej postaram się to sprawdzić. dziękuję i pozdrawiam

Reply to
marius

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.