这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 急呀 各位大侠 PC与多单片机通信程序

共1条 1/1 1 跳转至

急呀 各位大侠 PC与多单片机通信程序

菜鸟
2011-10-18 11:15:24     打赏
PC与多单片机通信程序,我自己定的协议 ,现在我的程序测试时 多个从机都返回数据!下面是我的程序,麻烦各位大侠看看,谢谢啦!
/**************************串口中断函数**************************/
/*函数原型:void serial_int() interrupt 4
/*函数功能:发送与接收数据
/******************************************************************/
void serial_int() interrupt 4
{ unsigned char  m;
if(RI) //STX..ETX,SUM  Rbuf里没有字头
{
  RI=0;
  m=SBUF;
  if(last==STX && m==MyAddr)
  { Rptr=0;
  }  
  if(Rptr<BufMax)
  { Rbuf[Rptr]=m; Rptr++;}//接收了校验位CRC
  if(last==ETX)
   { RecvOk=1;   }
  last=m;
}
else
{
  TI=0;
  if(Tnum>0)
  {
   SBUF=Tbuf[Tptr];
   if(++Tptr>=BufMax)
    Tptr=0;
   Tnum--;
  }
}
}
主程序的部分:
if(RecvOk==1)
    {
   RecvOk=0;
   if(Rbuf[0]==MyAddr)
   { CheckSUM();
    if(sumOK==1)
    {
     ErrorCode=0;
     shuju_chuli();
    }
    else if(sumOK==0)
    { ErrorCode=1;   
     Tbuf[0]=STX;
     Tbuf[1]=Rbuf[0];
     Tbuf[2]=ErrorCode;
     Tbuf[3]=ETX;
     sum=0;
     for(a=0;a<4;a++)
      sum+=Tbuf[a];
     Tbuf[4]=sum;
     Tbuf[5]=sum>>8;
     Tptr=0;Tnum=6;
     TI=1;
    }
    }
      else
    break;
       }



关键词: 急呀     各位     大侠     单片机     通信     程序    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]