一 文檔介紹
本文將一步步介紹如何使用DSLogic邏輯分析儀采集并分析 CAN/CAN-FD 信號,因為 CAN 信號的測量和 CAN-FD 的大致一樣,所以下文以 CAN-FD 舉例,在有區(qū)別之處,將會做特別說明。
此次演示的案例特征為:
仲裁域波特率 500Kbps
數(shù)據(jù)域波特率 1Mbps
發(fā)送 “01 23 45 67 89 AB CD EF ….(其余數(shù)據(jù)位補0)” 共 64 位數(shù)據(jù)到 ID 地址”0x100″。
二 需要測量哪幾個信號
CAN-FD 協(xié)議是半雙工的,在 MCU 端使用 TX/RX 進行收發(fā)信號,發(fā)送端并不是通過 TX/RX 直接接到別的節(jié)點的 MCU ,而是先將 TX/RX 接入到 CAN-FD 收發(fā)器,將 TTL 電平轉(zhuǎn)換為差分信號 CAN-FD_H和 CAN-FD_L,測量信號時需要注意接的是 TTL 邏輯端,還是 CAN-FD 總線端。
圖1 MCU與收發(fā)器結(jié)構(gòu)
所以,如果你要測量 TTL 信號,則將探頭接入到 TX 引腳,如果要測量總線端信號,則接入到 CAN-FD_L ,你可能要問,可以接入到 CAN-FD_H ?單獨觀察波形的話,是可以的,但因為我們是使用邏輯分析儀對信號進行解碼,而 CAN-FD_L 的電平變化和 TTL 端的電平變化是一致的,CAN-FD_H 和 TTL 端是反相的,所以為了方便對比觀察解碼結(jié)果,要接入 CAN-FD_L。
三 信號的實際模樣
邏輯分析儀分析的是數(shù)字信號,在采集分析之前,我們推薦先用示波器觀察下信號實際是什么樣子的,對真實波形有一個基本的認知。
下面我們使用璞石示波器來完成捕獲模擬波形的演示。
3.1 MCU 側(cè) TTL 信號
測 TTL 時探頭接 TTL 信號,探頭使用 X1 擋位,探頭接地夾接邏輯端的參考地,一般是 MCU 的 GND 引腳,此處是使用接地彈簧接 GND。
圖2 探頭測試 TX 信號
示波器 0 通道探頭放在靠近 MCU 的 TX 引腳處,夾子接邏輯側(cè)參考地,啟動 CAN-FD 發(fā)送數(shù)據(jù),按下 AUTO,捕獲波形,如下圖所示。
圖3 示波器顯示 TX 信號
可以看到這是一個符合 TTL 標準,幅度為 3.4V 的波形。
3.3 收發(fā)器側(cè)差分信號
因為在電路設(shè)計中一般都會對總線端的電源做隔離,所以在測 CAN-FD 時,兩個探頭分別接 CAN-FD_H 和 CAN-FD_L 信號,但是探頭接地夾需要接總線端的參考地,一般是 CAN-FD 收發(fā)器芯片的 GND 引腳,不要接到 MCU 的 GND 上去了。
圖4 探頭測試差分信號
圖 4 左邊三個座子依次為 CAN-FD_H,GND,CAN-FD_L。
示波器 0 通道探頭放在 CAN-FD_H,接地彈簧接總線側(cè)參考地 。示波器 1 通道探頭放在 CAN-FD_L,接地彈簧接總線側(cè)參考地,啟動 CAN-FD 發(fā)送數(shù)據(jù),按下 AUTO,捕獲波形,將波形光標重合在一起,如下圖所示。
圖5 差分信號
可以看到 CAN-FD 中空閑時差分電平壓差為 0,當(dāng) CAN-FD_L 出現(xiàn)低電平時開始數(shù)據(jù)的傳輸??梢钥吹紺AN-FD_L的波形和TTL端的信號是同向的,而CAN-FD_H的波形和TTL端的信號是反向的。
同時,也可以觀察到CAN-FD信號高低電平的特殊之處,以CAN-FD_L為例,它的低電平并不是0V。通常標準CAN/CAN-FD總線信號的L端低電平為1.5V,高電平為2.5V。
也有一些CAN系統(tǒng),總線信號的電平和標準不太一致,這也是為什么我們推薦先用示波器觀察實際波形的原因。因為在使用邏輯分析儀分析波形時,需要設(shè)置正確的“閾值”電壓,邏輯分析儀才能采集到正確的信號。
四 信號的采樣與解碼
在示波器上可以觀察到信號的波形質(zhì)量,但是示波器不擅長長時間抓取波形,同時進行解碼分析。所以當(dāng)想要分析協(xié)議通訊的內(nèi)容時,使用DSLogic邏輯分析儀是最合適的工具。
4.1 信號的連接
在DSLogic Plus中,可以選擇任意通道對波形進行采集。我們使用 1 通道來采集 CAN-FD_L 信號。
連接排線至邏輯分析儀的采樣端口,圖 6 顯示了排線和通道的對應(yīng)關(guān)系。
圖6 排線與邏輯分析儀的連接
連接 1 通道至 CAN-FD_L,黑色信號線為接地信號線,連接 CAN-FD 收發(fā)器的 GND。連接效果如圖。
圖7 連接信號
4.2 采樣設(shè)置
打開 DSView,在左上角點擊“選項”,按照圖4 參數(shù)設(shè)置,其中關(guān)于閾值電壓,在圖5 中,我們可以看到通訊波形中 CAN-FD_L 的電壓范圍大致在 1.5V – 2.5V 之間,所以閾值可以設(shè)置為 2V 左右。
采樣率一般推薦設(shè)置為波形最大速率的 10 倍。例如此處選擇 10MHz采樣率進行采集分析。
通道選項的所有選項都符合我們的要求,我們選擇就選第一個。其他選項保持默認,點擊確定。
圖8 選項設(shè)置
設(shè)備選項設(shè)置完成后,采樣時間這里設(shè)置為 5ms,在”模式“中,我們選擇“單次”。關(guān)鍵的閾值、采樣時間和采樣率設(shè)置完成后,我們接下來設(shè)置觸發(fā)方式。
從圖5 可以看到 CAN-FD_L 出現(xiàn)下降沿開始通訊,所以我們設(shè)置觸發(fā)方式為下降沿觸發(fā),點擊1 通道左側(cè)的下降沿標識,顯示為藍色則為下降沿觸發(fā)。
圖9 觸發(fā)設(shè)置
完成以上接線和設(shè)置后,其他設(shè)置保持默認,點擊 DSView 菜單欄的“開始”,此時邏輯分析儀正在等待觸發(fā)波形的出現(xiàn),然后啟動 CAN-FD 傳輸,觸發(fā)后等待波形采集完成。
以上是對 CAN-FD 的采樣設(shè)置,對于 CAN 波形的測試,可以和 CAN-FD 的一致。
4.3 解碼設(shè)置
波形采集完成后會在軟件界面顯示,此時可以對波形進行解碼操作,具體操作是點擊菜單欄的“解碼”按鈕,在協(xié)議框中輸入“CAN”,點選在下方出現(xiàn)的”CAN-FD“,在彈出的解碼設(shè)置中進行解碼設(shè)置。
圖10 解碼設(shè)置
右側(cè)帶有眼睛圖標的選項表示是否要在解碼中查看這些內(nèi)容,默認是要查看,如果不想看到相關(guān)內(nèi)容,將其勾選掉即可。
在”CAN“選項中選擇連接 CAN-FD_L 信號的通道,我們的通道是 1 通道,所以選擇 1。
“Nominal bitrate” 表示仲裁段波特率,我們的信號是 500Kbps,所以輸入 500000。
“Fast bitrate” 表示數(shù)據(jù)段波特率,我們的信號是 1Mbps,所以輸入 1000000。
“Sample point” 表示采樣點位置,在 MCU 對 CAN/CAN-FD 協(xié)議進行配置時,不同的廠家采樣點設(shè)置不一樣,一般采樣點設(shè)置在 70% ,請根據(jù)實際情況設(shè)置。
如果在波形中插入了光標,可以使用光標來限制解碼的范圍,默認是對所有波形進行解碼。
圖11 解碼器選項
解碼成功后對波形展開,配合協(xié)議列表顯示,可以知道我們對地址為”0x100″的設(shè)備發(fā)送了“01 23 45 67 89 AB CD EF”等數(shù)據(jù)。
圖12 解碼結(jié)果
對于 CAN 波形的測試, 只需要設(shè)置一個”bitrate” 即可,其他操作和設(shè)置與 CAN-FD 的一致。
-
CAN
+關(guān)注
關(guān)注
57文章
2747瀏覽量
463674 -
測量
+關(guān)注
關(guān)注
10文章
4858瀏覽量
111286 -
邏輯分析儀
+關(guān)注
關(guān)注
3文章
214瀏覽量
23168
發(fā)布評論請先 登錄
相關(guān)推薦
評論