ATmega48 sleep

Miko Imre imre.miko at siemens.com
Tue Dec 21 10:33:07 CET 2004


Hello,

Az Errata-ban van, hogy:

5. Asynchronous Oscillator does not stop in Power-down

The Asynchronous oscillator does not stop when entering power down mode. This
leads to higher power consumption than expected.

Problem fix / Workaround

Manually disable the asynchronous timer before entering power down.


Ez nem lehet gond nalad?

Udv
Imre

Fuzesi Arnold wrote:

> Ja, atmega8 eseten mukodik ugyan ez a program.
> Annyit csinaltam, hogy az INT0, SLEEP kornyeki regisztereket atneveztem,
> modositottam amire kell.
>
> Arnold
> ----- Original Message -----
> From: "Fuzesi Arnold" <arno at externet.hu>
> To: <elektro at tesla.hu>; <retro at lists.tmp.hu>; <avr-hun at x-dsl.hu>
> Sent: Tuesday, December 21, 2004 3:41 AM
> Subject: ATmega48 sleep
>
> > Sziasztok!
> >
> > Van valakinek tippje, miert mukodik ez:
> >
> > ....
> >  else if(!remote_type){       //ha vezetékes
> >   __watchdog_reset();
> >   WDTCSR=b00011000;
> >   WDTCSR=b00000000;    //WDT off
> >   LED=0;
> >   //WAKE-UP
> >   while(IR_IN);                    //varakozunk egy 0 szintre
> >   WDTCSR=b00011000;
> >   WDTCSR=b00001110;    //1s WDT period
> >   LED=1;
> >   goto INIT;
> > }
> >
> > Ez meg nem:
> >
> >  else if(!remote_type){   //ha vezetékes
> >   __watchdog_reset();
> >   WDTCSR=b00011000;
> >   WDTCSR=b00000000;    //WDT off
> >   EICRA=b00000000;    //INT0 low level (required for wake-up from power
> down
> > mode)
> >   EIFR=b00000001;     //INT0 flag clear
> >   EIMSK=b00000001;    //INT0 enable
> >   LED=0;
> >   __enable_interrupt();
> >   SMCR=b00000101;  //sleep enable,power down mode
> >   __sleep();                    //INT0 ebreszti
> >   asm("nop");
> >   //WAKE-UP
> >   __disable_interrupt();
> >   WDTCSR=b00011000;
> >   WDTCSR=b00001110;    //1s period
> >   LED=1;
> >   goto INIT;
> > }
> >
> > WDT ki van kapcsolva a fuse biteknel.
> >
> > Ugy csinal, mintha sleep-bol nem lepne tovabb. Illetve 104uA-t fogyaszt.
> > Neha mikor rajon akkor csak 2uA-t. (ez lenne a normalis, minden ki van
> > kapcsolva, boden, wdt, power down modban van)
> >
> > INT0 mukodik rendesen futo program eseten.
> > Egy egyszeru rutin amelyik siman lefut, es visszater.
> > Nem ertem... Valakinek otlete?
> >
> > Kösz,
> > Arnold
> >
>
> -----------------------------------
>  Szponzorunk: http://tonerbolt.hu/




More information about the Elektro mailing list