如程序所示
void main(void)
{
u8 i;
mDelaymS(500);
GPIO_config();
P1M0 = 0x00;
P1M1 = 0x00;
EX1 = 1; //使能INT1中斷,用于喚醒MCU
EA = 1;
_nop_();
_nop_();
_nop_();
UART_config();
wake=1;
while (1)
{
// T=T_Result();
// RH=RH_Result();
// PCON = IDL; //MCU進入IDLE模式
PCON = PD; //MCU進入掉電模式
_nop_();
_nop_();
_nop_();
_nop_();
led0 = 0;
mDelaymS(500);
led0 = 1;
wake=0;
mDelaymS(20);
TX1_write2buff(0xbb);
mDelaymS(500);
wake=1;
}
}
void INT1_Isr() interrupt 1
{
// P34 = ~P34; //測試端口
}
如果把 PCON = PD; 屏蔽,也就是不進入掉電模式,串口是正常的,但是程序里面打開掉電,通過外部中斷喚醒后,串口卻沒有收到數據?什么原因?
|