<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 詳解基于CAN總線的汽車儀表系統(tǒng)設(shè)計―CAN報文傳輸機(jī)制

          詳解基于CAN總線的汽車儀表系統(tǒng)設(shè)計―CAN報文傳輸機(jī)制

          作者: 時間:2018-08-14 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/201808/386767.htm



          3、出錯幀
          出錯幀由兩個不同場組成,第一個場由來自個站的錯誤標(biāo)志疊加得到,后隨的第二個是出錯界定符。出錯幀的組成如下圖2一12所示:



          4、超載幀
          超載幀包括兩個位場;超載標(biāo)志和超載界定符,其組成如下圖2一13所示



          5、幀間空間

          數(shù)據(jù)幀和遠(yuǎn)程幀同前面的幀相同,不管是何種幀(數(shù)據(jù)幀、遠(yuǎn)程幀、出錯
          幀和超載幀)均被稱為幀間空間的位場分開。幀間空間包括間歇場和總線空閑
          場,對于“錯誤認(rèn)可”節(jié)點還有暫停發(fā)送場。對于非”錯誤認(rèn)可“的接收器,
          其幀空間如下圖2一14所示:



          對于“錯誤認(rèn)可”節(jié)點,其幀空間如下圖2-15所示:



          2.2.7CAN數(shù)據(jù)錯誤監(jiān)測


          可使用五種檢查錯誤的方法,其中前三種為基于報文內(nèi)容檢查。


          1.循環(huán)冗余檢查(CRC):在一幀報文中加入冗余檢查位可保證報文正確。接收站通過cRc可判斷報文是否有錯【25]。其工作原理如下:



          (5).根據(jù)R(x)和R‘(x)是否相等來判斷傳輸是否出錯,如果計算余數(shù)多項式和接收余項多項式相等,則數(shù)據(jù)傳輸無差錯,如果不等,則表明出現(xiàn)了錯誤,由發(fā)送方重新發(fā)送數(shù)據(jù),知道數(shù)據(jù)傳送正確為止。

          2.幀檢查:這種方法通過位場檢查幀的格式和大小來確定報文的正確性,用于檢查格式上的錯誤。
          3.應(yīng)答錯誤:被接收到的幀由接收站通過明確的應(yīng)答來確認(rèn)。如果發(fā)送站未收到應(yīng)答,那么表明接收站發(fā)現(xiàn)幀中有錯誤,也就以錯誤類型和界定是說,ACK場己損壞或網(wǎng)絡(luò)中的報文無站接收。
          4.總線檢測:CAN中的一個節(jié)點可監(jiān)測自己發(fā)出的信號。因此,發(fā)送報文的站可以觀測總線電平并探測發(fā)送位和接收位的差異。
          5.位填充:如果在一幀報文中有太多相同電平的位,就有可能失去同步。為保證同步,在五個連續(xù)相等位后,發(fā)送站自動插入一個與之互補(bǔ)的補(bǔ)碼位;接收時,這個填充位被自動去掉。例如,五個連續(xù)的低電平位后,CAN自動插入一個高電平位。CAN過這種編碼規(guī)則檢查錯誤,如果在一幀報文中有6個相同位,CAN就知道發(fā)生了錯誤。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();