詳解基于CAN總線的汽車儀表系統(tǒng)設(shè)計―CAN報文傳輸機(jī)制
3、出錯幀
出錯幀由兩個不同場組成,第一個場由來自個站的錯誤標(biāo)志疊加得到,后隨的第二個是出錯界定符。出錯幀的組成如下圖2一12所示:
4、超載幀
超載幀包括兩個位場;超載標(biāo)志和超載界定符,其組成如下圖2一13所示
5、幀間空間
數(shù)據(jù)幀和遠(yuǎn)程幀同前面的幀相同,不管是何種幀(數(shù)據(jù)幀、遠(yuǎn)程幀、出錯
幀和超載幀)均被稱為幀間空間的位場分開。幀間空間包括間歇場和總線空閑
場,對于“錯誤認(rèn)可”節(jié)點(diǎn)還有暫停發(fā)送場。對于非”錯誤認(rèn)可“的接收器,
其幀空間如下圖2一14所示:
對于“錯誤認(rèn)可”節(jié)點(diǎn),其幀空間如下圖2-15所示:
2.2.7CAN數(shù)據(jù)錯誤監(jiān)測
CAN協(xié)議可使用五種檢查錯誤的方法,其中前三種為基于報文內(nèi)容檢查。
1.循環(huán)冗余檢查(CRC):在一幀報文中加入冗余檢查位可保證報文正確。接收站通過cRc可判斷報文是否有錯【25]。其工作原理如下:
(5).根據(jù)R(x)和R‘(x)是否相等來判斷傳輸是否出錯,如果計算余數(shù)多項(xiàng)式和接收余項(xiàng)多項(xiàng)式相等,則數(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é)點(diǎn)可監(jiān)測自己發(fā)出的信號。因此,發(fā)送報文的站可以觀測總線電平并探測發(fā)送位和接收位的差異。
5.位填充:如果在一幀報文中有太多相同電平的位,就有可能失去同步。為保證同步,在五個連續(xù)相等位后,發(fā)送站自動插入一個與之互補(bǔ)的補(bǔ)碼位;接收時,這個填充位被自動去掉。例如,五個連續(xù)的低電平位后,CAN自動插入一個高電平位。CAN過這種編碼規(guī)則檢查錯誤,如果在一幀報文中有6個相同位,CAN就知道發(fā)生了錯誤。
評論