CAN的學習日記(一)

2021-10-10 16:17:03 字數 1314 閱讀 5860

在提及can之前,計算機的網路體系架構的簡單了解是必要的。便於理解can的知識結構。

iso提出的osi中將網路系統結構分為了7層。

從上至下依次是(1)應用層、(2)表示層、(3)會話層、(4)傳輸層、(5)網路層、(6)資料鏈路層和(7)物理層。這個層次結構並不是嚴格固定的,可以根據實際情況和需求有所取捨。

物理層的作用就是在物理傳輸**上傳輸各種資料的位元流。

需要考慮機械、電氣、功能、規程等等。此外還需要考慮:

(1)傳輸速率,即波特率和位元率;

(2)通道容量,及通道支援的最大傳輸速率;室友通道的貸款和訊雜比決定的;

(3)傳輸**,也就是優先還是無線,有線的話是雙絞線還是光纖等等;

(4)調製/解調,講義中訊號形式轉化為另一種訊號形式;

(5)交換技術,電路、報文、分組;

(6)網路拓撲,包括星型拓撲、匯流排型拓撲、網型拓撲、樹型拓撲、環型拓撲等等;

(7)多路復用技術,時分、頻分、碼分等等。

簡單來說就是在物理線路的基礎上設定一些規程,就是資料鏈路層(data link layer).

包括的內容有組幀與幀同步和差錯控制。

這裡敘述雖然很少但是是非常重要的一層。

在can匯流排或者說在匯流排網中,一般又把資料鏈路層分為mac(介質訪問控制子層)和llc(邏輯鏈路控制子層),之後會詳細介紹。

網路層向上面的傳輸層提供面向連線的網路服務和無連線的網路服務。

物理層、資料鏈路層、網路層是面向網路通訊的層次。會話層、表示層、應用層是面向資訊處理的層次;而傳輸層就是介於兩者之間,為高層從源端機向目的機提供準確可靠、經濟的資料傳輸服務。

(1)傳輸層是在網路層之上額外分出來確保網路服務質量的一層;

(2)是類似於資料鏈路層,但是在節點通話、連線、儲存能力以及對於資料緩衝和流量控制的處理方法都有不同之處。

在傳輸層的基礎上增加一些協調對話的功能、管理不同主機個程序的對話。

為上層使用者提供資料或資訊語法的表示交換,負責機器內部資料和抽象資料表示之間的變換,一邊資訊的相互理解。

直接向使用者提**用服務,如e-mail,www,ftp等。

到這裡簡單的架構知識已經掌握了,還記得之前說的可以有所取捨嗎?沒錯,can實際上只用到了應用層、資料鏈路層(包括mac和llc)、物理層。

首先要明確的是接下來的敘述都將一句can2.0b的規範進行講解,對於can的發展歷程以及其他匯流排的知識以及匯流排abcd分類的知識感興趣的可以自行搜尋,這些並不會對之後的can匯流排知識的學習產生影響。

本文全部總結自《汽車微控制器及車載匯流排技術》(第三版)

南金瑞等編著 北京理工大學出版社

can匯流排學習(一) 初識can匯流排

can匯流排最初由德國bosch公司為汽車檢測 控制系統而設計的。1993年can成為國際標準iso11898 高速應用 和iso1119 低速應用 can的規範從can1.2規範 標準格式 發展為相容can1.2規範的can2.0規範 can2.0a為標準格式,can2.0b為擴充套件格式 目前應...

CAN協議學習(一)

1 在匯流排空閒時,所有單元都可以傳送訊息,兩個以上單元同時傳送訊息時,對各訊息的identifier進行逐位仲裁比較,仲裁獲勝的單元 具有較高優先順序 可繼續傳送訊息,仲裁失敗的單元停止傳送。2 訊息中沒有位址,訊息廣播到匯流排上,任何匯流排上的單元都可以接收訊息。在匯流排上增加單元,不會影響到其...

CAN通訊學習(一)

can通訊 一 can通訊是什麼?can controller area network 是由以研發和生產汽車電子產品著稱的德國bosch公司開發的,並最終成為國際標準 iso 11898 是國際上應用最廣泛的現場匯流排之一。在北美和西歐,can匯流排協議已經成為汽車計算機控制系統和嵌入式工業控制區...