Strona 1 z 1
Struktura EVENT
: 15 lis 2008 12:46
autor: siewnikdr
Witam wszystkich. Jestem nowy i dopiero zaczynam przygodę z LabView i mam pewien problem ze strukturą EVENT.
Chcę aby LAMPKA po ustawieniu PRZEŁĄCZNIKA w pozycję GÓRA zaświeciła się a następnie po ustawieniu PRZEŁĄCZNIKA w pozycję DÓŁ zgasła. Próbowałem na różne sposoby ale nigdy mi to dobrze nie wychodziło, może, na pewno robie coś źle dlatego proszę was o pomoc.
Umieściłem plik .lvi i zdjęcie ze strukturą programu, za pomoc z góry dziekuję
Struktura EVENT
: 15 lis 2008 13:43
autor: Jarq
Żeby nie dawać od razu rozwiązania powiem tyle - włącz sobie execution highlight i wykonuj program krok po kroku.
Wykonywanie zatrzyma się na evencie i nie pójdzie dalej bo zdarzenie key up i key down nie wystąpiło (key up i key down są eventami klawiatury)
Zmień zdarzenie na Value Change.
Struktura EVENT
: 15 lis 2008 15:28
autor: siewnikdr
Niestety nie mogę użyć dwa razy zdarzenia EVENT do jednego przycisku... i nie wiem jak uruchomic execution highlight...
Re: Struktura EVENT
: 15 lis 2008 15:38
autor: Pitol
siewnikdr pisze:Niestety nie mogę użyć dwa razy zdarzenia EVENT do jednego przycisku
zamiast podpinania stałych T/F do 'lampki' wystarczy w event Value Change podpiąć NewVal do 'lampki'... dzięki temu oba działania które chcesz wykonać będą w jednym event
siewnikdr pisze:
i nie wiem jak uruchomic execution highlight...
o tuuu jest ;)
Re: Struktura EVENT
: 15 lis 2008 15:40
autor: AzazeL
Najlepiej zrobić to tak jak w załączniku.
Zdarzenia Key up i key down są zdarzeniami z klawiatury, nawet jeżeli doczepisz skrót klawiaturowy do przełącznika to i tak twoje rozwiązanie będzie złe (dioda będzie miała wartość true tylko w czasie naciśnięcia przycisku).
Struktura EVENT
: 15 lis 2008 15:48
autor: siewnikdr
Dziękuje... prosta sprawa a ja się tak męczyłem...
Struktura EVENT
: 22 gru 2008 16:00
autor: thaiski
Witam
Podlacze sie pod watek. Pytanie takie: w skrypcie do kursu przygotowujacym do certyfikacji w opisie eventow mamy napisane ze event jest mniej pamiecio/procesoro i cos tam jeszcze żerny. Wynika z tego ze w innych przypadkach np. case structure w petli LV zuzywa znacznie wiecej zasobow pamieci procesora itd. I teraz pytanie jak jest naprawde bo przeciez i w przypadku eventu i w przypadku case strructure obie te struktury sa w petli i obie te struktury testuja panel usera czy aby nie zaszlo tam jakies zdarzenie. Na czym polega roznica ?
Dzieki za pomoc
Struktura EVENT
: 22 gru 2008 18:20
autor: Mikrobi
Jeśli mowimy o CASE i EVENT to mamy dwa podejścia: 1. pooling (CASE) czyli petla while pracuje ciągle ze względu na czytanie w każdej iteracji kontrolek i podejmowanie decyzji o przejściu do konkretnego stanu.
2. programowanie oparte na zdarzeniach (EVENT) - pętla zatrzymuje się i czeka z wykonaniem kodu na strukturę EVENT nie konsumując czasu procesora.
Jeśli pojawia się zdarzenie, które zostalo zdefiniowane w edytorze zdarzeń struktury event, kod przypisany do tego zdarzenia zostaje wykonany, sprawdzony zostaje warunek zatrzymania pętli while i pętla idzie do nastepnej iteracji.
Jak to działa pod spodem?
Na styku LabVIEW - system operacyjny przesyłane są w obie strony tak jak to od każdego innego programu - informacje o zdarzeniach.
Tutaj już jest mechanizm odpowiedzialny za współdziałanie systemu operacyjnego z uruchamianymi w nim programami - pewien rodzaj komunikacji o zdarzeniach związanych z obiektami w programie. Taka komunikacja zachodzi w sposób ciągly, ma swój wątek w systemie operacyjnym, którym płyną wszystkie dane o zdarzeniach. Dla struktury event przesyłane są tylko te które zostały dla niej zdefiniowane, np wjazd kursora, aktywacja obiektu itd.
Myslę że programiści obiektowi od systemów operacyjnych wypowiedzili by się bardziej fachowo - taka jest ogólnie zasadza dzialania mechanizmu struktury event.