void key_process(void)
{
if(keyOut>0)
{
keyOut--;
}
if(key_keyIsActive==1)
{
if(++keyCnt>5)
{
if(P3_7==1)
{
keyCnt=0;
key_keyIsActive=0;
keyOut =20;
}
}
if(keyCnt>100)
{
if(P3_7==0)
{
keyCnt=0;
key_keyIsActive=0;
if(wakeUp)
{
wakeUp=0;
PINMOD &= ~(1<<7);
}
else
{
wakeUp=1;
PINMOD |= (1<<7);
// AUX2 = (AUX2&~AUX2_PWRSAV_MASK)|1<<AUX2_PWRSAV_POS;//降低功耗
// STPSCK = 1; //设为 1,停止慢钟在停止模式。
// PCON = (PCON&~PCON_PD_MASK)|1<<PCON_PD_POS; //停止位,如果 1 进入停止模式。
// STPSCK = 0;
// AUX2 = (AUX2&~AUX2_PWRSAV_MASK)|0<<AUX2_PWRSAV_POS;//可降低空闲,停止喝暂停模式下芯片的功耗 5
}
}
}
if(keyCnt>130)
{
keyCnt=0;
keyOut =20;
key_keyIsActive=0;
}
}
} |