⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 remote_control_v3.h

📁 本代码详细说明了
💻 H
字号:
#include <Substruct.h>

unsigned long key;
unsigned char f[3],skip,numm,ff;
bit rd,ks;
sbit IR=P3^2;

void Init_interrupt()
{
 IT0=0;
 PX0=0;
 PT0=1;
 TMOD=0x01;
 TH0=0xFD;
 TL0=0xD0;
 EA=1;
 ET0=1;
 EX0=1;

}
 
void Remote_Control(void) interrupt 0
{
 unsigned char i,custom_code;

 ff=0;
 EX0=0;
 TR0=1;
 
kkk:
 if (TF0) ff++;
 if (ff<24) goto kkk;
 Display_Char(3,numm++);
 for (i=0;i<32;)
 {
  if (ks)
   { 
    if(rd) key|=(0x01<<i);
    i++;
    
   }
 }
 
 custom_code=key>>24;
 if (custom_code==0x00)//&&custom_code<=0xFF)
  Display_Char(1,1);
 else
  Display_Char(2,0);  
 Delay(100);
 ClearDisMemo();
 Delay(100);

 TR0=0;
 EX0=1;
}

void TIMER(void) interrupt 1
{
 TH0=0xFD; 
 TL0=0xD1;

 f[skip++]=IR;
 if (skip==2)
 {
  if (!f[0]&&f[1]&&!f[2])            //如果收到的是101,则确认值为0,且下一脉冲值为1
    {
     rd=0;
     f[0]=f[2];
     skip=1;
    }
  else
    {
     if (!f[0]&&f[1]&&f[2])       //如果收到的值为100,则确认值为1
     {
      rd=1;
      skip=0;
     }
    } 
  skip=0;
  ks=1;
 }
  
}
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -