版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
精通LabVIEW虛擬儀器程序設(shè)計與案例實現(xiàn)第4章LabVIEW中的程序結(jié)構(gòu)第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5LabVIEW中的程序結(jié)構(gòu)函數(shù)→編程→結(jié)構(gòu)第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5本章內(nèi)容基本程序結(jié)構(gòu)的使用變量的使用公式節(jié)點的使用反饋節(jié)點的使用條件與禁用結(jié)構(gòu)的使用第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5循環(huán)結(jié)構(gòu)——For循環(huán)
一個完整的For循環(huán)體它包含兩個端口:循環(huán)次數(shù)(輸入端口)和循環(huán)計數(shù)(輸出端口)。循環(huán)次數(shù)端口N用于指定框圖代碼的執(zhí)行次數(shù),它是一個輸入端口,除非應(yīng)用了自動索引功能,否則用必須輸入一個整型數(shù),當(dāng)連接一個浮點數(shù)時,LabVIEW會自動對它按“四舍五入”的原則進(jìn)行強制轉(zhuǎn)換。
循環(huán)次數(shù)和循環(huán)計數(shù)端口的數(shù)值范圍為0~2^31-1的長整型數(shù),如果給N的賦值為0,則程序一次也不執(zhí)行。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——產(chǎn)生數(shù)據(jù)點數(shù)為1000的正弦波
在做算法仿真時,經(jīng)常需要產(chǎn)生指定點數(shù)的數(shù)據(jù)波形,最基本的實現(xiàn)方法就是通過For循環(huán)+基本函數(shù)的方式。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5循環(huán)結(jié)構(gòu)——For循環(huán)For循環(huán)的自動索引
正常情況下For循環(huán)是要指定循環(huán)次數(shù)程序才能正常執(zhí)行的,但如果我們不知道具體的循環(huán)次數(shù),那又該如何運用For循環(huán)呢?For循環(huán)的自動索引功能默認(rèn)情況下是自動開啟的,在自動索引開啟的狀態(tài)下,數(shù)據(jù)進(jìn)入循環(huán)體時是降維的。
切換索引功能開啟與關(guān)閉的方法為:鼠標(biāo)右擊索引通道,選擇“禁用/啟用索引”即可。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——自動索引功能使用
在LabVIEW中用框圖的嵌套來實現(xiàn)循環(huán)嵌套,一層一層執(zhí)行。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5循環(huán)結(jié)構(gòu)——For循環(huán)For循環(huán)的移位寄存器
如果程序后一次的運行需要用到前一次的值,則可以使用移位寄存器,它實際上是For循環(huán)和While循環(huán)獨有的局部變量。
移位寄存器的使用要經(jīng)過創(chuàng)建和初始化兩步。
移位寄存器的左右端口可以成對出現(xiàn),也可以“一對多”,在“一對多”的情況中要特別注意的是,只能是右側(cè)的“一個端口”對應(yīng)左側(cè)的“多個端口”,而不能反向。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5循環(huán)結(jié)構(gòu)——For循環(huán)“顯式初始化”
“非初始化”
移位寄存器初始化
移位寄存器可以存儲的數(shù)據(jù)類型有:數(shù)值型、布爾型、數(shù)組、字符串型等。不同初始化方式運行結(jié)果
第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——前100個自然數(shù)求和
對于求和的運算,基本可以用For循環(huán)+移位寄存器的結(jié)構(gòu)實現(xiàn),例如求階乘和、求前1000個素數(shù)和等等。
For循環(huán)的一個重要應(yīng)用場合就是知道具體的循環(huán)次數(shù)。用For循環(huán)實現(xiàn)前100個自然數(shù)求和如何實現(xiàn)前100個奇數(shù)自然數(shù)求和?第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5循環(huán)結(jié)構(gòu)——While循環(huán)While包含兩個端口:條件接線端(輸入端口)和循環(huán)計數(shù)端(輸出端口)。While循環(huán)也可以用移位寄存器,索引通道,與For循環(huán)相同。While循環(huán)重復(fù)執(zhí)行循環(huán)體內(nèi)的代碼,直到滿足某種條件為止,它相當(dāng)于傳統(tǒng)文本編程語言中的DoLoop或Repeat-Until循環(huán)。
當(dāng)While循環(huán)開始執(zhí)行后,外部數(shù)據(jù)就無法傳遞到循環(huán)體內(nèi),所以循環(huán)的控制條件一定要放置在循環(huán)體內(nèi),否則會造成死循環(huán)。
第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——While循環(huán)基本應(yīng)用While循環(huán)的停止最常用的方法是用一個“停止”控件,當(dāng)然,也可以用其它的條件判斷來終止While循環(huán)的執(zhí)行。
使用While循環(huán)時,建議用戶設(shè)定循環(huán)間隔,因為如果沒有循環(huán)間隔的話,While循環(huán)是“全速”運行的,這樣會占用過多的系統(tǒng)資源,尤其是對需要長時間執(zhí)行的循環(huán)。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5順序結(jié)構(gòu)LabVIEW中的順序結(jié)構(gòu)包括:LabVIEW是圖形化的編程語言,程序的執(zhí)行順序是基本數(shù)據(jù)的流向的,也即,數(shù)據(jù)的連接即指定了程序的執(zhí)行順序,沒有數(shù)據(jù)線連接的不同程序塊是并行執(zhí)行的,所以一般情況下不用順序結(jié)構(gòu),但在某些特殊時候,如果一定指定某幾段程序執(zhí)行的先后順序,則要用到順序結(jié)構(gòu)。
它們的功能是相同的,只是圖形形式不同,也即編程時所占用的空間不同。平鋪式順序結(jié)構(gòu)層疊式順序結(jié)構(gòu)平鋪式順序結(jié)構(gòu)層疊式順序結(jié)構(gòu)第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5平鋪式順序結(jié)構(gòu)的數(shù)據(jù)流向數(shù)據(jù)流向執(zhí)行效果第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5層疊式順序結(jié)構(gòu)的數(shù)據(jù)流向數(shù)據(jù)流向
執(zhí)行結(jié)果第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5定時結(jié)構(gòu)定時循環(huán)定時順序定時VI平鋪式順序結(jié)構(gòu)函數(shù)→編程→結(jié)構(gòu)第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5定時結(jié)構(gòu)——定時循環(huán)開發(fā)支持多種定時功能的VI精確定時循環(huán)執(zhí)行時返回值動態(tài)改變定時功能或者多種執(zhí)行優(yōu)先級平鋪式順序結(jié)構(gòu)
定時循環(huán)根據(jù)指定的循環(huán)周期順序執(zhí)行一個或多個子程序框圖或幀。
一般在以下情況中可以使用定時循環(huán)結(jié)構(gòu):第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5定時結(jié)構(gòu)——定時順序
定時順序結(jié)構(gòu)由一個或多個子程序框圖(也稱“幀”)組成,在內(nèi)部或外部定時源控制下按順序執(zhí)行。與定時循環(huán)不同,定時順序結(jié)構(gòu)的每個幀只執(zhí)行一次,不重復(fù)執(zhí)行。定時順序結(jié)構(gòu)適于開發(fā)只執(zhí)行一次的精確定時、執(zhí)行反饋、定時特征等動態(tài)改變或有多層執(zhí)行優(yōu)先級的VI。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5定時結(jié)構(gòu)——定時VI名稱圖標(biāo)和端口基本功能創(chuàng)建定時源層次結(jié)構(gòu)根據(jù)定時源名稱中輸入的名稱,創(chuàng)建一個層次結(jié)構(gòu)的定時源。清除定時源停止或刪除為其它源所創(chuàng)建或指定的定時源。創(chuàng)建定時源創(chuàng)建用于控制定時結(jié)構(gòu)執(zhí)行的1kHz、1MHz或軟件觸發(fā)定時源發(fā)射軟件觸發(fā)定時源使用創(chuàng)建定時源VI創(chuàng)建軟件觸發(fā)定時源。定時結(jié)構(gòu)停止停止名稱中輸入的定時循環(huán)或定時順序。同步定時結(jié)構(gòu)開始將定時結(jié)構(gòu)名稱中輸入的定時循環(huán)或定時順序結(jié)構(gòu)名稱添加到同步組名稱所指定同步組,從而使上述循環(huán)或順序開始同步。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——定時循環(huán)應(yīng)用舉例
用定時循環(huán)產(chǎn)生兩個相差指定數(shù)據(jù)點數(shù)的正弦波形,也即兩波形起始相位不同,波形總點數(shù)可以任意指定。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5條件結(jié)構(gòu)
條件結(jié)構(gòu)也即選擇結(jié)構(gòu),用于根據(jù)條件判斷或者用戶選擇執(zhí)行相應(yīng)的程序代碼,相當(dāng)于C語言中的“case”結(jié)構(gòu)。
條件輸入端決定執(zhí)行哪個子圖形的代碼,條件輸入值可以是整型、字符串型、布爾型或者枚舉型,默認(rèn)情況是布爾型。選擇條件標(biāo)識框里盛放了所有可以被選擇的條件,并顯示了當(dāng)前子圖形代碼被執(zhí)行的條件。條件結(jié)構(gòu)的設(shè)置:條件輸入端口增減分支與默認(rèn)分支數(shù)據(jù)通道第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——用條件結(jié)構(gòu)實現(xiàn)正弦波-隨機數(shù)信號的選擇
本例中,主要演示條件選擇結(jié)構(gòu)的基本功能。共有3個選項:隨機數(shù)、正弦波、其它。其中,“隨機數(shù)”和“正弦波”都分別對應(yīng)一個分支,并且“正弦波”分支為默認(rèn)分支,“其它”選項沒有對應(yīng)具體的分支。按條件結(jié)構(gòu)的約定,沒有具體分支的選項應(yīng)該對應(yīng)“默認(rèn)分支”。
第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5事件結(jié)構(gòu)
編寫人機交互界面時,經(jīng)常要用到事件驅(qū)動的機制,LabVIEW同樣支持事件驅(qū)動。(1)創(chuàng)建一個事件結(jié)構(gòu);(2)設(shè)置超時參數(shù);(3)添加或刪除事件分支;(4)編輯觸發(fā)事件結(jié)構(gòu)的事件源;(5)設(shè)置默認(rèn)分支結(jié)構(gòu)(系統(tǒng)默認(rèn)將超時分支作為默認(rèn)分支);(6)創(chuàng)建一個While循環(huán),將事件結(jié)構(gòu)包含在While循環(huán)體內(nèi)。事件結(jié)構(gòu)主要包括:
超時端口事件端口事件選擇標(biāo)簽代碼框事件結(jié)構(gòu)創(chuàng)建步驟:
第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5事件結(jié)構(gòu)——編輯事件編輯超時事件
添加新事件
第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5公式節(jié)點
通過公式節(jié)點,用戶不僅可以實現(xiàn)復(fù)雜的數(shù)學(xué)公式,還能通過文本編程寫一些基本的邏輯語句,如if…else…、case、while等。
當(dāng)一個公式或者函數(shù)比較復(fù)雜時,如果純粹用圖形化的模塊就會使程序看上去異常龐大,程序的可讀性將大大降低。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5公式節(jié)點中允許的運算符運算符含義**指數(shù)+、-、!、~、++、--一元加、一元減、邏輯非、補位、前向加和后向加*、/、%乘、除、取模(取余)+、–加法和減法>>、<<算術(shù)右移和左移>、<、>=、<=大于、小于、大于或等于、小于或等于!=、==不相等、相等&按位與^按位異或|按位或&&邏輯與||邏輯或?:條件判斷=op=賦值、計算并賦值,op可以是+、–、*、/、>>、<<、&、^、|、%,或**。在公式節(jié)點中可以選用的函數(shù)可以在其幫助文件中找到第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——用公式節(jié)點實現(xiàn)復(fù)雜函數(shù)
在畫波形圖時,如果用常規(guī)的波形圖或者波形圖表,則橫軸是從0開始的,如果想畫y關(guān)于x的圖像,或者說是非均勻采樣的圖像,則要用XY圖或者ExpressXY圖,關(guān)于這些圖形控件的詳細(xì)說明請參考第5章相關(guān)內(nèi)容。第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5反饋節(jié)點
“反饋節(jié)點”的基本功能與移位寄存器是相似的,它的優(yōu)點在于可以節(jié)省空間,使程序看上去更緊湊。用反饋節(jié)點實現(xiàn)前N項求和第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5變量局部變量全局變量共享變量第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5局部變量程序內(nèi)部傳遞數(shù)據(jù)作為控制量向其它對象傳遞數(shù)據(jù)作為顯示量接收其它對象傳遞過來的數(shù)據(jù)局部變量創(chuàng)建方法1局部變量創(chuàng)建方法2輸入/顯示轉(zhuǎn)換第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——用局部變量傳遞數(shù)據(jù)
局部變量只能在程序內(nèi)部傳遞數(shù)據(jù)第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5全局變量局部變量——程序內(nèi)部傳遞數(shù)據(jù)全局變量——程序間傳遞數(shù)據(jù)全局變量創(chuàng)建方法1全局變量創(chuàng)建方法2第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5實例——用全局變量傳遞數(shù)據(jù)
用全局變量實現(xiàn)程序間數(shù)據(jù)傳遞第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5禁用結(jié)構(gòu)程序框圖禁用結(jié)構(gòu)——類似于C語言中的/*……*/,可用于大段地注釋程序禁用結(jié)構(gòu)是從LabVIEW8中開始新增的功能,用來控制程序是否被執(zhí)行。
條件禁用結(jié)構(gòu)——類似于C語言中通過宏定義來實現(xiàn)條件編譯第4章 LabVIEW中的程序結(jié)構(gòu)2023/2/5綜合實例1——求100以內(nèi)能被3整除的自然數(shù)和
用For循環(huán)確定數(shù)據(jù)范圍用“商與余數(shù)”VI實現(xiàn)條件條件判斷用“條件結(jié)構(gòu)”實現(xiàn)數(shù)據(jù)選擇第4章 LabVIEW中的程序結(jié)構(gòu)2023/
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 土地轉(zhuǎn)讓協(xié)議書2023標(biāo)準(zhǔn)版
- 顱縫分離病因介紹
- 2024賓館轉(zhuǎn)讓協(xié)議
- 雙方協(xié)議離婚嗎
- 中考?xì)v史基礎(chǔ)知識第7講中華民族的抗日戰(zhàn)爭
- (2024)果蔬交易市場建設(shè)項目可行性研究報告(一)
- 湖南省永州市道縣2024-2025學(xué)年八年級上學(xué)期期中生物學(xué)試題(原卷版)-A4
- 2024秋新滬科版物理八年級上冊課件 第一章 運動的世界 第一節(jié) 動與靜 1
- 管理評審會議材料匯編培訓(xùn)課件
- 熱工基礎(chǔ)模擬習(xí)題
- 新教科版六年級上冊科學(xué)全冊知識點(期末總復(fù)習(xí)資料)
- 《靜女》《涉江采芙蓉》對比閱讀教學(xué)設(shè)計 2023-2024學(xué)年統(tǒng)編版高中語文必修上冊
- 高速鐵路概論 課件 第3章 高速鐵路車站
- 2024-2030年水培蔬菜行業(yè)市場發(fā)展分析及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2024年部編版語文五年級上冊全冊單元檢測題及答案(共8套)
- 集成電路制造工藝 課件 6光刻工藝2
- 建筑邊坡工程施工質(zhì)量驗收標(biāo)準(zhǔn)
- 2020海灣JTW-LD-GST85B纜式線型感溫火災(zāi)探測器
- 微測網(wǎng)題庫完整版行測
- 2024中華人民共和國農(nóng)村集體經(jīng)濟組織法詳細(xì)解讀課件
- 2024年貴州省中考理科綜合試卷(含答案)
評論
0/150
提交評論