通过hx1838遥控数码管显示对应数字的程序
```c
#include<reg52.h>
sbit IR=P3^2;
#define DATA P0
sbit wei1=P2^4;
sbit wei2=P2^5;
sbit wei3=P2^6;
sbit wei4=P2^7;
unsigned char code duanma[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0123456789
unsigned char irtime;//红外用全局变量
bit irpro_ok,irok;
unsigned char ircord[4]; //客户码1+客户码2+操作码+操作反码
unsigned char irdata[33]; //1+8+8+8+8=33
/*函数定义*/
void tim0init(void) //定时器t0初始化
{
TMOD=0x02; //t0工作方式2(自动重装)
TH0=0X00;
TL0=0X00;
ET0=1;
TR0=1; //计时器开
}
void EX0init(void) //外部中断初始化
{
IT0=1; //下降沿触发
EX0=1;
EA=1;
}
void ir_work(void) //红外键值散转程序
{
switch(ircord[2]) //判断第三个数码值
{ case 0x19:DATA=duanma[0]; //注意,每个遥控器对应键值不一样,需要自己用led灯把每个键的键值试探出来
brea