<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > labview循環(huán)-移位寄存器妙用

labview循環(huán)-移位寄存器妙用

作者: 時(shí)間:2017-01-06 來(lái)源:網(wǎng)絡(luò ) 收藏

1. For循環(huán)位于函數→編程→結構→For循環(huán),如圖:

從圖中可以看到,For循環(huán)有兩個(gè)端子
計數端子:要執行循環(huán)的次數,可用于For循環(huán)內部的循環(huán)計數
重復端子:已執行循環(huán)的次數,可用于For循環(huán)內部的重復計數
For循環(huán)應用舉例:產(chǎn)生10個(gè)隨機數,并把最后一個(gè)顯示出來(lái)。
步驟如下:
1. 放置一個(gè)數值顯示控件到前面板,并改名為隨機數。
2. 放置For循環(huán)到程序框圖,如圖:

3.放置隨機數函數到程序框圖,并連線(xiàn)4.計數端子上單擊右鍵,選擇創(chuàng  )建常量,并輸入10,如圖:

5.運行程序,便可在前面板上看到結果。 6.因為程序的運行的速度非???,我們無(wú)法一個(gè)一個(gè)地看清所產(chǎn)生的10個(gè)隨機數,我們可以在程序框圖中添加時(shí)間延遲控件。它位于函數→編程 →定時(shí)→時(shí)間延遲,如圖:

7. 放置它到程序框圖上,選擇延遲的時(shí)間,即兩次循環(huán)之間的時(shí)間間隔。如圖:

8. 將時(shí)間設置為1.000,點(diǎn)擊確定即可,再運行程序就可從前面板上看到所產(chǎn)生的隨機數了。

移位寄存器

移位寄存器用于For循環(huán)或While循環(huán)中從一個(gè)迭代傳輸數據到下一個(gè)迭代,它由循環(huán)垂直邊框上一對反向相反的端子組成,在邊框上單擊右鍵,選擇添加移位寄存器,就可進(jìn)行添加。如圖:

右端子(帶向上箭頭的矩形)在每完成一次迭代后存儲數據,移位寄存器將上次迭代的存儲數據在下一次迭代開(kāi)始時(shí)移動(dòng)到左端子(具有向下箭頭的矩形)上。移位寄存器可存儲任何數據類(lèi)型,包括數字,布爾,字符串和數組,但連接到同一個(gè)寄存器端子上的數據必須是同一類(lèi)型。移位寄存器的類(lèi)型與第一個(gè)連接到其端子之一的對象數據類(lèi)型相同。

下面是1+2+3+4+…+100的程序,如圖:

說(shuō)明:進(jìn)行第一次運算的是0+0,For循環(huán)中的重復端子是從0開(kāi)始計數,移位即寄存器在沒(méi)有初始化的情況下,默認的數值是0,所以第一次運算的是0+0,第二次運算的是寄存器的0與重復端子的1相加,所以循環(huán)要進(jìn)行101次。而計數端子輸出的數據始終是101。
移位寄存器的初始化:移位寄存器的初始化是非常必要的,因為只要用戶(hù)不退出VI,移位寄存器便可記錄上次運算完時(shí)的結果,所以上面的程序在第二次執行時(shí)輸出的結果不是5050,而是10100!添加初始化即可,如圖:

下面在舉幾個(gè)復雜一點(diǎn)的例子。

例一:計算一組隨機數的最大值和最小值

  1. 新建一個(gè)VI,在前面板上放置一個(gè)波形圖標,它位于新式→圖形→波形圖表,用它來(lái)記錄產(chǎn)生的隨機數。同時(shí)在前面板上放置兩個(gè)數值顯示控件“最大值”和“最小值”,用來(lái)顯示隨機數中的最大值和最小值。
  2. 在程序框圖中,放置一個(gè)For循環(huán),設置循環(huán)次數為50次。單擊邊框選擇添加兩個(gè)移位寄存器,分別初始化為0和1。
  3. 放置隨機數函數和最大最小值函數與程序框圖中,其中最大最小值函數位于編程→比較→最大值與最小值。然后連線(xiàn)。如圖:

