欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機多機通信程序 主機為什么統計有時不準? [打印本頁]

作者: liduofu    時間: 2022-4-22 22:54
標題: 單片機多機通信程序 主機為什么統計有時不準?
請哪位大師幫忙看一下錯在哪里?謝謝!
主機發送從機號,從機收到+1,
extern uchar  Slave_PCS=-1;//從機計數初值 ,為0時第一次會少數

void ZOHJI_NUM()   //============================發從機代碼=0-255==========
{
static uchar  TX_ZHONGJI_COUT=0;//發送從機的編碼
        uchar  SLAVE_COUT=0;//從機從計數//
          //===接收到的數據等于發射的數據
      if(ZHONGJI_Dat==TX_ZHONGJI_COUT)
     {
           ERR_SALVE_TIM=0;  //沒收到開始計時   
           TX_ZHONGJI_COUT++; //發送從機號,0-255XTD!
           SLAVE_COUT++;  //從機返回來編號0-255XDNX!收到也開始計數
     Slave_PCS++;    //開始統計從機數量
     }
     
   if(ZHONGJI_Dat!=TX_ZHONGJI_COUT)
     
      {
     
        TX_ZHONGJI_COUT;  //發從機號出去,從機沒有收到,重發不變的代碼TX_ZHONGJI_COUT
        SLAVE_COUT;     //從機沒有收到,重發不計數
   
        ERR_SALVE_TIM++;  //從機未收到超時計時
     
      }
    if(ERR_SALVE_TIM==4)
        {      
         TX_ZHONGJI_COUT++;  //發從機號出去,3次從機沒有到,發下一個從機代碼
      SLAVE_COUT++;         //統計從機數量加一次。保持跟發送的代碼同步
        }
        
     if(ERR_SALVE_TIM==7)   //如果3次從機也沒有收到就結束
        {
         ERR_SALVE_TIM=0;      
         TX_ZHONGJI_COUT=1;  //如果還沒有從機返回來重新開始,表一輪結束//從1開始發
     
       SLAVE_COUT=0; //從機計數清0
                  ZHONGJI_PCS_A=Slave_PCS;//把計數發送到遙控器上顯示
                  Slave_PCS=0; //從機總計數清0   
   
        }
   
   TX_ZHONGJI_NUM[0]=TX_ZHONGJI_COUT/100+0x30;
      TX_ZHONGJI_NUM[1]=TX_ZHONGJI_COUT%100/10+0x30;
   TX_ZHONGJI_NUM[2]=TX_ZHONGJI_COUT%100%10+0x30;
   TX_ZHONGJI_NUM[3]='X';
      TX_ZHONGJI_NUM[4]='T';
   TX_ZHONGJI_NUM[5]='D';
   TX_ZHONGJI_NUM[6]='!';   
     
SendString(TX_ZHONGJI_NUM);//發代碼1-255個數   
     
  memset(S_tab,0,sizeof(S_tab));  
   
}

作者: 快樂眼淚    時間: 2022-11-15 20:52
樓主找到原因了嗎?
作者: Hephaestus    時間: 2022-11-16 14:40
先把主機和從機的問題區分開來,先用PC端串口助手自動發送功能模擬主機,看看從機響應如何。




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1