第2章 程序結(jié)構(gòu)_第1頁
第2章 程序結(jié)構(gòu)_第2頁
第2章 程序結(jié)構(gòu)_第3頁
第2章 程序結(jié)構(gòu)_第4頁
第2章 程序結(jié)構(gòu)_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第2章虛擬儀器程序結(jié)構(gòu)2.1概述2.1While循環(huán)結(jié)構(gòu)

While循環(huán)可以反復(fù)執(zhí)行循環(huán)體的程序,直至到達某個邊界條件。它類似于普通編程語言中的Do循環(huán)和Repeat-Until循環(huán)。While循環(huán)的框圖是一個大小可變的方框,用于執(zhí)行框中的程序,直到條件端子接收到的布爾值為FALSE。該循環(huán)有如下特點:1、計數(shù)從0開始(i=0)。2、先執(zhí)行循環(huán)體,而后i+1,如果循環(huán)只執(zhí)行一次,那么循環(huán)輸出值i=0。循環(huán)至少要運行一次。

循環(huán)計數(shù)循環(huán)邊界條件2.1While循環(huán)結(jié)構(gòu)

移位寄存器可以將數(shù)據(jù)從一個循環(huán)周期傳遞到另外一個周期。在程序設(shè)計中,經(jīng)常要用到它.創(chuàng)建一個移位寄存器的方法是,用鼠標右鍵單擊循環(huán)的左邊或者右邊,在快捷菜單中選擇添加移位寄存器。如下圖所示。2.1While循環(huán)結(jié)構(gòu)

移位寄存器在流程圖上用在循環(huán)邊框上相應(yīng)的一對端子來表示。右邊的端子中存儲了一個周期完成后的數(shù)據(jù),這些數(shù)據(jù)在這個周期完成之后將被轉(zhuǎn)移到左邊的端子,賦給下一個周期。移位寄存器可以轉(zhuǎn)移各種類型的數(shù)據(jù)--數(shù)值、布爾數(shù)、數(shù)組、字符串等等。它會自動適應(yīng)與它連接的第一個對象的數(shù)據(jù)類型。下圖表示了它的工作過程.可以令移位寄存器記憶前面的多個周期的數(shù)值。這個功能對于計算數(shù)據(jù)均值非常有用。還可以創(chuàng)建其他的端子訪問先前的周期的數(shù)據(jù),方法是用鼠標右鍵單擊左邊或者右邊的端子,在快捷菜單中選擇AddElement。例如,如果某個移位寄存器左邊的端口含有三個元素,那么就可以訪問前三個周期的數(shù)據(jù)。2.1While循環(huán)結(jié)構(gòu)練習(xí)2-1使用While循環(huán)和圖表目的:用While循環(huán)和圖表獲得數(shù)據(jù),并實時顯示。創(chuàng)建一個可以產(chǎn)生并在圖表中顯示隨機數(shù)的VI。前面板有一個控制旋鈕可在0到10秒之間調(diào)節(jié)循環(huán)時間,還有一個開關(guān)可以中止VI的運行。學(xué)習(xí)怎樣改變開關(guān)的動作屬性,以便不用每次運行VI時都要打開開關(guān)。操作步驟如下:For循環(huán)用于將某段程序執(zhí)行指定次數(shù)。和While循環(huán)一樣,它不會立刻出現(xiàn)在流程圖中,而是出現(xiàn)一個小的圖標,而后您可以修改它的大小和位置。具體的方法是,先單擊所有端子的左上方,然后按下鼠標,拖曳出一個包含所有端子的矩形。釋放鼠標時就創(chuàng)建了一個指定大小和位置的For循環(huán)。2.2For循環(huán)結(jié)構(gòu)For循環(huán)將把它的框圖中的程序執(zhí)行指定的次數(shù),F(xiàn)or循環(huán)具有下面這兩個端子:N:計數(shù)端子(輸入端子)——用于指定循環(huán)執(zhí)行的次數(shù)。I:周期端子(輸出端子)——含有循環(huán)已經(jīng)執(zhí)行的次數(shù)。練習(xí)2-2使用For循環(huán)目的:用For循環(huán)和移位寄存器計算一組隨機數(shù)的最大值。2.2For循環(huán)結(jié)構(gòu)Case結(jié)構(gòu)含有兩個或者更多的子程序(Case),執(zhí)行那一個取決于與選擇端子或者選擇對象的外部接口相連接的某個整數(shù)、布爾數(shù)、字符串或者標識的值。必須選擇一個默認的Case以處理超出范圍的數(shù)值,或者直接列出所有可能的輸入數(shù)值。Case結(jié)構(gòu)見下圖,各個子程序占有各自的流程框,在其上沿中央有相應(yīng)的子程序標識:Ture、False或1、2、3…。按鈕用來改變當前顯示的子程序(各子程序是重疊放在屏幕同一位置上的)。2.3條件(Case)結(jié)構(gòu)練習(xí)2-3使用Case結(jié)構(gòu)目的:創(chuàng)建一個VI以檢查一個數(shù)值是否為正數(shù)。如果它是正的,VI就計算它的平方根,反之則顯示出錯。2.3條件(Case)結(jié)構(gòu)

