目前是利用LabVIEW來控制一平台,利用廠商已寫好的subvi來透過RS-232溝通,當平台移動時會回傳一個"."的字串,情形是當平台移動停止時會傳一個L的字串,當接收到此字串我才能繼續執行下一步,所以我必須使用while來連續擷取回傳值,直到"L"的字串出現。
但是若是有緊急狀況發生時,我希望能利用程式端下指令使平台停止,平台的停止指令是字串"b",試過了幾種發法,最後發現是被while偵測訊號部分咬住了,我必須等到while的部分結束後才能發送訊號。
不知有沒有方法可以解決此問題,第一次發文如有不清楚的部分請包函一下,感謝。![]()
您在可以第三個frame的while裡面,用event struture包起來,
原本while loop裡面的東西丟到timeout event, 時間給50,
再新增一個event value change(ex : A button),為平台的停止指令:"b"
當按下A button會觸發event value change送出"b",
沒下按鍵時, 則一直執行timeout event,(連續擷取回傳值,直到"L"的字串出現)...


garyO40184.6143402778
你迴圈的停止條件現在只有一個,所以,你可以用邏輯OR來增加另一個停止條件。
類似底下這種接法:

<span =bold>garyO您真的太厲害了,目前已經可正常執行了,感謝。不過我到現在還沒把法把Event迴圈摸熟,不知有沒有這方面的教學。不過再次謝謝<span =bold>garyO幫我解決了這次的問題,謝謝!
哈哈
我也只會這一點皮毛在這個產業混口飯吃而已
關於event, 您可搜尋此討論區 可得到很多資訊