新聞中心

EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > LabVIEW設(shè)計模型——事件狀態(tài)機(jī)

LabVIEW設(shè)計模型——事件狀態(tài)機(jī)

作者: 時間:2016-12-26 來源:網(wǎng)絡(luò) 收藏
上一篇文章說了說標(biāo)準(zhǔn)狀態(tài)機(jī),這種模型在自動測試系統(tǒng)(ATS)和自動控制系統(tǒng)(ACS)的編程應(yīng)用中應(yīng)用非常方便。因為在ATS和ACS系統(tǒng)運行的過程中幾乎不需要與用戶互動,只要按照事先設(shè)定好的邏輯來判斷程序的走向,直到程序結(jié)束。但是,在大部分桌面應(yīng)用和部分工業(yè)應(yīng)用中,程序都需要和用戶互動。比如說,需要用戶輸入?yún)?shù)、下達(dá)命令甚至判斷程序走向。
如果程序的用戶互動環(huán)節(jié)比較多,用標(biāo)準(zhǔn)狀態(tài)機(jī)來實現(xiàn)就回比較困難,即使實現(xiàn)了也會使程序代碼臃腫、結(jié)構(gòu)混亂。
那么如何來方便的實現(xiàn)狀態(tài)機(jī)與用戶互動的完美結(jié)合呢?那就要用到狀態(tài)機(jī)的一個變種——事件狀態(tài)機(jī)
與標(biāo)準(zhǔn)狀態(tài)機(jī)相比,事件狀態(tài)機(jī)要稍微復(fù)雜一些。他們都包含一個While循環(huán),所不同的是移位寄存器和條件結(jié)構(gòu)換成了用戶定義事件和事件結(jié)構(gòu)。
下面這個黑白棋的小程序就使用了這種事件狀態(tài)機(jī)的設(shè)計模型
程序界面:
主VI:
注冊狀態(tài)事件子VI:



評論


技術(shù)專區(qū)

關(guān)閉