一、實(shí)驗(yàn)環(huán)境:Windows10 ,LabVIEW2011
二、實(shí)驗(yàn)?zāi)康模河靡粋€(gè)布爾控件同時(shí)控制多個(gè)while循環(huán)
三、實(shí)驗(yàn)內(nèi)容及步驟:
1、項(xiàng)目實(shí)現(xiàn)
1)打開LabVIEW,在程序框圖中放置兩個(gè)While函數(shù)框架,如圖3.1.1所示;

2)選中左下角的藍(lán)色標(biāo)志,右擊“創(chuàng)建輸入控件”,如下圖3.1.2所示,建立完成后的效果如圖3.1.3所示


3)選中右下角紅色標(biāo)志,右擊“創(chuàng)建輸入控件”,如下圖3.1.4所示,建立完成后的效果如圖3.1.5所示


4)加入“等待下一個(gè)整數(shù)倍毫秒”,加入方法如下圖3.1.6所示,并為之創(chuàng)建常量,建立完成后的效果如圖3.1.7所示
“等待下一個(gè)整數(shù)倍毫秒”:一個(gè)定時(shí)函數(shù),等待指定長度的毫秒數(shù),并返回毫秒計(jì)時(shí)器的值,該函數(shù)用于同步各操作。


此時(shí)的前面板顯示如圖3.1.8所示

5)回到程序框圖,選中第一個(gè)while循環(huán)的停止鍵,右擊創(chuàng)建局部變量,并將它移至第二個(gè)循環(huán)的框中,刪除第二個(gè)框中的停止鍵,效果如圖3.1.9所示

A)注意:此時(shí)會(huì)報(bào)錯(cuò),是因?yàn)榧t色標(biāo)志和停止鍵的局部變量均為“寫入”
解決辦法:此時(shí)要更換局部變量的屬性,轉(zhuǎn)換為讀取,如圖3.1.10所示

B)注意:此時(shí)會(huì)報(bào)錯(cuò),因?yàn)槭褂昧瞬紶柨丶?chuàng)建了該控件的局部變量,局部變量要求該控件為一個(gè)確定值,而此時(shí)使用了默認(rèn)的機(jī)械動(dòng)作:釋放時(shí)觸發(fā),導(dǎo)致點(diǎn)擊按鈕后控件會(huì)發(fā)生倆次狀態(tài)轉(zhuǎn)換,與局部變量用法不兼容,因此報(bào)錯(cuò)。如圖3.1.11所示
解決辦法:應(yīng)該點(diǎn)擊右鍵選擇屬性或者機(jī)械動(dòng)作,將其改為單擊時(shí)轉(zhuǎn)換或其他只發(fā)生一次屬性改變的機(jī)械動(dòng)作

2、軟件仿真
1)點(diǎn)擊運(yùn)行按鈕,三個(gè)輸出框中的數(shù)字同步跳動(dòng)
2)點(diǎn)擊停止鍵,三個(gè)輸出框的數(shù)字停止跳動(dòng)并歸零
3)右擊“程序生成規(guī)范”,選擇“屬性”,具體設(shè)置如圖3.2.1所示

4)右擊程序生成規(guī)范里面的“Build”,此時(shí)開始編譯該實(shí)驗(yàn),這時(shí)會(huì)報(bào)錯(cuò),如圖3.2.13所示。

錯(cuò)誤原因:不清楚
解決辦法:找到該.h文件,將如圖3.2.14所示的部分注釋掉,

5)重新Build,此時(shí)生成了可執(zhí)行代碼,確保程序沒有語法錯(cuò)誤。圖3.2.15顯示編譯狀態(tài)、圖3.2.16顯示正在編譯的源文件以及編譯成功的代碼占用信息。


3、硬件仿真
1)實(shí)驗(yàn)的程序框圖如圖3.2.11所示,實(shí)驗(yàn)的前面板如圖3.2.12所示


3)
四、實(shí)驗(yàn)結(jié)果:
框圖如圖4.13所示,前面板如圖4.14所示


當(dāng)運(yùn)行時(shí),三個(gè)輸出框同時(shí)運(yùn)行。點(diǎn)擊停止按鈕,三個(gè)輸出框顯示的是一樣的數(shù)字
五、實(shí)驗(yàn)拓展:
六、實(shí)驗(yàn)難點(diǎn)及解決辦法:
1)難點(diǎn):對(duì)函數(shù)位置不熟悉,找不到while函數(shù)框架,之后在如圖6.15所示路徑中找到

2)難點(diǎn):建立局部變量后,連接輸入輸出端時(shí)會(huì)報(bào)錯(cuò)
解決辦法:將局部變量“轉(zhuǎn)換為讀取”,不報(bào)錯(cuò)。
七、實(shí)驗(yàn)不足:
1、軟件編譯時(shí)出現(xiàn)錯(cuò)誤,如圖7.1和圖7.2所示


錯(cuò)誤信息:
[15:40:45] Status: Error
Unexpected error occurred.
[Source: UVSC_OpenConnection Code: 1]
錯(cuò)誤原因:程序生成規(guī)范的Aplication的命名與vi不同
解決辦法:修改Application的名字
2、軟件編譯時(shí)出現(xiàn)錯(cuò)誤,
錯(cuò)誤信息:
[13:29:55] Status: Error
Unexpected error occurred.
[Source: UVSC_OpenConnection.vi-
UVSock_Start_Daemon.vi->UVSock_Start.vi-
UVControl_Start.vi->LEP_RV_PrepareBuild.vi-
LEP_RV_PrepareLaunch.vi-
LEP_RV_OnRebuild.vi中的調(diào)用庫函數(shù)節(jié)點(diǎn) Code: 7]
錯(cuò)誤原因:由于安裝了keil5,版本不對(duì),LabVIEW無法調(diào)動(dòng)相對(duì)應(yīng)的庫
解決辦法:修改keil的版本為
3、實(shí)驗(yàn)時(shí)間花費(fèi)較長,效率低