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

📄 2.c

📁 由AT98C51单片机硬件电路,用C51编写的红外线解码程序.
💻 C
字号:
#include <at89x52.h>
#include <stdio.h>
sfr p0=0x80;
sfr p3=0xb0;
sbit p32=p3^2;
unsigned char dm,i,j,k;
unsigned char data a[4];//定义4个数组,用来存储代码
void ds0_9ms(void)
{
 unsigned char j,k;
   for(j=18;j>0;j--)
     for(k=20;k>0;k--) 
}
void ds1ms(void)
{
 unsigned char i,j;
 for(i=2;i>0;i--)
   for(j=230;j>0;j--) 
}
void ds4_5ms(void)
{
 unsigned char i,j;
    for(i=10;i>0;i--)
   for(j=225;j>0;j--) 
}
void ds2s(void)
{
unsigned char i,j,k;
 for(i=200;i>0;i--)  
  for(j=200;j>0;j--)
     for(k=10;k>0;k--) 
}
void main()
{
 IT0=1;
 EX0=1;
 EA=1;
 dm=0;
 ds2s();
 p0=0;
while(1);
}
void t0(void) interrupt 0 using 2//外部中断0的函数
  {
    EA=0;
    for(k=0;k<10;k++)
  {
    ds0_9ms();
    if (p32==1) {k=10;break;}
    else if(k==9)
              {
            while(p32==0);
            ds4_5ms();
            for(i=0;i<4;i++)
               {
                 for(j=1;j<=8;j++)
                 {
                 while(p32==0);
                 ds0_9ms();
                  if(p32==1)
                      {ds1ms();
                       dm=dm|0x80;
                       if(j<8) dm=dm>>1;
                      }
                 else if(j<8)dm=dm>>1;
                 }
             a=dm;
             dm=0;
               }
           for(i=0;i<4;i++)
             {
              p0=a;
              ds2s();
             }
          }
  }
 p0=0;
 EA=1;
}

 

⌨️ 快捷键说明

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