日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CAN报文格式

發(fā)布時(shí)間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CAN报文格式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
CAN協(xié)議的報(bào)文傳輸過程中有:數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀、過載幀和幀間隔。

??????? 1.數(shù)據(jù)幀:用于發(fā)送節(jié)點(diǎn)向接收節(jié)點(diǎn)傳送數(shù)據(jù)的幀。

??????? 2.遠(yuǎn)程幀:用于接收節(jié)點(diǎn)向具有相同ID的發(fā)送節(jié)點(diǎn)傳送數(shù)據(jù)的幀。

??????? 3.錯(cuò)誤幀:用于當(dāng)檢測(cè)出錯(cuò)誤時(shí)向其他節(jié)點(diǎn)通知錯(cuò)誤的幀。

??????? 4.過載幀:用于接收節(jié)點(diǎn)通知其尚未做好準(zhǔn)備的幀。

??????? 5.幀間隔:用于將數(shù)據(jù)幀及遠(yuǎn)程幀與前面的幀分隔開來。

?

標(biāo)準(zhǔn)幀和擴(kuò)展幀:

???????

??????? 數(shù)據(jù)幀和遠(yuǎn)程幀都可以使用標(biāo)準(zhǔn)幀格式或者擴(kuò)展幀格式

??????? RTR:遠(yuǎn)程發(fā)送請(qǐng)求位,數(shù)據(jù)幀為顯性,遠(yuǎn)程幀為隱性。

??????? SRR:代替遠(yuǎn)程請(qǐng)求位(在擴(kuò)展格式中在RTR位置,所以得此名),該位為隱性位。在這個(gè)地方占個(gè)位以保持標(biāo)準(zhǔn)幀和擴(kuò)展幀IDE對(duì)齊,便可以判斷標(biāo)準(zhǔn)幀優(yōu)先于擴(kuò)展幀。

??????? IDE:標(biāo)識(shí)符擴(kuò)展位,標(biāo)準(zhǔn)幀為顯性,擴(kuò)展幀為隱性。

??????? R0、R1:保留位。

??????? DLC:數(shù)據(jù)長度位。

??????? CRC:校驗(yàn)位。

??????? CRC分隔符:隱性位

??????? ACK:應(yīng)答位和應(yīng)答界定位。在應(yīng)答域中,發(fā)送器發(fā)出兩個(gè)隱性位。接收器接收到報(bào)文后,在應(yīng)答位期間,用顯性位填充應(yīng)答位作為回應(yīng),應(yīng)答界定則為保持隱性。

??????? 幀結(jié)束:由7個(gè)隱性位組成。


數(shù)據(jù)幀:

???????

??????? SOF幀起始:數(shù)據(jù)幀開始的段。

??????? 仲裁場(chǎng):該幀優(yōu)先級(jí)的段。

??????? 控制場(chǎng):數(shù)據(jù)的字節(jié)數(shù)以及保留位。

??????? 數(shù)據(jù)場(chǎng):數(shù)據(jù)內(nèi)容。

??????? CRC場(chǎng):校驗(yàn)數(shù)據(jù)。

??????? 應(yīng)答場(chǎng):確認(rèn)正常接收的段。

??????? 幀結(jié)尾:數(shù)據(jù)幀結(jié)束的段。


遠(yuǎn)程幀:

???????

??????? 通過發(fā)送遠(yuǎn)程幀,作為數(shù)據(jù)接收器的節(jié)點(diǎn)可以發(fā)起各自數(shù)據(jù)源的數(shù)據(jù)傳送請(qǐng)求,即向數(shù)據(jù)發(fā)送器請(qǐng)求發(fā)送具有相同ID的數(shù)據(jù)幀。

??????? 遠(yuǎn)程幀沒有數(shù)據(jù)段。


錯(cuò)誤幀:

???????

????????錯(cuò)誤類型:應(yīng)答錯(cuò)誤,填充錯(cuò)誤,CRC錯(cuò)誤,格式錯(cuò)誤

??????? 錯(cuò)誤幀由錯(cuò)誤標(biāo)志的疊加和結(jié)束符組成。錯(cuò)誤標(biāo)志有主動(dòng)(積極)錯(cuò)誤標(biāo)志和被動(dòng)(消極)錯(cuò)誤標(biāo)志。主動(dòng)(積極)錯(cuò)誤標(biāo)志為6個(gè)顯性位,被動(dòng)(消極)錯(cuò)誤標(biāo)志為6個(gè)隱性位。

??????? 錯(cuò)誤積極節(jié)點(diǎn):如果檢測(cè)到一個(gè)錯(cuò)誤條件,就會(huì)發(fā)送積極錯(cuò)誤標(biāo)志。這將引起其它節(jié)點(diǎn)檢測(cè)到填充錯(cuò)誤,并開始發(fā)送錯(cuò)誤標(biāo)志。因此錯(cuò)誤標(biāo)志疊加在6~12位之間。節(jié)點(diǎn)發(fā)送完錯(cuò)誤標(biāo)志之后就發(fā)送一個(gè)隱性位,并監(jiān)控總線,直到總線上出現(xiàn)一個(gè)隱性位,然后再發(fā)送7個(gè)隱性位。這樣一個(gè)錯(cuò)誤幀就發(fā)送完畢了。

??????? 消極錯(cuò)誤節(jié)點(diǎn):如果檢測(cè)到一個(gè)錯(cuò)誤條件,會(huì)試圖發(fā)送一個(gè)消極錯(cuò)誤標(biāo)志進(jìn)行指示。這個(gè)消極錯(cuò)誤節(jié)點(diǎn)會(huì)一直等待6個(gè)具有相同極性的連續(xù)位,等待從消極錯(cuò)誤標(biāo)志起始開始,當(dāng)檢測(cè)到6個(gè)相同極性的連續(xù)位時(shí),消極錯(cuò)誤標(biāo)志發(fā)送完成。


過載幀:

???????

??????? 過載條件:接收器要求延遲下一次數(shù)據(jù)幀或遠(yuǎn)程幀的到達(dá);在幀間隔間歇場(chǎng)的第一位和第二位檢測(cè)到顯性位;如果CAN節(jié)點(diǎn)在錯(cuò)誤界定符或過載界定符的第8位采樣到一個(gè)顯性位,則節(jié)點(diǎn)會(huì)發(fā)送一個(gè)過載幀,錯(cuò)誤計(jì)數(shù)器不會(huì)增加。


幀間空間:

????????

???????

??????? 數(shù)據(jù)幀和遠(yuǎn)程幀的前面必然有幀間空間。對(duì)于主動(dòng)錯(cuò)誤節(jié)點(diǎn)和被動(dòng)錯(cuò)誤節(jié)點(diǎn),幀間空間的結(jié)構(gòu)稍有不同。對(duì)于主動(dòng)錯(cuò)誤節(jié)點(diǎn),幀空間由3個(gè)顯性位的間歇字段和總線空閑組成。在間歇字段不允許發(fā)送數(shù)據(jù)幀和遠(yuǎn)程幀。總線空閑的長度任意,當(dāng)有顯性位時(shí)就被認(rèn)為是幀起始。被動(dòng)錯(cuò)誤標(biāo)志除了上邊兩部分外,在間歇字段后還有8個(gè)顯性位的掛起傳輸。在掛起傳輸階段被動(dòng)錯(cuò)誤節(jié)點(diǎn)不可以發(fā)送數(shù)據(jù)幀與遠(yuǎn)程幀。



總結(jié)

以上是生活随笔為你收集整理的CAN报文格式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。