- LabVIEW虛擬儀器從入門到測控應用130例
- 李江全等編著
- 2681字
- 2019-01-01 07:19:30
0.6 VI調試方法
在編寫了LabVIEW的程序代碼后,一般需要對程序進行調試。調試的目的是保證程序沒有語法錯誤,并且能夠按照用戶的目的正確運行,得到正確的結果。
LabVIEW提供了許多調試工具,在其“調試工具選項”對話框中可以對這些調試工具進行設置。選擇“工具”菜單中的“選項”命令,在“選項”對話框的下拉列表中選擇“調試”,即可打開調試工具“選項”對話框,如圖0-29所示。

圖0-29 調試工具“選項”對話框
在“選項”對話框中有四個選項,含義如下。
(1)高亮顯示執行過程時顯示數據流:當程序高亮執行時,在代碼窗口中沿著數據流的方向,用動畫的方式顯示數據流的流動。用這種方式調試可以很清楚地看到程序的流程,但是會降低程序的性能和執行速度。
(2)高亮顯示執行過程時自動探測值:當程序高亮執行時,自動加入探針,探測數值型數據,并在代碼窗口中顯示其數值。
(3)默認在錯誤列表對話框中顯示警告:在錯誤列表中同時顯示警告信息。很多時候警告信息提示了程序中潛在的錯誤。
(4)啟動時提示調查內部錯誤:在LabVIEW程序啟動時,提示程序出現的內部錯誤。
LabVIEW 8.2提供了強大的容錯機制和調試手段,如設置斷點調試和設置探針,這些手段可以輔助用戶進行程序的調試,發現并改正錯誤。這一節將主要介紹LabVIEW 8.2提供的用于調試程序的手段及調試技巧。
1.找出語法錯誤
LabVIEW程序必須在沒有基本語法錯誤的情況下才能運行,LabVIEW能夠自動識別程序中存在的基本語法錯誤。如果一個VI程序存在語法錯誤,則在面板工具條上的運行按鈕將會變成一個折斷的箭頭,表示程序存在錯誤不能被執行。單擊運行按鈕
,會彈出錯誤列表,如圖0-30所示。

圖0-30 錯誤列表
單擊錯誤列表中的某一錯誤項,會顯示有關此錯誤的詳細說明,幫助用戶更改錯誤。單擊“顯示警告”復選框,可以顯示程序中的所有警告。
當用戶使用LabVIEW 8.2的錯誤列表功能時,有一個非常重要的技巧,就是當用戶雙擊錯誤列表中的某一錯誤項時,LabVIEW會自動定位到發生該錯誤的對象上,并高亮顯示該對象,如圖0-31所示,這樣,便于用戶查找錯誤,并更正錯誤。

圖0-31 高亮顯示程序中的錯誤
2.設置斷點調試
為了查找程序中的邏輯錯誤,用戶也許希望框圖程序一個節點一個節點地執行。使用斷點工具可以在程序的某一點暫時中止程序執行,用單步方式查看數據。當用戶搞不清楚程序中哪里出現錯誤時,設置斷點是一種排除錯誤的手段。在LabVIEW中,從工具選板選取斷點工具,如圖0-32所示。在想要設置斷點的位置單擊鼠標,便可以在那個位置設置一個斷點。另外一種設置斷點的方法是在需要設置斷點的位置單擊鼠標右鍵,從彈出的快捷菜單中選擇“設置斷點”命令,即可在該位置設置一個斷點。如果想要清除設定的斷點,只要在設置斷點的位置單擊鼠標即可。

圖0-32 設置斷點
設置斷點后的程序后面板如圖0-33所示。斷點對于節點或者圖框顯示為紅框,對于連線顯示為紅點。

圖0-33 設置斷點后的程序后面板
運行程序時,會發現程序每當運行到斷點位置時會停下來,并高亮顯示數據流到達的位置,這樣每個循環程序會停下來兩次,用戶可以在這個時候查看程序的運算是否正常,數據顯示是否正確。
程序停止在斷點位置時的后面板如圖0-34所示,從圖中可以看出,程序停止在斷點位置,并高亮顯示數據流到達的對象。按下單步執行按鈕,閃爍的節點被執行,下一個將要執行的節點變為閃爍,指示它將被執行。用戶也可以單擊暫停按鈕,這樣程序將連續執行直到下一個斷點。當程序檢查無誤后,用戶可以在斷點上單擊鼠標以清除斷點。

