当前位置: 代码迷 >> 单片机 >> 红外光调音量
  详细解决方案

红外光调音量

热度:93   发布时间:2016-04-28 15:21:05.0
红外线调音量
求高手请教红外线调音量。。。
void EX0_ISR (void) interrupt 0 //外部中断0服务函数
{ char j,k;
  static unsigned char  i;             //接收红外信号处理
  static bit startflag;                //是否开始处理标志位

if(startflag)                         
   {
    if(irtime<63&&irtime>=33)//引导码 TC9012的头码,9ms+4.5ms
                        i=0;
     irdata[i]=irtime;//存储每个电平的持续时间,用于以后判断是0还是1
     irtime=0;
     i++;
     if(i==33)
       {
    irok=1;
 i=0;
   }
          }
    else
{
irtime=0;
startflag=1;
}

 if(irok)                        //如果接收好了进行红外处理
  {   
   Ircordpro();//红外码值处理函数
     irok=0;
  }

   if(irpro_ok)                   //如果处理好后进行工作处理,如按对应的按键后显示对应的数字等
  {
   

   switch(IRcord[2])//判断第三个数码值
         {
 
 case 0X04:VS_Write_Reg(0x0b,0x80,0x80); break;//音量设置
//  case 0X06:VS_Write_Reg(0x0b,0x40,0x40);break;//1
 //  case 0X08:VS_Write_Reg(0x0b,0x10,0x10);
  //           default:break;
 }

  irpro_ok=0;//处理完成标志

  }
     
}
我把调节音量的执行函数写在定时器里面,为什么总是不行?是时间原因吗?

------解决方案--------------------
  相关解决方案