#include "extern.h"
key bit pa.7;
led1 bit pa.0;
led2 bit pa.4;
byte key_a1,key_a2,key_a3;
void anjian(); //按键
/*******************************************************************************/
void FPPA0 (void)
{
.ADJUST_IC SYSCLK=IHRC/16, IHRC=16MHz, VDD=5V;
$ led1 out,low;
$ led2 out,low; //输出,低
$ key in,pull; //输入,上拉
key_a1 =0;
key_a2 =0;
key_a3 =0;
/*******************************************************************************/
$ tm2c sysclk,pa3,pwm;
$ tm2s 8bit,/16,/16;
//tm2b //tim2上限
/*******************************************************************************/
while (1)
{
anjian();
if(key_a3==1)
{
key_a3=0; //按键标志位清零
if(key_a2==1){led2=1;}
if(key_a2==0){led1=1;}
}
}
}
/*******************************************************************************/
void anjian() //按键
{
if(key==0)
{
.delay 100;
if(key==0)
{
key_a3 =1; //按键标志位
key_a1 =0;
while(!key)
{
.delay 100000;
key_a1++;
}
if(key_a1>20) {key_a2=1;} //长按
else{key_a2=0;} //短按
}
}
}
/*******************************************************************************/ |