初级会员 
  
	- 积分
 - 102
 
        - 金钱
 - 102 
 
       - 注册时间
 - 2015-8-19
 
      - 在线时间
 - 3 小时
 
 
 
 | 
 
5金钱 
本人正在做一个RGB调光程序,用按键来选择模式,当按键在按下之后的0.8s内没有再次按下(count=120),如果有按键按下则再次ID++,直到在按键没有在0.8s内按下,就进入相应的模式,但我始终调不出那个按键,因为当我第一次按的时候能够正常显示,而后面就不能了,而且调光也不行,反复试验之后发现第一次之后定时器关闭,当我在其他的调光程序中没有TR0=0,或者ea=0啊,它自己关的实在奇怪 
 
void  KeyScan() 
{ 
if (key == 0) 
  { 
 
do{ 
delay(10); 
if (key == 0) 
 ID++; 
 while(key == 0); 
 
}while(count<120) ;  
SBUF=ID; 
while(!TI); 
TI=0; 
 
    switch(ID%3) 
      { 
        case 0: zhinengmode();  break; 
        case 1: gameover();     break; 
        case 2: whitelight();   break; 
      } 
      } 
  } 
 
 
void Timer0Interrupt() interrupt 1 
{  
        TH0 = 0xcb;	   //0b	  //9b 
        TL0 = 0xea; 
   N1++; 
   N2++; 
N3++; 
   if(N1==255)N1=0; 
   if(N2==255)N2=0; 
if(N3==255)N3=0; 
   count++; 
if(key==0) 
count=0; 
} 
 
  |   
 
 
 
 
 
 |