




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第四章結(jié)構(gòu)與屬性控制第一頁,共五十二頁,編輯于2023年,星期一6.1For循環(huán)
For循環(huán)是LabVIEW最基本的結(jié)構(gòu)之一,它執(zhí)行指定次數(shù)的循環(huán)。相當(dāng)于C語言的For循環(huán):
for(inti=0;i<N;i++)
{
}
LabVIEW中For循環(huán)可從框圖功能模板Function→Structure子模板中創(chuàng)建。第二頁,共五十二頁,編輯于2023年,星期一→第三頁,共五十二頁,編輯于2023年,星期一6.1.1For循環(huán)的組成
最基本的For循環(huán)由:循環(huán)框架、迭代端口i和總計數(shù)端口構(gòu)成。
任務(wù)1:判斷該程序運行后的結(jié)果,設(shè)計該循環(huán)結(jié)構(gòu)程序,驗證結(jié)果。第四頁,共五十二頁,編輯于2023年,星期一
此外,LabVIEW在For循環(huán)中引入移位寄存器(ShiftRegister)和框架通道(Channel)兩個獨具特色的新概念?!谖屙?,共五十二頁,編輯于2023年,星期一數(shù)據(jù)在移位寄存器中的流動過程:第六頁,共五十二頁,編輯于2023年,星期一移位寄存器的特點:
(1)移位寄存器(左右)是For循環(huán)的數(shù)據(jù)緩沖區(qū)。
(2)可以增加和減少移位寄存器的個數(shù)。
(3)左右兩側(cè)移位寄存器的數(shù)據(jù)類型必須一致。
任務(wù)2:計算1+2+3+…100的和。第七頁,共五十二頁,編輯于2023年,星期一6.1.2For循環(huán)的使用任務(wù)4:求0到99之間所有偶數(shù)的和.任務(wù)3:求N!.第八頁,共五十二頁,編輯于2023年,星期一6.1.3For循環(huán)的特點
1.一旦For循環(huán)開始執(zhí)行,就必須執(zhí)行完相應(yīng)次數(shù)循環(huán)后才能終止,不可中途跳轉(zhuǎn)出來。
2.具有自動索引功能
例:求一維數(shù)組所有元素的和。第九頁,共五十二頁,編輯于2023年,星期一
當(dāng)For循環(huán)計數(shù)端口給定值與兩數(shù)組長度不等時,F(xiàn)or循環(huán)自動按最小循環(huán)次數(shù)執(zhí)行。第十頁,共五十二頁,編輯于2023年,星期一6.2While循環(huán)
當(dāng)循環(huán)次數(shù)不能預(yù)先確定時,就需要用到While循環(huán)。它也是LabVIEW最基本的結(jié)構(gòu)之一。相當(dāng)于C語言的While循環(huán)和do循環(huán):
While(條件)
{
}
Do
{
}
LabVIEW中While循環(huán)可從框圖功能模板Function→Structure子模板中創(chuàng)建。第十一頁,共五十二頁,編輯于2023年,星期一→第十二頁,共五十二頁,編輯于2023年,星期一6.2.1While循環(huán)的組成
最基本的While循環(huán)由:循環(huán)框架、迭代端口i和條件端口構(gòu)成。
條件端口控制循環(huán)是否執(zhí)行,每次循環(huán)結(jié)束后,判斷條件端口的值,若為False,停止執(zhí)行循環(huán);若為True,則繼續(xù)執(zhí)行下一次循環(huán)。不給條件端口賦值,則While循環(huán)只執(zhí)行一次。
此外,LabVIEW在While循環(huán)中也可引入移位寄存器(ShiftRegister)和框架通道(Channel),與For循環(huán)中用法完全相同。第十三頁,共五十二頁,編輯于2023年,星期一6.2.2While循環(huán)的使用
任務(wù)5攝氏溫度與華氏溫度的動態(tài)轉(zhuǎn)化任務(wù)6求N!.第十四頁,共五十二頁,編輯于2023年,星期一6.2.3While循環(huán)的特點
1.具有自動索引功能
例:顯示一維數(shù)組所有元素。2.停止條件可修改,避免死循環(huán)。第十五頁,共五十二頁,編輯于2023年,星期一6.3順序結(jié)構(gòu)
在代碼式的傳統(tǒng)編程語言中,默認(rèn)的情況是,程序語句按照排列順序執(zhí)行,稱為控制流程;但LabVIEW中不同,它是一種圖形化的數(shù)據(jù)流式編程語言,具有并發(fā)、多任務(wù)的特點。第十六頁,共五十二頁,編輯于2023年,星期一6.3.1順序結(jié)構(gòu)的組成
最基本的順序結(jié)構(gòu)由:順序框架、框圖標(biāo)識符和遞增/遞減按鈕構(gòu)成。
LabVIEW在順序框架中引入了本地結(jié)果(SequenceLocal)的概念,通過本地結(jié)果就可以在順序框架中向后傳遞數(shù)據(jù)
順序框架中也存在框架通道,但通道沒有EnableIndexing和DisenableIndexing屬性第十七頁,共五十二頁,編輯于2023年,星期一6.3.2順序結(jié)構(gòu)的使用
任務(wù)7用For循環(huán)產(chǎn)生一個2000點的隨機波形,并計算所用時間.第十八頁,共五十二頁,編輯于2023年,星期一前面板輸出:第十九頁,共五十二頁,編輯于2023年,星期一6.3.3順序結(jié)構(gòu)的特點
1.LabVIEW在順序框架中引入了局部變量(SequenceLocal)的概念,通過本地結(jié)果就可以在順序框架中向后傳遞數(shù)據(jù)。
2.順序結(jié)構(gòu)可以提高某類程序的運行效率,但不可濫用,有些情況下數(shù)據(jù)流機制的程序效率會更高。第二十頁,共五十二頁,編輯于2023年,星期一6.4Case循環(huán)(條件循環(huán))
Case結(jié)構(gòu)也是LabVIEW最基本的結(jié)構(gòu)之一。相當(dāng)于C語言的switch語句:
switch(表達(dá)式)
{
case1:語句1;
case2:語句2;
casen:語句n;
default:語句n+1;
}
第二十一頁,共五十二頁,編輯于2023年,星期一→LabVIEW中Case循環(huán)可從框圖功能模板Function→Structure子模板中創(chuàng)建。第二十二頁,共五十二頁,編輯于2023年,星期一6.4.1Case結(jié)構(gòu)的組成
最基本的Case結(jié)構(gòu)由:Case框架、選擇端口(分支選擇器)、選擇器標(biāo)簽和遞增/遞減按鈕構(gòu)成。
選擇端口相當(dāng)于C語言的Switch語句中的“表達(dá)式”,框圖標(biāo)識符相當(dāng)于“表達(dá)式n”。
選擇端口的外部控制條件的數(shù)據(jù)類型有3種:布爾型、數(shù)字型和字符串型。
控制條件的數(shù)據(jù)類型必須與框圖標(biāo)識符中數(shù)據(jù)類型一致。
1.控制條件為布爾類型,框圖標(biāo)識符取值True和False;
2.控制條件為數(shù)字類型,框圖標(biāo)識符取值0,1,2,…;
3.控制條件為字符串類型,框圖標(biāo)識符取值“條件n”;第二十三頁,共五十二頁,編輯于2023年,星期一6.4.2Case結(jié)構(gòu)的使用任務(wù)8求一個數(shù)的平方根,若該數(shù)>=0,輸出開方結(jié)果;否則彈出對話框,報告錯誤,同時輸出-99999.00.第二十四頁,共五十二頁,編輯于2023年,星期一6.4.3Case結(jié)構(gòu)的特點
1.LabVIEW的Case結(jié)構(gòu)簡潔明了,不但相當(dāng)于Switch語句,還可以實現(xiàn)ifelse語句功能。
2.Case框架中也存在框架通道,但通道沒有EnableIndexing和DisenableIndexing屬性。
3.每個子框架必須連接一個數(shù)據(jù),否則程序出錯。第二十五頁,共五十二頁,編輯于2023年,星期一6.5事件結(jié)構(gòu)
6.5.1事件驅(qū)動的概念
LabVIEW是一種數(shù)據(jù)流的編程環(huán)境,由數(shù)據(jù)流決定程序中節(jié)點的執(zhí)行順序。但在編程中可以設(shè)置事件,對數(shù)據(jù)流進行干預(yù)。這些事件是用戶在前面板的互動操作,如:點擊鼠標(biāo)事件、鍵盤事件等。
在事件驅(qū)動程序中,首先是等待事件,當(dāng)事件發(fā)生時執(zhí)行指定事件的程序代碼,對事件進行響應(yīng),然后再回到等待狀態(tài)。
使用事件設(shè)置,當(dāng)用戶改變一個前面板的值、關(guān)閉前面板、退出程序等,都可以被程序及時捕捉到。第二十六頁,共五十二頁,編輯于2023年,星期一6.5.2事件結(jié)構(gòu)的建立
LabVIEW中Event結(jié)構(gòu)可從框圖功能模板Function→Structure子模板中創(chuàng)建,如下。
超時端口Timeout連接一個數(shù)值指定等待事件的毫秒數(shù)。默認(rèn)值為-1,即無限等待。
通過事件端口可以訪問事件的數(shù)據(jù)值。
事件選擇標(biāo)簽顯示當(dāng)前響應(yīng)事件的子圖形代碼框。第二十七頁,共五十二頁,編輯于2023年,星期一6.5.3事件結(jié)構(gòu)的設(shè)置
在事件結(jié)構(gòu)邊框右鍵彈出菜單上選擇CaseEventCase添加子圖形代碼框。
在EditEventsHandledbyThisCase可以為子圖形代碼框設(shè)置事件。第二十八頁,共五十二頁,編輯于2023年,星期一
在EditEventsHandledbyThisCase設(shè)置代碼框設(shè)置事件。第二十九頁,共五十二頁,編輯于2023年,星期一
在EditEventsHandledbyThisCase設(shè)置代碼框設(shè)置事件。
例:事件結(jié)構(gòu)的使用。第三十頁,共五十二頁,編輯于2023年,星期一第三十一頁,共五十二頁,編輯于2023年,星期一6.6公式節(jié)點
假如程序中有一些復(fù)雜的數(shù)學(xué)計算,編寫圖形代碼是比較麻煩的。如x>0,y=mx3+3nx2-x+1;x<=0,y=-2mx3+x-5。第三十二頁,共五十二頁,編輯于2023年,星期一第三十三頁,共五十二頁,編輯于2023年,星期一→6.6.1公式節(jié)點的創(chuàng)建
①
在功能模板Function→Structure子模板中選擇FormulaNode。第三十四頁,共五十二頁,編輯于2023年,星期一→
①
添加輸入輸出端口?!谌屙?,共五十二頁,編輯于2023年,星期一6.6.2公式節(jié)點的使用
任務(wù)9求y=3x+100第三十六頁,共五十二頁,編輯于2023年,星期一任務(wù)10x>0,y=mx3+3nx2-x+1;
x<=0,y=-2mx3+x-5。
應(yīng)用選擇結(jié)構(gòu)<邏輯表達(dá)式>?<表達(dá)式1>:<表達(dá)式2>;第三十七頁,共五十二頁,編輯于2023年,星期一6.6.3公式節(jié)點的特點
1.LabVIEW的公式節(jié)點的使用簡化計算公式的圖形化編程,提高了效率。
2.公式節(jié)點框架中出現(xiàn)的所有變量,必須有一個對應(yīng)的輸入輸出端口,注意輸入輸出端口是可設(shè)置的。
3.公式節(jié)點框架內(nèi)每個公式后以分號”;”結(jié)束。第三十八頁,共五十二頁,編輯于2023年,星期一6.7屬性節(jié)點
前面板對象屬性是指前面板上控件的外觀和功能特征,如顯示的顏色、可見性、閃爍、位置、比例等。
6.7.1屬性節(jié)點的創(chuàng)建
簡便的方法是在前面板對象或其端口的右鍵彈出菜單中選擇Creat→PropertyNode,如下圖:第三十九頁,共五十二頁,編輯于2023年,星期一第四十頁,共五十二頁,編輯于2023年,星期一
屬性類型的選擇,單擊屬性節(jié)點,在彈出菜單中的Property下,列出了對象的所有屬性,如下圖:→
增加多種屬性,方法1:拖動;
方法2:AddElement第四十一頁,共五十二頁,編輯于2023年,星期一6.7.2屬性節(jié)點的使用
①
VisibleAttribute
控制前面板對象是否可見,數(shù)據(jù)類型為布爾型。當(dāng)為True時,可見;當(dāng)為False時,不可見第四十二頁,共五十二頁,編輯于2023年,星期一②DisableAttribute
控制前面板對象是否可用,數(shù)據(jù)類型為整型。當(dāng)其值為0時,可用;當(dāng)其值為1時,不可用;當(dāng)其值為2時,不可用,且變暗。第四十三頁,共五十二頁,編輯于2023年,星期一③KeyFocusAttribute
控制前面板對象是否處于焦點狀態(tài),數(shù)據(jù)類型為布爾型。當(dāng)為True時,處于焦點狀態(tài);當(dāng)為False時,失去焦點狀態(tài)。第四十四頁,共五十二頁,編輯于2023年,星期一④BlinkingAttribute
控制前面板對象是否閃爍,數(shù)據(jù)類型為布爾型。當(dāng)為True時,處于閃爍狀態(tài);當(dāng)為False時,處于正常狀態(tài)。第四十五頁,共五十二頁,編輯于2023年,星期一⑤PositionAttribute
設(shè)置控制前面板對象在前面板中的位置,數(shù)據(jù)類型為簇,均為整型。第四十六頁,共五十二頁,編輯于2023年,星期一⑥BoundsAttribute(ReadOnly)
獲得控制前面板中對象的大小,包括高和寬,數(shù)據(jù)類型為簇,均為整型。第四十七頁,共五十二頁,編輯于2023年,星期一6.6.3屬性節(jié)點的特點
1.與本地變量類似,屬性節(jié)點也有Read和Write兩種屬性。
2.在編程中會經(jīng)常應(yīng)用到屬性節(jié)點,特別是對于Graph和Chart波形控件,應(yīng)用屬性節(jié)點能添加不少實用功能。第四十八頁,共五十二頁,編輯于2023年,星期一
實驗三
1.產(chǎn)生100個0.0~100.0的隨機數(shù),求其最小值、最大值、平均值,并將數(shù)據(jù)在Graph中顯示。
2.產(chǎn)生0.0~100.0的隨機數(shù)序列
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 精神康復(fù)職業(yè)康復(fù)服務(wù)考核試卷
- 神經(jīng)內(nèi)科護士課件
- 外科常見中醫(yī)護理技術(shù)
- 小橋流水人家教學(xué)設(shè)計
- 2025混凝土工勞務(wù)施工合同樣本
- 2025年簽訂勞動合同時需繳納養(yǎng)老保險
- 2025企業(yè)間轉(zhuǎn)讓協(xié)議EYRD股權(quán)買賣合同范本
- 2025企業(yè)辦公區(qū)域電氣維護保養(yǎng)合同
- 2025年轉(zhuǎn)租房屋合同范本
- 向日葵課件講解
- 集成電路先進封裝材料PPT全套教學(xué)課件
- 有色金屬冶金概論總論
- 砂石料單價編制
- 海藻學(xué)知到章節(jié)答案智慧樹2023年煙臺大學(xué)
- 六年級下冊道德與法治期中測試卷含答案【考試直接用】
- EIM Book 1 Unit 11 Promise,promise單元知識要點
- 全陜西師范大學(xué)《716文學(xué)綜合》考研真題詳解下載全
- 引航梯的位置和標(biāo)識及保養(yǎng)記錄
- 外科學(xué)急性化膿性腹膜炎
- 苯酚的分子組成和結(jié)構(gòu)課件
- 《羅織經(jīng)》全文及翻譯
評論
0/150
提交評論