//////////红外接收子程序////////// void service_int2() interrupt 2 using 2 { //EA=0; uchar i,j,n=0; uchar a[4]; if (IRIN==1) { return; } for (;n<8;n++) { msdelay_1(1); if (IRIN==1) return; } n=0; //while (IRIN==0); //等高电平
for (;;n++) { usdelay_60(1); if (IRIN==1) break; if (n>40) return; } n=0;
for (;n<60;n++) { usdelay_60(1); if (IRIN==0) return; } n=0; //while (IRIN==1); //等低电平
for (;;n++) { usdelay_60(1); if (IRIN==0) break; if (n>10) return; } n=0; for (i=0;i<4;i++) { for (j=0;j<8;j++) { //while (IRIN==0); //等高电平
for (;;n++) { usdelay_60(1); if (IRIN==1) break; if (n>10) return; } n=0;
for (;n<13;n++) { usdelay_60(1); } n=0; a=a>>1; if (IRIN==1) { a=a|0x80; //while (IRIN==1); //等低电平
for (;;n++) { usdelay_60(1); if (IRIN==0) break; if (n>10) return; } n=0;
} } }
看一下哪个return的作用
|