#include<reg52.h>
#include"./uart/uart.h"
#include"./lcd/lcd.h"
#include"./delay/delay.h"
sbit IR_IN = P3^2;
sbit LED1 = P1^0;
sbit LED2 = P1^1;
sbit LED3 = P1^2;
sbit LED4 = P1^3;
sbit LED5 = P1^4;
sbit LED6 = P1^5;
sbit LED7 = P1^6;
sbit LED8 = P1^7;
unsigned int irtime;
bit irok = 0;
bit startflag = 0;
bit irhandleok = 0;
unsigned char irdata[33];
unsigned char bitnum = 0;
unsigned char flag=0xff;
void int0_init()
{
IT0 = 1; //设置外部中断的触发方式
EA = 1;
EX0 = 1;
}
void timer0_init()
{
EA = 1;
TMOD |= 0x02;
TH0 = 0;
ET0 = 1;
TR0 = 1;
}
void timer0_isr() interrupt 1
{
irtime++;//0.256ms 引导码 13.5/0.256 = 52 1.12/0.256 = 4 0.56+1.685/0.256 = 8
} //0.277 48
void int0_isr() interrupt 0
{
if(startflag)
{
if((irtime>=40)&&(irtime<=60) )
{
bitnum =
单片机红外解码
最新推荐文章于 2024-04-16 21:30:59 发布