代碼式的傳統(tǒng)編程語言中,默認的情況是,程序語句按照排列順序執(zhí)行,但LabVIEW中不同,它是一種圖形化的數(shù)據(jù)流式編程語言。在下圖中,假設(shè)有A、B、C、D4個節(jié)點,其數(shù)據(jù)流向如下圖所示。按照數(shù)據(jù)流式語言的約定,任何一個節(jié)點只有在所有的輸入數(shù)據(jù)有效時才會執(zhí)行,所以圖中,當且僅當A、B、C3個節(jié)點執(zhí)行完,使得D節(jié)點的3個輸入數(shù)據(jù)都到達D節(jié)點后,D節(jié)點才執(zhí)行。但是你要注意,這里并沒有規(guī)定A、B、C3個節(jié)點的執(zhí)行順序。在LabVIEW中這種情況下,A、B、C的執(zhí)行順序是不確定的,如果你需要對它們規(guī)定一個確定的順序,那就需要使用本節(jié)介紹的“順序結(jié)構(gòu)”。2.4順序結(jié)構(gòu)順序結(jié)構(gòu)的圖標,它看上去像是電影膠片。它可以按一定順序執(zhí)行多個子程序。首先執(zhí)行0幀中的程序,然后執(zhí)行1幀中的程序,逐個執(zhí)行下去。與Case結(jié)構(gòu)類似,這多幀程序在流程圖中占有同一個位置。有層疊式和平鋪式兩種結(jié)構(gòu)2.4順序結(jié)構(gòu)練習(xí)2-4使用順序結(jié)構(gòu)目的:創(chuàng)建一個VI,計算生成等于某個給定值的隨機數(shù)所需要的時間。約定的數(shù)是0-100之間的整數(shù)。2.4順序結(jié)構(gòu)公式節(jié)點是一個大小可變的方框,可以利用它直接在流程圖中輸入公式。當某個等式有很多變量或者非常復(fù)雜時,這個功能就非常有用。利用公式節(jié)點可以直接輸入一個或者多個復(fù)雜的公式,而不用創(chuàng)建流程圖的很多子程序。使用文本編輯工具來輸入公式。創(chuàng)建公式節(jié)點的輸入和輸出端子的方法是,用鼠標右鍵單擊第0幀的底部邊框,選擇AddInput(AddOutput)。再在節(jié)點框中輸入變量名稱。變量名對大小寫敏感。然后就可以在框中輸入公式。每個公式語句都必須以分號(;)結(jié)尾。2.5公式節(jié)點2.5公式節(jié)點練習(xí)2-5使用公式節(jié)點目的:創(chuàng)建一個VI,它用公式節(jié)點計算

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論