久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1635|回復: 0
打印 上一主題 下一主題
收起左側

2051單片機+485通訊+PELCO-D協議 數據傳輸殘缺

[復制鏈接]
跳轉到指定樓層
樓主
ID:735148 發表于 2020-5-9 14:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. /************************************
  2.                         UART串口中斷
  3. ************************************/
  4. void UART_Interrupt (void) interrupt  4
  5. {
  6.         if(RI)  //接收字節
  7.         {
  8.                 RI = 0;
  9.                 if(datebuf_i<sizeof(DateBuf))  //DateBuf是用來存儲接收到的信息的數組。長度可隨協議手動更改
  10.                 {
  11.                         DateBuf[ datebuf_i++ ] =SBUF; //將接收緩沖區的信息按位寫入到數組中
  12.                 }
  13.                

  14.                 DelayXs(2);
  15.         }
  16.         if(TI)
  17.         {

  18.                 TI = 0;
  19.         }

  20. }
復制代碼
這是中斷接收部分的代碼。已經確定和排除的是波特率沒有問題。硬件系統沒有問題。
  1. unsigned char  Date_TF(unsigned char * buf)
  2. {
  3.         int a;
  4.         u8 a1;
  5.         u8 b;
  6.         u8 i=0 ;
  7.         u8 date_tf;
  8.         if(buf[0] ==0xff)
  9.         {
  10.                 if(buf[1] == 0x01)
  11.                 {
  12.                         if(buf[2] == 0x00)
  13.                         {
  14.                                 
  15.                                 if(buf[3] == 0x00)
  16.                                 {
  17.                                         if(buf[4] == 0x00)
  18.                                         {
  19.                                                 if(buf[5] == 0x00)
  20.                                                 {
  21.                                                         if(buf[6] == 0x00)
  22.                                                         {
  23.                                                                 relay_zheng();
  24.                                                         }                                                        
  25.                                                 }                                       
  26.                                         }
  27.                                 }
  28.                         }
  29.                         
  30. //                        b = buf[6];
  31. //                        
  32. //                        for( i=1;i<5;i++ )
  33. //                        {
  34. //                                a1=buf[i];
  35. //                                a +=a1;
  36. //                        }               
  37. //                        if(a == b)
  38. //                        {        
  39. //                                tf = 1;
  40. //                                relay_stop();//測試
  41. //                        }
  42.                 }
  43.         }
  44.         return date_tf;
  45. }
復制代碼
這是發現問題后一步步檢測出來的接收到的信息。只有前兩個是正確的。后面的都是錯誤的。
另外,再中斷接收函數中,必須放延時函數,要不然就什么都接收不到?

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美在线不卡 | 美女久久久久久久久 | 久久亚洲一区二区 | www.色午夜.com | 欧美一区二区三区高清视频 | 国产欧美精品一区 | 国产99久久精品一区二区永久免费 | 日韩精品视频在线观看一区二区三区 | www.五月婷婷.com | 黑人巨大精品欧美一区二区免费 | 亚洲精品一二三区 | 夏同学福利网 | 日韩中文字幕一区 | 一区二区三区亚洲精品国 | 激情网站在线 | 久久欧美高清二区三区 | 亚洲成av人影片在线观看 | 欧日韩在线 | 国产精品99| 中文二区 | 国产粉嫩尤物极品99综合精品 | 亚洲三区在线 | 国产精品区二区三区日本 | 九色一区| 天堂亚洲 | 午夜精品一区二区三区在线视 | 亚洲区一区二 | 国产精品久久免费观看 | www.久久| 成人精品一区亚洲午夜久久久 | 国产在线视频一区 | 久久久久久av | 日韩在线小视频 | 国产一区二区久久久 | 成人精品一区二区户外勾搭野战 | 日本在线视频一区二区 | 中文字幕一区二区三区精彩视频 | 久久精品色欧美aⅴ一区二区 | 一久久久| 精品一区二区在线观看 | 国产精品久久 |