代码如下:
- 1 void hal_NEC_decode(uchar *addr,uchar *addrt,uchar *comm,uchar *commt)
- 2 {
- 3 uchar i,j,k;
- 4 uchar tmp1;
- 5
- 6 while(NECFrameFlag==0);
- 7 NECFrameFlag=0;
- 8
- 9 for(i=0,k=1;i<4;i=i+1)
- 10 {
- 11 tmp1=0;
- 12 for(j=0;j<8;j++)
- 13 {
- 14 tmp1 >>=1;//事先右移一位,防止最后一次循环的出错
- 15 if(NECTimerTable[k++] >8)
- 16 {
- 17 tmp1 |=0x80;
- 18 }
- 19 }
- 20 switch(i)
- 21 {
- 22 case 0:*addr=tmp1;break;
- 23 case 1:*addrt=tmp1;break;
- 24 case 2:*comm=tmp1;break;
- 25 case 3:*commt=tmp1;break;
- 26 }
- 27 }
- 28 }
|