Wydarzenia#
Wstęp#
Zdarzenie to sygnał startowy dla zestawu bloków. Bloki zdarzeń w kodzie VEX 123 umożliwiają różnym zestawom bloków rozpoczęcie działania w różnym czasie. Na przykład, jeden zestaw bloków może rozpocząć działanie wraz z rozpoczęciem projektu, a inny może rozpocząć działanie, gdy sygnał zostanie wysłany z innego miejsca w projekcie.
Poniżej znajduje się lista dostępnych bloków:
po uruchomieniu – Uruchamia dołączony stos bloków po uruchomieniu projektu.
kiedy odbieram zdarzenie – Uruchamia dołączony stos bloków, gdy zostanie nadane określone zdarzenie.
wydarzenie rozgłoszeniowe – Wyzwala zdarzenie bez wstrzymywania innych bloków.
wydarzenie rozgłaszane i oczekiwanie – Wyzwala zdarzenie i wstrzymuje inne bloki do momentu zakończenia zadań związanych ze zdarzeniem.
kiedy zaczęto#
Blok when started rozpoczyna uruchamianie bloków poniżej w momencie rozpoczęcia projektu. Każdy projekt potrzebuje co najmniej jednego bloku when started — bez niego bloki poniżej nie zostaną uruchomione. Można użyć wielu bloków when started, aby uruchomić różne zestawy bloków jednocześnie.
gdy uruchomiony :: hat events
Parametry |
Opis |
|---|---|
Ten blok nie ma żadnych parametrów. |
Przykład
gdy uruchomiony :: hat events
[Drive forward then stop.]
jedź [do przodu v]
czekaj (2) sekund
zatrzymaj jazdę
kiedy odbieram zdarzenie#
Blok gdy odbieram zdarzenie rozpoczyna uruchamianie bloków znajdujących się poniżej, gdy sygnał o tej samej nazwie zdarzenia ma wartość broadcast.
gdy otrzymam [my_event v]
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie, które ma zostać wyzwolone. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub usunąć je za pomocą bloków broadcast event i broadcast event and wait. |
Przykład
gdy uruchomiony :: hat events
[Turn LED green while the robot moves.]
nadaj [square_drive v]
świeć [zielony v]
gdy otrzymam [square_drive v] :: hat events
[Move in a square pattern.]
powtórz [4]
jedź [do przodu v] przez [100] [mm v]
skręć [w prawo v] o [90] stopni
wydarzenie transmitowane#
Blok stosu zdarzeń rozgłoszeniowych wysyła sygnał, który uruchamia dowolny blok gdy odbieram zdarzenie o tej samej nazwie zdarzenia. Pozostałe bloki w projekcie działają bez oczekiwania na zakończenie działania tych bloków.
nadaj [message1 v]
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie do wyzwolenia. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub je usunąć. |
Przykład
gdy uruchomiony :: hat events
[Turn LED green while the robot moves.]
nadaj [square_drive v]
świeć [zielony v]
gdy otrzymam [square_drive v] :: hat events
[Move in a square pattern.]
powtórz [4]
jedź [do przodu v] przez [100] [mm v]
skręć [w prawo v] o [90] stopni
wydarzenie nadawane i czekanie#
Blok stosu broadcast event and wait wysyła sygnał, który uruchamia dowolny blok when I receive event o tej samej nazwie zdarzenia. Reszta projektu będzie czekać na zakończenie działania rozgłaszanego zdarzenia.
nadaj [message1 v] i czekaj
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie do wyzwolenia. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub je usunąć. |
Przykład
gdy uruchomiony :: hat events
[Turn LED green after robot is done moving.]
nadaj [square_drive v] i czekaj
świeć [zielony v]
gdy otrzymam [square_drive v] :: hat events
[Move in a square pattern.]
powtórz [4]
jedź [do przodu v] przez [100] [mm v]
skręć [w prawo v] o [90] stopni