調(diào)試無線應(yīng)用程序
無線應(yīng)用程序調(diào)試部分將介紹分析儀捕獲緩沖溢出和工作量巨大的基于串行的協(xié)議拆分。通常使工程師淹沒于令人厭煩并且耗費時間的任務(wù)之中,他們需要手動拼接并解碼復(fù)雜的背靠背 (back-to-back) 捕獲數(shù)據(jù)以分析單個用戶事件的內(nèi)部工作。本文詳細(xì)說明了如何利用基于 PC 的工具來輕松地調(diào)試和文檔化無線應(yīng)用程序。
無線系統(tǒng)級交互式調(diào)試捕獲經(jīng)常會超過傳統(tǒng)測試設(shè)備的固定長度捕獲緩沖容量,甚至對于表面看來很簡單的應(yīng)用程序也是如此,例如無線桌面鼠標(biāo)設(shè)計。調(diào)試即使最簡單的行為,例如成對的兩個無線設(shè)備,假如按下第一個設(shè)備上的按鈕后緊接著再按下第二個設(shè)備上的按鈕,傳統(tǒng)的分析儀在這種情況下會變得毫無用處。同樣,利用任何基于交互式的無線調(diào)試界面也使您感到異常煩躁,這將會使僅僅在開始和結(jié)束部分調(diào)試,而中間的數(shù)據(jù)會被遺留。對于那些尺寸不適當(dāng)?shù)姆治鰞x,其捕獲緩沖會迫使無線工程師忙于應(yīng)付那些令人厭煩并且耗費時間的任務(wù),他們需要手動拼接和解碼復(fù)雜的背靠背捕獲數(shù)據(jù)?;?PC 的分析儀能夠連續(xù)將捕獲的緩沖數(shù)據(jù)源源不斷地流入您的計算機內(nèi)存中,這不僅簡化了那些平淡無味的任務(wù)——即不停地為冗長的調(diào)試對話捕獲數(shù)據(jù),而且通過簡化那些不必要的拼接操作,還極大地減少了您耗費在后處理和分析數(shù)據(jù)上的時間。當(dāng)大家初次看到冗長的捕獲緩沖流時,他們常常會很驚訝地學(xué)到很多新東西,比如傳統(tǒng)的測試設(shè)備不能支持的系統(tǒng)級交互式的事件。
將很多基于串行的協(xié)議拆分為位和字節(jié)的數(shù)據(jù),此舉不僅容易出錯而且還會耗費過多的時間。傳統(tǒng)的無線應(yīng)用程序調(diào)試策略,例如貫穿你的應(yīng)用程序編碼 printf 調(diào)試語句通常能夠減輕很多任務(wù)壓力,但是在有損害或可能遇到的不必要的副作用的情況下就不適用,例如代碼膨脹、代碼執(zhí)行矛盾、代碼迷惑以及要求其他的硬件資源?;?PC 的分析儀配備有靈活的總線級的解碼工具,通過點擊鼠標(biāo)按鈕就可毫不費力地拆分和精確地顯示大塊的捕獲緩沖數(shù)據(jù),從而極大地減少調(diào)試時間??焖俣咝У目偩€級解碼能夠使工程 是愉快地設(shè)計(engineering juices flowing),并使其他那些令人厭煩的位級解碼任務(wù)變成快速和容易受結(jié)果驅(qū)動的調(diào)試界面。一旦您使用了自動化的總線級解碼來快速解決復(fù)雜的系統(tǒng)級交互式的無線應(yīng)用程序 Bug,您就會感到一切都已變的如此輕而易舉。您甚至可以備忘錄的形式記錄這些結(jié)果。這么好的東西,怎么可能不用呢?
對于后處理和分析捕獲的數(shù)據(jù),傳統(tǒng)的測試設(shè)備為工程師提供的那些 “另存為”工具還不能滿足要求。通常情況下,這些分析儀會以專用格式來保存所捕獲的緩沖數(shù)據(jù),一般這會導(dǎo)致極其重要的調(diào)試信息丟失。如此一來,就迫使工程師把無數(shù)的時間耗費在將所保存的捕獲緩沖數(shù)據(jù)轉(zhuǎn)化為ASCII格式上,進(jìn)而將其轉(zhuǎn)移至過時的軟盤并導(dǎo)入到基于 PC 的軟件中以便于最后進(jìn)行后處理和分析。基于 PC 的分析儀可將他們的捕獲緩沖數(shù)據(jù)直接保存到計算機的硬盤中,并將重要的信息釋放到電子表格(例如Microsoft Excel)中進(jìn)行后處理和數(shù)據(jù)處理,同時還允許任何人使用基于 PC 的虛擬儀器軟件以其原始的格式來重放所捕獲的數(shù)據(jù)。此外,無線應(yīng)用行業(yè)專家經(jīng)常會一分為二,成為不同工種的專家。在調(diào)試交互式無線應(yīng)用程序時,單獨減少所捕獲數(shù)據(jù)的后處理時間顯得十分重要,這可通過增加多站點工程技術(shù)人員花費在查看和分析所捕獲數(shù)據(jù)上的時間總數(shù)來實現(xiàn)。如果一種軟件能夠允許任何人重放已知的、良好的、系統(tǒng)級交互式的捕獲緩沖數(shù)據(jù),并將其行為與調(diào)試系統(tǒng)的捕獲緩沖數(shù)據(jù)加以比較,那么這種無線應(yīng)用程序調(diào)試工具的價值是不可估量的。也可將重放作為簡單的培訓(xùn)工具使用,以便于更好地理解和文檔化各種無線應(yīng)用程序的交互性和依賴性,通常這兩項僅出現(xiàn)在此領(lǐng)域。
即使對最聰明并且精力最旺盛的工程師來說,調(diào)試此領(lǐng)域的無線應(yīng)用程序也是一項很具有挑戰(zhàn)性的工作。拖著笨重的測試設(shè)備,繞著全球的機場和往返列車滿世界亂轉(zhuǎn),這種場景深深地將生活中最痛苦的一組回憶烙記到人的腦海中。當(dāng)工程師按部就班地改組測試工作臺以適應(yīng)最近的“本周調(diào)試成果”時,經(jīng)常就會超過花費在捕獲數(shù)據(jù)上的時間?;?PC 的分析儀旨在利用計算機上眾多的可用資源,這種分析儀常??尚〉阶銐蛟陲w機的椅背小桌上使用。。 我想,這意味著天空或許真的不是極限。
作者:Troy Gentry(電子郵件:tge@cypress.com),賽普拉斯半導(dǎo)體公司人機接口器件集團(tuán)首席應(yīng)用工程師。
評論