CAN現(xiàn)場總線的工作原理

當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時(shí),?它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對每個(gè)節(jié)點(diǎn)來說,無論數(shù)據(jù)是否是發(fā)給自己的,都對其進(jìn)行接收。每組報(bào)文開頭的11位字符為標(biāo)識符,定義了報(bào)文的優(yōu)先級,這種報(bào)文格式稱為面向內(nèi)容的編址方案。在同一系統(tǒng)中標(biāo)識符是單一的,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識符的報(bào)文。當(dāng)幾個(gè)站同時(shí)競爭總線讀取時(shí),這種配置十分重要。CAN現(xiàn)場總線通信協(xié)議包括CAN2.0A和CAN2.0B兩種,它們的幀格式如下:

CAN2.0A通信協(xié)議規(guī)定了四種不同的幀格式:

數(shù)據(jù)幀?:?用于節(jié)點(diǎn)間傳遞數(shù)據(jù),是網(wǎng)絡(luò)信息的主體,其幀格式依次包括:?幀起始、仲裁場、控制場、數(shù)據(jù)?

遠(yuǎn)程幀?:?由在線單元發(fā)送,用于請求發(fā)送具有相同標(biāo)識符的數(shù)據(jù)幀,其幀格式與數(shù)據(jù)幀基本相同,但沒有數(shù)據(jù)場

出錯(cuò)幀:??出錯(cuò)幀是檢測總線出錯(cuò)的一個(gè)信號標(biāo)志,由兩個(gè)不同的場構(gòu)成。一個(gè)場由來自不同節(jié)點(diǎn)的錯(cuò)誤標(biāo)志疊加,第二個(gè)場為錯(cuò)誤界定符。CAN協(xié)議采用CRC檢驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證數(shù)據(jù)通訊的可靠性。

超載幀:??由超載標(biāo)識和超載界定符組成,表明邏輯鏈路控制層要求的內(nèi)部超載狀態(tài),并將由媒體訪問控制層的一些出錯(cuò)條件而被啟動(dòng)發(fā)送。用于擴(kuò)展幀序列的延遲時(shí)間。

CAN2.0B通信協(xié)議分為兩種幀格式:

標(biāo)準(zhǔn)幀:標(biāo)準(zhǔn)幀信息為11個(gè)字節(jié),包括兩部分:信息和數(shù)據(jù)部分。前3個(gè)字節(jié)為信息部分,擴(kuò)展幀:擴(kuò)展幀信息為13個(gè)字節(jié),包括兩部分,信息和數(shù)據(jù)部分。前5個(gè)字節(jié)為信息部分。字節(jié)1為幀信息。第7位(FF)表示幀格式,在擴(kuò)展幀中,F(xiàn)F?=?1;第6位(RTR)表示幀的類型,RTR=0表示為數(shù)據(jù)幀,RTR=1表示為遠(yuǎn)程幀;DLC表示在數(shù)據(jù)幀時(shí)實(shí)際的數(shù)據(jù)長度。


返回列表