检测.c
来自「基于单片机的特定型号的红外遥控器的接收检测程序」· C语言 代码 · 共 71 行
C
71 行
#include<reg51.h>
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
sbit DDD=P1^0;
uchar count1;
uint temp;
main()
{
SCON=0X40;
TMOD=0X21;
TR1=1;
ET1=0;
TH1=0XFD;
TL1=0XFD;
TH0=0X00;
TL0=0X00;
TR0=0;
ET0=1;
EX0=1;
IT0=1;
EA=1;
while(1);
}
void EINT0(void) interrupt 0 using 1
{
TR0=1;
if(/*(TH0>0X02)&&(TH0<0X04)*/TH0==0X03)
{
temp=(temp<<1)+0;
count1++;
}
if(/*(TH0>0X06)&&(TH0<0X08)*/TH0==0X07)
{
temp=(temp<<1)+1;
count1++;
}
TH0=TL0=0X00;
if(count1==16)
{
if(((temp&0xff00)>>8)==0xe2)
{
SBUF=(temp&0xff);
while(!TI);
TI=0;
SBUF=((temp&0xff00)>>8);
while(!TI);
TI=0;
temp=0x0000;
count1=0;
}
else
{
temp=0x0000;
count1=0;
}
}
}
void time_0(void) interrupt 1 using 2
{
TR0=0;
TH0=TL0=0X00;
count1=0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?