在循環(huán)結(jié)構(gòu)中經(jīng)常用到一種數(shù)據(jù)處理方式,即把第i次循環(huán)執(zhí)行的結(jié)果作為第i+1次循環(huán)的輸入,LabVIEW循環(huán)結(jié)構(gòu)中的移位寄存器可以實(shí)現(xiàn)這種功能。在循環(huán)結(jié)構(gòu)框左側(cè)或右側(cè)邊框單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“添加移位寄存器”,添加移位寄存器,如圖1所示。
圖2和圖3分別顯示為For循環(huán)結(jié)構(gòu)和While循環(huán)結(jié)構(gòu)添加移位寄存器后的結(jié)果移位寄存器在循環(huán)結(jié)構(gòu)框的左右兩側(cè)是成對(duì)出現(xiàn)的,一個(gè)寄存器右側(cè)的端子只能有一個(gè)元素,而左側(cè)的端子可以有多個(gè)元素。移位寄存器的顏色和輸入數(shù)據(jù)類型的系統(tǒng)顏色相同,在數(shù)據(jù)為空(沒有輸入)時(shí)是黑色。
圖1 添加移位寄存器
圖2 For循環(huán)結(jié)構(gòu)中的移位寄存器
圖3 While循環(huán)結(jié)構(gòu)中的移位寄存器
例:利用循環(huán)結(jié)構(gòu)計(jì)算1+2+3+,¨+99+100的結(jié)果。
· 第1步:在程序框圖中,放置一個(gè)For循環(huán)結(jié)構(gòu)框,并在循環(huán)結(jié)構(gòu)中添加一個(gè)移位寄存器,如圖4所示。
· 第2步:添加循環(huán)程序。設(shè)置i+1作為加法器的一個(gè)輸入(循環(huán)次數(shù)i從o開始計(jì)數(shù)),移位寄存器左側(cè)端子作為加法器的另一個(gè)輸入,輸出和移位寄存器右側(cè)端子相連,如圖5所示。最后結(jié)果輸出循環(huán)框。注意,此時(shí)只需要輸出最后一次循環(huán)的結(jié)果,不啟動(dòng)自動(dòng)索引功能。
圖4 For循環(huán)結(jié)構(gòu)框
圖5 For循環(huán)循環(huán)程序
· 第3步:設(shè)置循環(huán)次數(shù),輸出結(jié)果。循環(huán)次數(shù)N設(shè)置為100,將最后的結(jié)果輸出至前面板的顯示控件“結(jié)果”,完整的程序如圖6所示。注意,此時(shí)只需要輸出最后一次循環(huán)的結(jié)果,不啟動(dòng)自動(dòng)索引功能。
· 第4步:顯示結(jié)果。運(yùn)行程序,前面板結(jié)果如圖7所示。
圖6 完整程序框圖
圖7 前面板結(jié)果
在移位寄存器上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“添加元素”可為左側(cè)端子添加一個(gè)元素;選擇“刪除元素”刪除一個(gè)元素;選擇“刪除全部”則刪除整個(gè)移位寄存器。在一個(gè)循環(huán)框中可以添加多個(gè)移位寄存器,如圖8所示。
圖8 移位寄存器元素
移位寄存器左側(cè)端子的元素分別對(duì)應(yīng)前幾次循環(huán)寄存器的輸入。
如圖9所示的程序中,元素1對(duì)應(yīng)前一次循環(huán)寄存器的輸入99,元素2對(duì)應(yīng)前兩次的循環(huán)的輸入98,元素3對(duì)應(yīng)前三次循環(huán)的輸入97。前面板的結(jié)果如圖10所示。
圖9 多元素移位寄存器
在一個(gè)循環(huán)框中可以添加多個(gè)移位寄存器,圖11所示為多個(gè)寄存器的程序。
圖10 前面板結(jié)果
圖11 多個(gè)移位寄存器
來源:ks997次