如程序所示
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; 屏蔽,也就是不进入掉电模式,串口是正常的,但是程序里面打开掉电,通过外部中断唤醒后,串口却没有收到数据?什么原因?
|