作為目前車載網絡領域最成熟、應用最廣泛的通信總線之一,CAN總線具有傳輸可靠性高、速度快、易用等特點。由于其涉及到用戶的人身安全,所以在汽車研發、生產、檢測、維修等過程中均需做嚴格的測試。
由于CAN信號是差分信號,在測試過程中一般需要使用差分探頭來進行測試,但在研發階段的板級測試中,確認安全的前提下可以使用普通低壓無源探頭進行測試。今天給大家介紹鼎陽科技SDS5000X標配的CAN總線觸發與解碼,了解示波器是如何測試CAN信號。本文將以SDS5054X+STB3演示板+普通無源探頭展示CAN的測試,供大家參考。
1、CAN 協議
在測試前需要充分了解CAN 協議。
CAN協議有4種幀類型,分別為數據幀、遠程幀、錯誤幀、過載幀。其中數據幀和遠程幀又分為標準格式和擴展格式兩種。標準格式的標識符為11位,擴展幀為29位。
1.1數據幀
由7個不同的場組成。分別為幀起始、仲裁場、控制場、數據場、CRC場、應答場、幀結尾。
a、幀起始
(SOF)標志數據幀和遠程幀的開始,僅由一個“顯性”(邏輯電平“0”為顯性電平,“1”為隱性電平)位組成,只有在總線空閑時才允許發送信號。
b、仲裁場
CAN總線上發送的每一條報文都具有唯一的一個11位或29位的ID。CAN總線狀態取決于二進制數“0”而不是“1”,所以ID號越小,則該報文擁有越高的優先權。因此一個為全“0”標志符的報文具有總線傳輸上的最高優先權。
標準格式幀和擴展格式幀的仲裁場格式不同:
標準格式里,仲裁場由11位識別符和RTR位組成。識別符位為ID28…ID18。識別符后為RTR位。RTR位在數據幀必須為“顯性”,在遠程幀必須為“隱性”。
擴展格式里,仲裁場包括29位識別符ID28…ID0(基本ID 11位,擴展ID 18位)、SRR位、IDE位、RTR位。基本ID首先發送,其次是SRR、IDE位。
c、控制場
控制場由6個位組成。標準格式里的幀包括數據長度代碼,IDE位及保留位R0。擴展格式里的幀包括數據長度和保留位R1和R0。保留位必須顯性發送。
d、數據場
數據場由數據幀中的發送數據組成。它可以為0-8個字節,每字節包含了8個位,MSB先發送。
e、CRC場
CRC場包括CRC序列,其后是CRC界定符。CRC序列為循環冗余檢驗碼。CRC序列之后是CRC界定符,它包含一個單獨的“隱性”位。
f、應答場
應答場長度為2位。包含應答間隙和應答界定符。在應答聲里,發送兩個“隱性”位,當接收器正確地接收到有效報文,接收器就會在應答間隔期間向發送器發送“顯性”位以示應答。
g、幀結尾
每一個數據幀和遠程幀均由一標志序列界定。由7個“隱性”位組成。
1.2遠程幀
遠程幀目的在于請求發送具有同一標識符的數據幀;遠程幀由6個不同位的場組成。分別為幀起始、仲裁場、控制場、CRC場、應答場、幀結尾。與數據幀相反,遠程幀的RTR位是“隱性”的。
1.3錯誤幀
錯誤幀由錯誤標志和錯誤界定符兩部分組成: