请教一下,如何设置ATmega128 的省电模式以及掉电模式。我根据数据手册上的编程,在省电模式和掉电模式时消耗的电流是一样的。并却我使用外部定时器进入掉电模式后外部晶体好像并未停止工作。
下面是我设计的代码:
//---------------- 进入睡眠模式 --------
#define ENTERING_SLEEPING_MODE() \
do{ \
MCUCR = 0x38; \
asm("sleep"); \
asm("nop"); \
while(ASSR&0x07); \
} while(0)
//---------------- 进入掉电模式 --------
#define ENTERING_POWERDOWN_MODE() \
do{ \
MCUCR = 0x30; \
asm("sleep"); \
asm("nop"); \
while(ASSR&0x07); \
} while(0)
//---------------- 进入空闲模式 --------
#define ENTERING_IDLE_MODE() \
do{ \
MCUCR = 0x18; \
while(ASSR&0x00); \
} while(0)
进入睡眠后,外部定时器时间到了,我在把它切换到空闲模式,是否可行???
谢谢!! |