第33講 LabVIEW程序設計基礎_結(jié)構(gòu)_第1頁
第33講 LabVIEW程序設計基礎_結(jié)構(gòu)_第2頁
第33講 LabVIEW程序設計基礎_結(jié)構(gòu)_第3頁
第33講 LabVIEW程序設計基礎_結(jié)構(gòu)_第4頁
第33講 LabVIEW程序設計基礎_結(jié)構(gòu)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第3.3講 LabVIEW程序設計基礎_結(jié)構(gòu)呂 崗復習:LabVIEW程序的執(zhí)行順序LabVIEW中的順序結(jié)構(gòu)指定的順序單層順序結(jié)構(gòu)單層順序結(jié)構(gòu)疊層順序結(jié)構(gòu)疊層順序結(jié)構(gòu)1.單層順序結(jié)構(gòu)可以看到所有代碼可以看到所有代碼代碼多時難看代碼多時難看從左到右從左到右2.疊層順序結(jié)構(gòu)按標定順序疊放代碼按標定順序疊放代碼節(jié)省空間節(jié)省空間不方便觀看不方便觀看 可以有多個分支,可以設置默認分支 類似于文本語言的 case 或 ifelse ifelse 結(jié)構(gòu)LabVIEW中的條件結(jié)構(gòu)分支選擇端分支標簽條件結(jié)構(gòu)的輸入和輸出通道(隧道) 輸入通道可以只傳遞到某些分支 但各個分支的輸出通道必須賦值1.等價于if.el

2、se.語句的Case結(jié)構(gòu)If(a%2=0)b=a+2;elseb=a+1;end2.等價于switch語句的Case結(jié)構(gòu)switch (fruit)case apple: price=9; case banana: price=10; case pear: price=8; default: price=0;LabVIEW中的循環(huán)結(jié)構(gòu) While循環(huán) For循環(huán) 隧道 寄存器 反饋節(jié)點While循環(huán)LabVIEW While Loop Flowchart Pseudo CodeRepeat (code);Until Condition met;End;While循環(huán)返回執(zhí)行次數(shù)(從0開始)終止

3、條件 (也可以是繼續(xù)條件)隧道 (Tunnel)While 循環(huán)輸入值為真時停止輸入值為假時停止While 循環(huán)注意事項設置終止循環(huán)條件設置終止循環(huán)條件While 循環(huán)注意事項隧道隧道While 循環(huán)注意事項放置定時器放置定時器延時 為何需要延時? 控制循環(huán)執(zhí)行的頻率 使處理器有資源處理其他任務 (如界面刷新等) LabVIEW中常用的軟件定時VI 注意: 軟件定時的精度通常為1ms左右For循環(huán) LabVIEW For Loop Flowchart Pseudo CodeN=100;i=0;Until i=N:Repeat (code;i=i+1);End;For循環(huán) 可增加條件終止端Whi

4、le循環(huán)和For循環(huán)的比較For Loop按照約定的次數(shù)執(zhí)行 (除非增加了條件終止端)可以一次也不執(zhí)行默認情況下,隧道輸出的是一個數(shù)組 (需要禁用索引才能輸出值)While Loop循環(huán)終止執(zhí)行由終止條件決定至少會執(zhí)行一次默認情況下,隧道輸出的是一個值 (需要開啟索引才能輸出數(shù)組)例: 利用For循環(huán)自動索引對數(shù)組賦值一維數(shù)組二維數(shù)組使用數(shù)組作為索引輸入 可不定義循環(huán)次數(shù),循環(huán)次數(shù)自動設置為數(shù)組大小思考:自動索引移位寄存器 通過右鍵菜單可以對循環(huán)添加移位寄存器 可以“記住”上一次循環(huán)執(zhí)行后的數(shù)據(jù) 右邊的移位寄存器記錄的是循環(huán)當此執(zhí)行后的數(shù)據(jù) 左邊的移位寄存器記錄的是循環(huán)上次執(zhí)行后的數(shù)據(jù)移位寄存

5、器的初始化程序框圖首次執(zhí)行再次執(zhí)行有初始化Output = 5Output = 5無初始化Output = 4Output = 8移位寄存器的堆棧 可以“記住”前若干次循環(huán)的數(shù)據(jù)反饋節(jié)點LabVIEW中使能結(jié)構(gòu)(/* */)框圖使能框圖使能程序架構(gòu) 程序架構(gòu)的重要性 好的程序架構(gòu)可以簡化編程和調(diào)試的復雜度 便于增加、擴展程序功能 代碼更清晰,增強程序的可讀性 就像蓋房子,規(guī)劃和框架設計非常重要常用的一種LabVIEW程序架構(gòu): 狀態(tài)機 典型用途 界面響應: 在程序運行的不同階段響應不同的用戶輸入 狀態(tài)控制: 控制測控系統(tǒng)在各種不同狀態(tài)下的行為和狀態(tài)轉(zhuǎn)移狀態(tài)機的代碼形式 由While循環(huán)和條件結(jié)構(gòu)組成 狀態(tài)由枚舉型變量確定 每個狀態(tài)都會轉(zhuǎn)移到其他狀態(tài)或本狀態(tài)While循環(huán)條件結(jié)構(gòu)移位寄存器例: 默認狀態(tài)及單一狀態(tài)轉(zhuǎn)移例: 根據(jù)情況選擇轉(zhuǎn)移狀態(tài)小試身手 1. 產(chǎn)生100個隨機數(shù),計算輸出每3個相鄰數(shù)的平均值。 2. 編寫顯示輸入“常熟理工學院LabVIEW語言設計”這段文字所花費的時間。小試身手 3、利用順序結(jié)構(gòu)和循環(huán)結(jié)構(gòu)寫一個跑馬燈,如下圖所示,5個燈從左到右不停的輪流點亮,閃爍間隔由滑動條調(diào)節(jié)。小試身手 4. 求分數(shù)序列 前20項之和。 5. 給出一百分制成績,要求輸出等級A,B,C,D,E。90分以上為A,8089為B,7079為C,6069為D,60分以

溫馨提示

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

評論

0/150

提交評論