日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 消費電子 > 消費電子
[導讀]在物理線路上,由于噪聲干擾、信號衰減等多種原因,數據傳輸過程中常常出現差錯,而物理層只負責透明地傳輸結構的原始比特流,不可能進行任何差錯控制。因此,當需要在一條

在物理線路上,由于噪聲干擾、信號衰減等多種原因,數據傳輸過程中常常出現差錯,而物理層只負責透明地傳輸結構的原始比特流,不可能進行任何差錯控制。因此,當需要在一條線路上傳送數據時,除了必須有一條物理線路(鏈路)外,還必須有一些必要的規(guī)程來控制這些數據的傳輸。把實現這些規(guī)程的硬件和軟件加到鏈路上,就構成了數據鏈路層(Data Link Layer)。

什么是 CAN 總線

CAN 是“Controller Area Network”的縮寫,即“控制器局域網”,是一個 ISO 標準的串行通信協議。CAN 總線由德國 BOSCH 公司研發(fā)設計,用于應對汽車上日益龐大的電子控制系統的需求,其最大的特點是可拓展性好,可承受大量數據的高速通信,并且高度穩(wěn)定可到。ISO 組織通過 ISO11898 和 ISO11519 對 CAN 總線進行了標準化,使其早早確立了歐洲汽車總線標準的地位。時至今日,CAN 總線已經獲得業(yè)界的高度認可,其應用也從汽車電子領域延伸至工業(yè)自動化、船舶、醫(yī)療設備、工業(yè)設備等領域。

CAN 總線網絡拓撲結構

CAN 總線的物理連接只需要兩根線,常稱為 CAN_H 和 CAN_L,通過差分信號進行數據的傳輸。CAN 總線有兩種電平,分別為 隱性電平 和 顯性電平,這兩種電平有著類似漏極 I/O 電平信號之間“與”的關系:

若隱性電平相遇,則總線表現為隱性電平;

若顯性電平相遇,則總線表現為顯性電平;

若隱性電平和顯性電平相遇,則總線表現為顯性電平。

一個典型的 CAN 總線網絡拓撲結構如圖1所示,注意兩端的終端電阻是必需的。

 

 

CAN總線數據鏈路層包括

1、通信機制

2、數據幀

3、錯誤檢測

4、幀格式

5、位定時與同步

CAN總線幀格式

數據就是通過這種格式按位發(fā)送出去??偩€上總共有以下5種不同類型的幀。

CAN 總線協議規(guī)定了5種幀,分別是數據幀、遙控幀、錯誤幀、過載幀以及幀間隔,實踐中數據幀的應用最為頻繁。各種幀的用途如表1所示。

 

 

數據幀用來節(jié)點之間收發(fā)數據,是使用最多的幀類型;遠程幀用來接收節(jié)點向發(fā)送節(jié)點接收數據;錯誤幀是某節(jié)點發(fā)現幀錯誤時用來向其他節(jié)點通知的幀;過載幀是接收節(jié)點用來向發(fā)送節(jié)點告知自身接收能力的幀;用于將數據幀、遠程幀與前面幀隔離的幀。

數據幀根據仲裁段長度不同分為標準幀(2.0A)和擴展幀(2.0B)。

 

 

幀起始由一個顯性位(低電平)組成,發(fā)送節(jié)點發(fā)送幀起始,其他節(jié)點同步于幀起始;

幀結束由7個隱形位(高電平)組成。

仲裁段

CAN總線是如何解決多點競爭的問題?

由仲裁段給出答案。

CAN總線控制器在發(fā)送數據的同時監(jiān)控總線電平,如果電平不同,則停止發(fā)送并做其他處理。如果該位位于仲裁段,則退出總線競爭;如果位于其他段,則產生錯誤事件。

 

 

幀ID越小,優(yōu)先級越高。由于數據幀的RTR位為顯性電平,遠程幀為隱性電平,所以幀格式和幀ID相同的情況下,數據幀優(yōu)先于遠程幀;由于標準幀的IDE位為顯性電平,擴展幀的IDE位為隱形電平,對于前11位ID相同的標準幀和擴展幀,標準幀優(yōu)先級比擴展幀高。

控制段

 

 

數據段

為0-8字節(jié),短幀結構,實時性好,適合汽車和工控領域;

共6位,標準幀的控制段由擴展幀標志位IDE、保留位r0和數據長度代碼DLC組成;擴展幀控制段則由IDE、r1、r0和DLC組成。

 

 

ACK段

當接收節(jié)點接收到的幀起始到CRC段都沒錯誤時,它將在ACK段發(fā)送一個顯性電平,發(fā)送節(jié)點發(fā)送隱性電平,線與結果為顯性電平。

遠程幀

遠程幀分為6個段,也分為標準幀和擴展幀,且RTR位為1(隱性電平)

 

 

CAN是可靠性很高的總線,但是它也有五種錯誤。

CRC錯誤:發(fā)送與接收的CRC值不同發(fā)生該錯誤;

格式錯誤:幀格式不合法發(fā)生該錯誤;

應答錯誤:發(fā)送節(jié)點在ACK階段沒有收到應答信息發(fā)生該錯誤;

位發(fā)送錯誤:發(fā)送節(jié)點在發(fā)送信息時發(fā)現總線電平與發(fā)送電平不符發(fā)生該錯誤;

位填充錯誤:通信線纜上違反通信規(guī)則時發(fā)生該錯誤。

當發(fā)生這五種錯誤之一時,發(fā)送節(jié)點或接受節(jié)點將發(fā)送錯誤幀

為防止某些節(jié)點自身出錯而一直發(fā)送錯誤幀,干擾其他節(jié)點通信,CAN協議規(guī)定了節(jié)點的3種狀態(tài)及行為

 

 

過載幀

當某節(jié)點沒有做好接收的“準備”時,將發(fā)送過載幀,以通知發(fā)送節(jié)點。

 

 

幀間隔

用來隔離數據幀、遠程幀與他們前面的幀,錯誤幀和過載幀前面不加幀間隔。

 

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