labview教程之如何實現(xiàn)內(nèi)存空間共享
輸入更新(開關(guān),模擬量)--->寫入共享內(nèi)存------>程序處理------>輸出更新(讀共享內(nèi)存,繼電器,模擬量輸出,寫入硬件設(shè)備)
LABVIEW的共享內(nèi)存是通過AE結(jié)合FUNCTINGLOBAL實現(xiàn)的.
我們看一下它的實現(xiàn)過程.
首先定義了AE的四個動作,INITREADWRITEREADALL
然后定義的四個選擇項,分別對應(yīng)離散輸入,線圈,輸入寄存器,保持寄存器(MODBUS定義)
對應(yīng)四中數(shù)據(jù),分別在INIT的CASE中定義了長度為65536的數(shù)組,實際上定義了四個共享內(nèi)存區(qū)
上圖是讀離散性輸入的CASE,其他分別是讀COILS,INPUTREG,HOLDINGREG
其它寫的CASE類似.
這樣,我們在LABVIEW中任何位置,包括子VI,對這四個共享內(nèi)存空間進(jìn)行讀寫操作,實現(xiàn)的數(shù)據(jù)交換的功能.
評論