can通訊協議是乙個載波偵聽、基於報文優先順序碰撞檢測和仲裁(csma/cd+amp)的多路訪問協議。csma的意思是匯流排上的每乙個節點在企圖傳送報文前,必須要監聽匯流排,當匯流排處於空閒時,才可傳送。cd+amp的意思是通過預定程式設計好的報文優先順序逐位仲裁來解決碰撞,報文優先順序位於每個報文的標識域。更高階別優先順序標識的報文總是能獲得匯流排訪問權,即:識別符號中最後保持邏輯高電平的會繼續傳輸,因為它具有更高優先順序。
iso-11898:2003標準,帶有11位識別符號,提供的最高訊號速率從125kbps到1mbps。更遲一些的修訂標準使用了擴充套件的29位識別符號。
標準can
標準can只有11位識別符號,每幀的資料長度為51+(064)=(51117)位。
·sof- 幀起始。顯性(邏輯0)表示報文的開始,並用於同步匯流排上的節點。
·識別符號- 標準can具有11位識別符號,用來確定報文的優先順序。
此域的數值越小,優先順序越高。
·rtr- 遠端傳送請求位。
當需要從另乙個節點請求資訊時,此位為顯性(邏輯0)。
所有節點都能接收這個請求,但是幀識別符號確定被指定的節點。
響應資料幀同樣被所有節點接收,可以被有興趣的節點使用。
·ide- 識別符號擴充套件位,為顯性時表示這是乙個標準can格式,為**表示這是擴充套件can格式。
· r0- 保留位(可能將來標準修訂會使用)。
· dlc- 4位資料長度**表示傳輸資料的位元組數目,一幀can最多傳輸8位元組使用者資料。
· 資料0~8– 最多可以傳輸8位元組使用者資料。
· crc- 16位(包括1位定界符)crc校驗碼,用來校驗使用者資料區之前的(包含資料區)傳輸資料段。
· ack- 2位,包含應答位和應答界定符。
傳送節點的報文幀中,ack兩位是隱性位,當接收器正確地接收到有效的報文,接收器會在應答位期間向傳送節點傳送乙個顯性位,表示應答。
如果接收器發現這幀資料有錯誤,則不向傳送節點傳送ack應答,傳送節點會稍後重傳這幀資料。
· eof– 7位幀結束標誌位,全部為隱性位。
如果這7位出現顯性位,則會引起填充錯誤。
· ifs– 7位幀間隔標誌位,can控制器將接收到的幀正確的放入訊息緩衝區是需要一定時間的,幀間隔可以提供這個時間。
擴充套件can
擴充套件can具有29位識別符號,每幀資料長度為71+(064)=(71135)位。
注:不計位填充。
擴充套件can訊息相對於標準can訊息增加的內容如下:
· srr– 代替遠端請求位,為隱性。所以當標準幀與擴充套件幀傳送相互衝突並且擴充套件幀的基本識別符號與標準幀的識別符號相同時,標準幀優先順序高於擴充套件幀。
· ide– 為隱性位表示標誌位擴充套件幀,18位擴充套件識別符號緊跟著ide位。
· r1– 保留
CAN匯流排協議
can control controller area network 是控制 器 區域網的簡稱 can是一種有效支援分布式控制或實時控制的序列通訊網路,最初由德國bosch公司80年代用於汽車內部測試和控制儀器之間的資料通訊。目前can 匯流排規範已被國際標準化組織iso制訂為國際標準iso118...
CAN匯流排協議
can control controller area network 是控制 器 區域網的簡稱 can是一種有效支援分布式控制或實時控制的序列通訊網路,最初由德國bosch公司80年代用於汽車內部測試和控制儀器之間的資料通訊。目前can 匯流排規範已被國際標準化組織iso制訂為國際標準iso118...
CAN匯流排協議CAN協議,系統結構和幀結構
can controller area network,控制器區域網 是一種能有效支援分布式控制和實時控制的序列通訊網路。can bus controller area network bus,控制器區域網匯流排技術 can匯流排系統結構 can 控制器 接收控制單元中微處理器發出的資料,處理資料並...