運行,便可在前面板上看到結果,如圖:

例二:計算

  1. 在前面板上放置一個(gè)數值輸入控件“階次n”和一個(gè)數值顯示控件“求和結果”
  2. 在程序框圖上放置兩個(gè)For循環(huán)嵌套結構,外層循環(huán)的計數端口與“階次n”連接,輸出是各個(gè)數的階乘所組成的一個(gè)數組。它的重復端子加1作為內層循環(huán)的循環(huán)次數,內層循環(huán)利用一個(gè)移位寄存器實(shí)現階乘運算,移位寄存器的初始值設為1。
  3. 同樣在程序框圖的右邊在放置一個(gè)For循環(huán)結構,它的計數端子沒(méi)有任何連接數據,使用的是自動(dòng)索引功能。這個(gè)循環(huán)的作用是對由階乘所組成的一個(gè)數組進(jìn)行索引,對索引出的各個(gè)元素進(jìn)行求和計算,最后將計算結果輸出給“求和結果”。
  4. 完成連線(xiàn),如圖:

運行結果如圖:

例三:計算自然對數中底數e的近似值。

算法:

步驟:

  1. 新建一個(gè)VI,打開(kāi)前面板,添加兩個(gè)數字顯示控件,分別表示”近似值e”和“臨界階次N”。
  2. 切換到程序框圖,放置一個(gè)While循環(huán),將條件端子的條件改為“真時(shí)停止”。在它內部再放置一個(gè)For循環(huán),計數端子與While循環(huán)結構的重復端子加1后連接。右擊For循環(huán)邊框,添加移位寄存器,并初始化為1,For循環(huán)結構的功能是計算各個(gè)數的階乘。
  3. 計算各個(gè)數階乘的倒數,添加倒數函數,它位于函數→編程→數值→倒數。
  4. 添加比較函數,將它的階乘的倒數與10^-5比較,比較結果連接到While循環(huán)結構的條件端子上,如果小于則返回“真”,停止循環(huán),否則返回“假”繼續循環(huán)。
  5. 由于While循環(huán)默認的是不能夠自動(dòng)索引功能,而程序中需要累加保存每次計算的階乘,這就需要在輸出通道上選擇“啟用索引”,實(shí)現自動(dòng)索引,將各個(gè)元素累加成為一維數組。
  6. 在程序框圖右邊再添加一個(gè)For循環(huán),它的功能是進(jìn)行自動(dòng)索引求和,需要主機的是它的移位寄存器被初始化為1,這是由近似算法所決定的。將輸出結果送給“近似值e”。
  7. 完成連線(xiàn),并運行程序。如圖:

運行結果,如圖:

例四:實(shí)現對隨機數進(jìn)行平滑濾波。通過(guò)對4個(gè)連續的隨機數求其平均值來(lái)實(shí)現。

  1. 新建一個(gè)VI,在前面板上放置兩個(gè)波形圖表,一個(gè)為“原始波形”,一個(gè)為“濾波后波形”。
  2. 在程序框圖上放置一個(gè)While循環(huán),在邊框添加一個(gè)移位寄存器,然后在左邊的寄存器上單擊右鍵,選擇“添加元素”,一共添加3個(gè)。如圖:
  3. 添加隨機數產(chǎn)生函數,并添加符合運算,將連續產(chǎn)生的4個(gè)隨機數相加,相加的結果除以4。
  4. 放置循環(huán)定時(shí)函數,定義循環(huán)時(shí)間為100ms。
  5. 完成連線(xiàn),在While循環(huán)的條件端子處添加輸入控件。如圖:

運行結果:


上一頁(yè) 1 2 下一頁(yè)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>