导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→大家帮帮忙,软件解码2262?(附有程序)[xiaochu312]

 *第40344篇: 大家帮帮忙,软件解码2262?(附有程序)

  
楼 主:xiaochu312 2006年5月22日23:34
 大家帮帮忙,软件解码2262?(附有程序)
解码时序图 


解不出码啊,各位大虾请指教那里出了问题,谢了

//----------------------------------------
//
// 单片机模拟2272解码
//
//--------------------------------------
#include  <reg52.h>  
#define uchar unsigned char
void int_0();       //外部中断0
void display(); 
void delay_1s(uchar);    
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
sbit P3_2=P3^2;
sbit P3_5=P3^5;
bit FINT0;   //中断标志为
uchar temp,data0,data1,counttime;

void int_0() interrupt 0 using 1
{
unsigned int time,time1;
FINT0=0;   //清中断标志
ET1=0;
TF2=0;    //溢出标志
TR2=1;
P3_5=0;  //红灯亮           //测试时用
//   delay_1s(1);       //测试时用
//  P3_5=1; //红灯灭       //测试时用

if(P3_2==1) 
{
    TR2=0;

   time=TH2*256+TL2;

   time1=time;

}
  if(time1  <15000)   //限时15000us
  {
   if(time1>  780&&time1  <1100) //0
   {
    temp=0x00;
   }
   if(time1>  210&&time1  <450)   //1
   {
    temp=0x01;
   }
   if(time1>  11000&&time1  <12500) //同步码
   {
    counttime=0;
    data0=0;
    data1=0;
    return;         //返回,等待下次开始接收
   }
    counttime++;
   if(counttime  <8)  //开始接收前8位
    { 
     data0=data0|temp;
  data0=data0  <  <1;
     }
    if(counttime==8) // 第8位
     {
       data0=data0|temp;
     }
    if(counttime>  8)  //开始接收后4位
     {
      data1=data1|0x0f;
      data1=data1|temp;
      data1=data1  <  <1;
     }
     if(counttime==12)    // 第12位
      {
        data1=data1|temp;
     counttime=0;
      }
}
   else 
   {
      TH2=0x00;    
      TL2=0x00;; //误码,重新记时
}
}

void main()
{
EX0=1;              // INT0中断开
IT0=1;              // INT0下降沿触发(为0 低电平触发)

TH2=0x00;    //15ms
TL2=0x00;
EA=1;
while(1)
{
  display();
}

}

void display()
{
if(data0==0x00)
{
  P1_0=!data1&0x01;
  delay_1s(1);
  P1_1=!data1&0x02;
  delay_1s(1);
  P1_2=!data1&0x04;
  delay_1s(1);
  P1_3=!data1&0x08;
  delay_1s(1);
}
}

void delay_1s(uchar k)        //1s
{
  uchar i,j,t;
  for(i=0;i  <k;i++)
  for(j=0;j  <100;j++)
  for(t=0;t  <100;t++);
}


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:专用集成电路(ASIC)应用与设计深圳班

[下一篇主题]:谁可以帮我完成毕业设计的程序  急急急