圖0-34 程序停止在斷點位置時的后面板
3.設置探針
在有些情況下,僅僅依靠設置斷點還不能滿足調試程序的需要,探針便是一種很好的輔助手段,可以在任何時刻查看任何一條連線上的數據,探針猶如一顆神奇的“針”,能夠隨時偵測到數據流中的數據。
在LabVIEW中,設置探針的方法是用工具選板中的探針工具,如圖0-35所示,單擊后面板中程序的連線,這樣可以在該連線上設置探針以偵測這條連線上的數據,同時在程序上將浮動顯示探針數據窗口。要想取消探針,只需要關閉浮動的探針數據窗口即可。

圖0-35 設置探針
設置好探針的程序后面板如圖0-36所示。運行程序,在探針數據窗口中將顯示出設置探針處的數據。

圖0-36 設置好探針的程序后面板
利用探針可以檢測數據的功能,用戶可以了解程序運行過程中任何位置上的數據,即可知道數據流在空間的分布。利用上面介紹的斷點,可以將程序中止在任意位置,即可知道數據在任何時間的分布。那么綜合使用探針和斷點,用戶就可以知道程序在任何空間和時間的數據分布了。這一點對LabVIEW程序的調試非常重要。
4.高亮顯示程序的運行
有時用戶希望在程序運行過程中,能夠實時顯示程序的運行流程,以及當數據流流過數據節點時的數值,LabVIEW 8.2為用戶提供了這一功能,這就是以“高亮顯示”方式運行程序。
單擊LabVIEW工具欄上的高亮顯示程序“運行”按鈕,程序將會以高亮顯示方式運行。這時該按鈕變為
,如同一盞被點亮的燈泡。
下面以高亮顯示的方式執行0.5 節中的例程。在程序的運行過程中,程序的后面板如圖0-37所示。在這種方式下,VI程序以較慢的速度運行,沒有被執行的代碼灰色顯示,執行后的代碼高亮顯示,并顯示數據流線上的數據值。這樣,用戶就可以根據數據的流動狀態跟蹤程序的執行。用戶可以很清楚地看到程序中數據流的流向,并且可以實時地了解每個數據節點的數值。

圖0-37 以“高亮”方式運行程序
在多數情況下,用戶需要結合多種方式調試LabVIEW程序,例如,用戶可以在設置探針的情況下,高亮顯示程序的運行,并且單步執行程序。這樣程序的執行細節將會一覽無余。
5.單步執行和循環運行
單步執行和循環運行是LabVIEW支持的兩種程序運行方式,與正常運行方式不同的是,這兩種運行方式主要用于程序的調試和糾錯。它們是除了設置斷點和探針兩種方法外,另外一種行之有效的程序調試和糾錯機制。
在單步執行方式下,用戶可以看到程序執行的每一個細節。單步執行的控制由工具欄上的三個按鈕(單步入)、
(單步跳)和
(單步出)完成。這三個按鈕表示三種不同類型的單步執行方式。
(單步入)表示單步進入程序流程,并在下一個數據節點前停下來;
(單步跳)表示單步進入程序流程,并在下一個數據節點執行后停下來;
(單步出)表示停止單步執行方式,即在執行完當前節點的內容后立即暫停。
下面仍舊結合上面的例程介紹單步運行調試程序的方法。
單擊(單步入)按鈕,程序開始以單步方式執行,程序每執行一步,便停下來并且高亮顯示當前程序執行到的位置,如圖0-38所示。

圖0-38 單步執行程序
每當程序完成當前循環,開始下一個循環時,會顯示一個箭頭,以指示循環執行的方向。
在LabVIEW中支持循環運行方式,LabVIEW 8.2中的循環運行按鈕為。所謂循環運行方式,是指當程序中的數據流流經最后一個對象時,程序會自動重新運行,直到用戶手動按下“停止”按鈕
為止。
- 構建高質量的C#代碼
- 過程控制工程及仿真
- Photoshop CS4經典380例
- PHP開發手冊
- Pig Design Patterns
- INSTANT Autodesk Revit 2013 Customization with .NET How-to
- Ceph:Designing and Implementing Scalable Storage Systems
- 突破,Objective-C開發速學手冊
- Hands-On Reactive Programming with Reactor
- 網絡服務搭建、配置與管理大全(Linux版)
- 機器人人工智能
- Web編程基礎
- Web璀璨:Silverlight應用技術完全指南
- Photoshop CS4數碼照片處理入門、進階與提高
- PowerPoint 2010幻燈片制作高手速成