使用DPO3000調(diào)試串行總線
廣大用戶日益需要處理各種通用測量任務(wù)及滿足專用需求的解決方案,泰克新推出的DPO3000系列示波器滿足了這些需求,其中一個(gè)此類應(yīng)用是調(diào)試串行總線。研究結(jié)果表明,在所有電子器件設(shè)計(jì)工程師中,大約有60%的工程師在日常設(shè)計(jì)和調(diào)試事務(wù)中要處理串行總線。這些設(shè)計(jì)人員希望獲得工具,幫助他們選擇性地從串行流中捕獲數(shù)據(jù),然后分析分組內(nèi)容和其它相關(guān)信號。
在串行總線結(jié)構(gòu)中,一條信號路徑可以傳送地址信號、控制信號和時(shí)鐘信號。DPO3000系列示波器提供了一個(gè)理想的平臺,可以從當(dāng)前某些最常用的低速串行總線中采集和分析信號,包括I2C,SPI,RS-232,CAN和LIN。DPO3000系列的基本帶寬、采樣率、記錄長度和通道數(shù)量完全可以勝任這一工作。而最重要的是,某些創(chuàng)新功能使得串行調(diào)試工作變得更加簡便。
串行總線調(diào)試是由多個(gè)步驟組成的流程:觸發(fā)采集指定的串行事件;解碼該事件,理解其內(nèi)容;搜索發(fā)生的其它事件或感興趣的事件數(shù)據(jù)。
DPO3000系列通過下述功能,開創(chuàng)了串行總線調(diào)試的新天地:
觸發(fā)采集串行分組內(nèi)容,找到毛刺和其它波形異常事件。
自動解碼和顯示分組,以人們可以閱讀的、自我闡明的格式提供數(shù)據(jù),以即時(shí)可讀的形式表示內(nèi)容。
內(nèi)置數(shù)據(jù)搜索功能,找到和標(biāo)記各個(gè)串行事件,在5M標(biāo)配波形內(nèi)存中加快點(diǎn)到點(diǎn)導(dǎo)航速度。
觸發(fā)―第一步,輕松實(shí)現(xiàn)
在調(diào)試過程中,通常必需確認(rèn)已經(jīng)通過總線生成或發(fā)送了某個(gè)串行分組。分組包含嵌入式數(shù)據(jù)值和其它消息。常用的示波器功能如狀態(tài)觸發(fā)或碼型觸發(fā)不適用這一目的,它們是為多條通道上的并行數(shù)據(jù)設(shè)計(jì)的。這就需要一種可以對串行流內(nèi)容做出響應(yīng)的觸發(fā)功能。
在配備選配的DPO3EMBDI2C和SPI應(yīng)用模塊、DPO3COMPRS-232/422/485/UART模塊和/或DPO3AUTOCAN和LIN模塊時(shí),DPO3000系列將對用戶指定的觸發(fā)條件做出響應(yīng),包括串行數(shù)據(jù)內(nèi)容、地址開始和結(jié)束消息等等。表1提供了其中一種串行總線:I2C可以使用的觸發(fā)選擇的部分實(shí)例。SPI、RS-232、CAN和LIN總線觸發(fā)集也同樣非常全面。
觸發(fā)有兩種直接效應(yīng)。第一,儀器采集事件及周圍的事件,容量高達(dá)5M樣點(diǎn)。第二,觸發(fā)證實(shí)發(fā)生了指定的事件。
DPO3000系列的獨(dú)特之處是為加速串行分析設(shè)計(jì)的一對前面板“Bus”按鈕(B1和B2)。事實(shí)上,每個(gè)按鈕為每種特定類型的串行總線選擇預(yù)置值。通過分別定義哪些通道接收時(shí)鐘信號和數(shù)據(jù)信號,以及決定兩種二進(jìn)制狀態(tài)(1和0)的門限,工程師創(chuàng)建預(yù)置值。通過簡單地調(diào)用相應(yīng)的Bus按鈕,在以后仍可以重新使用這一設(shè)置(除非被重寫)。工程師不再需要重復(fù)處理多個(gè)內(nèi)嵌菜單或?yàn)榇锌偩€設(shè)置門限。在設(shè)置采集串行數(shù)據(jù)時(shí),Bus按鈕節(jié)約了時(shí)間,特別是在調(diào)試一條以上的總線配置時(shí)。
Busforms的優(yōu)點(diǎn)
串行分組波形在示波器顯示屏上作為一串1和0值顯示。通過跟蹤時(shí)鐘邊沿及相關(guān)二進(jìn)制數(shù)據(jù)值來解碼這些信息非常麻煩,而且容易出錯(cuò),但此前,許多工程師一直不得不通過這種方式理解其串行數(shù)據(jù)采集。
DPO3000系列自動解碼I2C、SPI、RS-232/422/485/UART、CAN和LIN總線的二進(jìn)制分組。顯示畫面不僅顯示波形,還顯示獨(dú)特的“busform”視圖。Busform視圖從業(yè)內(nèi)領(lǐng)先的泰克邏輯分析儀平臺演進(jìn)而來,是由符號包絡(luò)構(gòu)成的一條軌跡,這些符號包絡(luò)與波形視圖上的分組成分對準(zhǔn)。但是busform并不是單獨(dú)的1和0二進(jìn)制脈沖,而是一般包含一個(gè)表示解碼的分組成分的十六進(jìn)制、十進(jìn)制或ASCII值(如果愿意,可以選擇二進(jìn)制格式)?,F(xiàn)在,設(shè)計(jì)人員可以一目了然地查看總線上發(fā)生的情況,而沒有冗長、麻煩的手動解碼流程。同樣重要的是,還有其它事件和取值的符號,包括:開始事件,結(jié)束事件,標(biāo)識符事件,地址事件(包括讀或?qū)憼顟B(tài)),數(shù)據(jù)及許多其它事件(視標(biāo)準(zhǔn)而定)。事實(shí)上,DPO3000系列示波器完成了此前一直“用手”完成的工作,而且只需幾微秒就可以完成。
I2C串行總線上的總線形式解碼
另外它還提供了另一個(gè)節(jié)約時(shí)間的解碼視圖:事件表。它以表格格式表示解碼的內(nèi)容,每個(gè)項(xiàng)目都帶有一個(gè)時(shí)戳。它包括整個(gè)采集。因此,可以簡便地查看總線上每個(gè)單個(gè)事件,同時(shí)在消息之間簡便地進(jìn)行定時(shí)測量。DPO3000系列示波器可以對支持的任何串行總線生成事件表。
事件表,顯示CAN串行總線分組
搜索答案
一旦采集完成,通常必需查看整個(gè)記錄,以全面調(diào)試問題,其可能要高達(dá)5M樣點(diǎn)。即使是由示波器解碼每個(gè)分組,手動查看采集中每個(gè)分組可能會需要很長的時(shí)間。較好的解決方案是有一個(gè)工具,自動搜索現(xiàn)有的采集數(shù)據(jù),找到滿足用戶指定標(biāo)準(zhǔn)的事件。
DPO3000系列的WaveInspector提供了這種功能。除搜索邊沿、脈寬、欠幅脈沖、邏輯條件、建立時(shí)間和保持時(shí)間違規(guī)和上升時(shí)間/下降時(shí)間外,WaveInspector還可以搜索串行總線分組內(nèi)容。例如,WaveInspector可以隔離帶有某對地址和數(shù)據(jù)值的每條CAN消息,在顯示屏上用小的指示符號標(biāo)明每次發(fā)生情況。在標(biāo)記之間進(jìn)行導(dǎo)航,只需按前面板上的Previous和Next按鈕。
對尋找解決方案、解決其每天遇到的串行調(diào)試問題的設(shè)計(jì)工程師,DPO3000系列提供了強(qiáng)大的串行觸發(fā)、解碼和搜索功能。
表1:串行觸發(fā)條件實(shí)例
內(nèi)容 | I2C觸發(fā)特點(diǎn) |
開始 | 在SCL為高、SDA變低時(shí)(表示包頭)觸發(fā)采集 |
重復(fù)開始 | 在發(fā)生開始條件、而沒有以前的結(jié)束條件時(shí)觸發(fā)采集 (通常是一個(gè)主設(shè)備發(fā)送多條消息,而沒有釋放總線) |
結(jié)束 | 在SCL為高、SDA變高時(shí)(表示包尾)觸發(fā)采集 |
未確認(rèn) | 在串行分組內(nèi)容上觸發(fā)采集 |
地址 | 在用戶指定地址或任何預(yù)編程的專用地址上觸發(fā)采集(通用呼叫, 開始字節(jié), 等)。地址采用7位格式或10位格式,用二進(jìn)制或十六進(jìn)制表示 |
數(shù)據(jù) | 在最多5字節(jié)的用戶指定數(shù)據(jù)值上觸發(fā)采集,其可以是二進(jìn)制或十六進(jìn)制 |
地址和數(shù)據(jù) | 在指定地址和數(shù)據(jù)值組合及讀或?qū)懮?/SPAN>觸發(fā)采集,以捕獲感興趣的事件 |
評論