tryb =?ISO-8859-2?Q?u=B6pienia_atmega?=
Masz problem? Zapytaj na forum elektroda.pl
From: mateuszek <mateus1934__at_nospam_o2.pl>
Subject: tryb =?ISO-8859-2?Q?u=B6pienia_atmega?=
Date: Wed, 19 Oct 2005 16:21:47 +0200
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?
From: "Rafał Baranowski" <rufus_at_nospam_polsl.gliwice.pl.usun.to>
Subject: Re: tryb uśpienia atmega
Date: Wed, 19 Oct 2005 17:58:19 +0200
Użytkownik "mateuszek" <mateus1934__at_nospam_o2.pl> napisał w wiadomości
news:dj5kr3$lbd$1_at_nospam_nemesis.news.tpi.pl...
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?
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.
From: mateuszek <mateus1934__at_nospam_o2.pl>
Subject: Re: tryb =?ISO-8859-2?Q?u=B6pienia_atmega?=
Date: Wed, 19 Oct 2005 19:33:41 +0200
Rafał Baranowski wrote:
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.
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.
From: "Rafał Baranowski" <rufus_at_nospam_polsl.gliwice.pl.usun.to>
Subject: Re: tryb uśpienia atmega
Date: Wed, 19 Oct 2005 23:35:55 +0200
Użytkownik "mateuszek" <mateus1934__at_nospam_o2.pl> napisał w wiadomości
news:dj601t$r14$1_at_nospam_atlantis.news.tpi.pl...
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.
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.
From: marius <mariot_at_nospam_wp.pl>
Subject: Re: tryb =?ISO-8859-2?Q?u=B6pienia_atmega?=
Date: Fri, 21 Oct 2005 10:06:02 +0200
Rafał Baranowski wrote:
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.
To bardzo ciekawy pomysł. Jak najszybciej postaram się to sprawdzić.
dziękuję i pozdrawiam