串行總線技術(shù)全面解析
圖表3 時(shí)鐘同步串行總線觸發(fā)示例
自定義串行總線的分析:
解碼設(shè)置
進(jìn)行自定義總線的觸發(fā)之后,就可以進(jìn)行解碼分析了。同樣要進(jìn)行相應(yīng)的設(shè)置。與觸發(fā)的設(shè)置類似,要指定數(shù)據(jù)源、時(shí)鐘源、片選源和鎖存源,并進(jìn)行相應(yīng)的設(shè)定;對(duì)于沒有時(shí)鐘同步的總線,還要指定比特率,可設(shè)置范圍也是1kbps~50Mbps。之所以要設(shè)置解碼起始點(diǎn),是因?yàn)槭静ㄆ鳑]有內(nèi)置自定義總線的協(xié)議,無(wú)法判斷總線的幀結(jié)構(gòu),所以需要手動(dòng)指定解碼的起始點(diǎn)。
圖表4 自定義串行總線分析設(shè)定
解碼顯示
打開解碼顯示功能,就可以在數(shù)據(jù)波形的下方看到解碼的結(jié)果了。由于沒有內(nèi)置協(xié)議,所以無(wú)法以幀結(jié)構(gòu)方式進(jìn)行顯示。
圖表5 自定義串行總線解碼顯示格式設(shè)定
數(shù)據(jù)搜索
如果想在大量的數(shù)據(jù)中找到自己想要的數(shù)據(jù),可以使用搜索功能,指定搜索的數(shù)據(jù)位數(shù)以及數(shù)據(jù)碼型,執(zhí)行搜索后很快就會(huì)將搜索到的結(jié)果標(biāo)記出來(lái)并顯示在縮放窗口中。搜索設(shè)定與觸發(fā)條件設(shè)定類似。
下面以列車上常用的MVB串行總線為例,介紹自定義串行總線功能的使用方法。
多功能車廂總線MVB(Multifunction Vehicle Bus)是列車通信網(wǎng)絡(luò)TCN(Train Communication Network)為實(shí)現(xiàn)位于同一車輛或固定重聯(lián)的不同車輛中的標(biāo)準(zhǔn)設(shè)備之間的數(shù)據(jù)通信而定義的總線標(biāo)準(zhǔn)。
MVB總線上的串行數(shù)據(jù)采用異步差分傳輸?shù)穆鼜厮固卮a,曼徹斯特編碼中的每個(gè)數(shù)據(jù)位應(yīng)用以下規(guī)范編碼:
a)一個(gè)“1”的編碼在位元的前半部分為“高”,后半部分為“低”;
b)一個(gè)“0”的編碼在位元的前半部分為“低”,后半部分為“高”;
如果曼徹斯特碼中出現(xiàn)整個(gè)位元的高電平(NH)或整個(gè)位元的低電平(NL),則被認(rèn)為非數(shù)據(jù)符,用于特殊場(chǎng)合,如:幀頭,幀尾標(biāo)識(shí)。
MVB總線屬于異步傳輸總線,所以在進(jìn)行觸發(fā)和分析時(shí)不需要設(shè)置時(shí)鐘源、片選和鎖存等信號(hào),只需要設(shè)定正確的比特率與合適的開始點(diǎn)。MVB總線的比特率一般為1.5Mbps,正確設(shè)置就可以了。
需要注意的是開始點(diǎn)的指定。因?yàn)镸VB總線采用曼徹斯特編碼,不同于常用的高低電平來(lái)確定邏輯“0”和“1”的方式,所以只有開始點(diǎn)的位置很合適才能正確解碼。
設(shè)置好之后,解碼結(jié)果會(huì)顯示在波形下方,通過(guò)人工對(duì)比可以簡(jiǎn)單判斷解碼是否正確。通過(guò)顯示設(shè)置可以將解碼結(jié)果顯示為二進(jìn)制、十六進(jìn)制或者ASCII形式,便于讀取。
圖表6 MVB串行總線觸發(fā)分析
如上面示例那樣,如果所調(diào)試的總線不是CAN,LIN,I2C,SPI以及UART這些通用串行總線,DLM2000的自定義串行總線分析功能可在一定程度上為用戶的分析工作提供便利,而且不用付出高昂的費(fèi)用。這也是當(dāng)初開發(fā)這個(gè)功能的初衷。
評(píng)論