本帖最后由 MXWL 于 2025-7-11 09:35 編輯
視頻中僅對串口進行解碼演示,正好我們從客戶手中拿到了一塊USB轉CAN/CANFD模塊,如下圖所示, 本文借此對自定義解碼功能中的CANFD解碼功能進行講解。
圖片1.png (193.81 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
首先進行設備連接,使用USB轉CAN/CANFD模塊與一塊開發板進行通信,之后使用BNC公轉雙夾子測試線接入兩模塊間的通信線,紅色夾子接入CANH,黑色接入CANL,測試線另一端接入LOTO示波器的通道A,如下圖所示。
圖片2.png (282.04 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
在上位機ZQWL-CANFD-Tool中,連接設備,將仲裁閾和數據域設置為500kbps,選用標準幀格式,CANFD協議,設置ID為120,數據長度8,數據內容01 02 0304 05 06 07 08。持續發送這段數據,間隔為一毫秒,如下圖所示:
圖片3.png (241.52 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
在LOTO示波器上位機軟件中使用軟件觸功能發抓取數據波形,在獲取波形后點擊軟件頂部工具欄中的“示波器”,待彈出功能界面窗口后點選擇“協議解碼”,再在彈出的解碼選擇界面中點擊“自定義解碼”進入自定義解碼功能界面。
圖片4.png (365.8 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
在自定義解碼界面中,按照下圖所示順序依次進行解碼設置,首先勾選解碼開關,會在波形顯示界面會有2,3,4,5這4條綠色的虛線,拖動 2設置解碼開始的位置,3設置解碼截止的位置,4設置穿過該線的波形為待解碼波形,5用于設置解碼數據的位置,完成后選擇CANFD,軟件默認數據波特率和標準幀格式,選擇CANH邏輯,點擊“設置”則會根據CANFD的標準幀格式進行解碼格式的預設。
圖片5.png (414.09 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
設置完成后如下圖所示,在虛線5的下方顯示了解碼的結果,ID,DLC,以及數據與上文串口助手軟件所發送的一至。選則“數字化設置”可以進一步對解碼的數據格式進行自定義設置,每位data支持0-16bits設置,支持64個數據字節。
圖片6.png (347.78 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
ID:120,數據長度8,發送數據:01 23 45 67 89 ab cd ef,解碼結果如下:
圖片7.png (443.82 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
ID:120,數據長度8,發送數據:ff ff ff ff ff ff ff ff,解碼結果如下:
圖片8.png (369.2 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
我們改變發送的數據長度和ID,分別發送兩條數據。相應的在示波器上位機軟件中打開“數字化設置”,進行CANFD數據幀格式的自定義。數據格式和解碼結果如下:數據1:ID 120,數據長度12,發送數據:01 02 03 04 05 06 07 08 09 1011 12 。
圖片9.png (411.04 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
圖1 數據2:ID 155,數據長度20,發送數據:01 02 03 04 05 06 07 08 09 1011 12 13 14 15 16 17 18 19 20。
圖片10.png (425.62 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
圖2 控制位為0x8,表示發送的時CANFD報文,值得一提的是,CANFD的DLC是非線性的,我們參考下表,圖1 DLC=9,對應數據長度12,圖2 DLC=b,對應數據長度20,與所發送的數據長度一致。
圖片11.png (236.31 KB, 下載次數: 0)
下載附件
2025-7-11 09:31 上傳
|