nbsp;j,k,N=0;
EX1 = 0;
delay(15);
if (IRIN==1)
{ EX1=1;
return;
}
while (!IRIN)
{ delay(1);}
for (j=0;j<4;j++)
{
for (k=0;k<8;k++)
{
while (IRIN)
{ delay(1);}
while (!IRIN)
{ delay(1);}
while (IRIN)
{
delay(1);
N++;
if(N>=30)
{
EX1=1;
return;}
}
IRCOM[j]=IRCOM[j]>>1;
if (N>=8) { IRCOM[j] = IRCOM[j]|0x80;}
N=0;
}
if (IRCOM[2]!=~IRCOM[3])
{ EX1=1;return;}
switch(IRCOM[2])
{
case 0x45:
P2=0x00;
break;
case 0x47:
P2=0xff;
break;
case 0x16:
P2_7=~P2_7;
break;
case 0x0c:
P2_6=~P2_6;
break;
case 0x18:
P2_5=~P2_5;
break;
case 0x5e:
P2_4=~P2_4;
break;
case 0x08:
P2_3=~P2_3;
break;
case 0x1c:
P2_2=~P2_2;
break;
case 0x5a:
P2_1=~P2_1;
break;
case 0x42:
P2_0=~P2_0;
break;
}
EX1=1;
}
}
void delay(unsigned char x)
{
unsigned char i;
while(x--)
{
for (i=0;i<13;i++){ }
}
}
void delayms(uint xms)
{
uint k,y;
for(k=xms;k>0;k--)
for(y=110;y>0;y--);
}
void check()
{
P2=0X7F; delayms(200);
P2=0X3F; delayms(200);
P2=0X1F; delayms(200);
P2=0X0F; delayms(200);
P2=0X07; delayms(200);
P2=0X03; delayms(200);
P2=0X01; delayms(200);
P2=0X00; delayms(1000);
P2=0XFF;
}
main()
{
check();
IE=0x84;
TCON=0x10;
IRIN=1;
delayms(10);
while(1)
{
;
}
}
用什么燒寫的?通用燒錄器?還是自己的程序?
檢查程序是否有CheckID()一類的功能函數,自己調試讀取一下安森美的24C02是個什么廠商ID和產品ID。