最近和同事研究CAN總線,不多說先看用OSC802示波器測量數據過程。 ![]() 看了不少資料,才對CAN有了了解,首先給大家總結一下: 1、其工作原理: 當CAN總線上的一個節點發送數據時,它以報文的形式廣播給網絡中的所有節點,每個節點都會對其接收。每組報文開始的11位字符為標識符,定義報文的優先級。在同一系統中標識符具有唯一性。因此當幾個節點競爭總線讀取時,改配置就顯得十分重要。 2、信號形態: 首先CAN總線只有兩根導線:黃色和綠色分別是CAN_High線和CAN_Low線。 ![]() 沒有收發信號時,兩條導線上的電平相同(大約2.5V)。這種電平狀態為隱形狀態,也稱之為隱性電平。有信號時,CAN_High導線的電平升高至少1V;而對應的CAN_Low導線電平降低同樣值,這種電平狀態為顯形狀態,也稱之為顯性電平。 ![]() CAN總線就是利用電位差的變化來傳輸數據的。通常邏輯1表示隱性,而0表示顯性。 3、CAN總線協議 CAN總線上傳輸數據,為了安全,我們遵循CAN總線協議,這樣就不容易出錯。 CAN標準定義了四種消息類型,分別是: • 數據幀:數據幀將數據從發送器傳輸到接收器。 • 遠程幀:總線節點發出遠程幀,請求發送具有同一標識符的數據幀。 • 錯誤幀:任何節點檢測到總線錯誤就發出錯誤幀。 • 過載幀:過載幀用在相鄰數據幀或遠程幀之間的提供附加的延時。 CAN總線數據幀結構這里就不詳述了。根據CAN的協議,我們采用Loto虛擬示波器OSC802的觸發功能捕捉到CAN總線上的信號變化。 ![]() ![]() ![]() 詳情 QQ:173393190 QQ群:827046152 |