|
- void scankey(void)
- {
- if(pin_key)
- {
- if(key.up&2)
- {
- if ((key.cnt>=2)&&(key.cnt<=50)){key.data=2;} //短按
- key.cnt=0;
- }
- else {key.up++;}
- }
- else
- {
- if(key.cnt<255){key.cnt++;}
- if(key.cnt>=2)
- {
- key.up=0;
- if(key.cnt==120) { key.data=1;} //長(zhǎng)按3S
- }
- }
- }
- /*=========================================================*/
- void scankey(void)
- {
- u8 i=0;
- if(key.buf&1) {i++;}
- if(key.buf&2) {i++;}
- if(i==0)
- {
- if(key.up&4)
- {
- if((key.cnt>=3)&&(key.cnt<=100)&&key.onoff_flag){key.data=1;}
- key.cnt=0;
- key.all=0;
- key.onoff_flag=0;
- }
- else {key.up++;}
- }
- else if(i>=2)
- {
- if(key.all&4){key.cnt=0;key.up=0;key.onoff_flag=0;}
- else {key.all++;}
- }
- else
- {
- if(key.cnt<255){key.cnt++;}
- if(key.cnt>=3)
- {
- key.up=0;
- if(key.all<3)
- {
- if(key.buf==1){key.onoff_flag=1;}
- if((key.cnt==150)&&(key.buf==1)){key.data=3;}
- if((key.cnt==3)&&(key.buf==2)) {key.data=2;}
- }
- }
- }
- }
-
復(fù)制代碼
|
評(píng)分
-
查看全部評(píng)分
|