Eventos#

Introducción#

Un evento es una señal de inicio para un conjunto de bloques. Los bloques de eventos en VEXcode permiten que diferentes conjuntos de bloques comiencen en diferentes momentos. Por ejemplo, un conjunto de bloques puede comenzar cuando comienza el proyecto, y otro puede comenzar cuando se envía una señal desde otro lugar del proyecto.

  • when timer: ejecuta una pila de bloques después de que el temporizador exceda un tiempo especificado.

  • cuando comenzó: ejecuta la pila de bloques adjunta cuando comienza el proyecto.

  • cuando recibo un evento: ejecuta la pila de bloques adjunta cuando se transmite un evento específico.

  • broadcast event: activa un evento sin pausar otros bloques.

  • transmitir evento Y esperar: activa un evento y pausa otros bloques hasta que se completen las tareas del evento.

cuando el temporizador#

El bloque Hat * * When Timer * * ejecuta la pila de bloques adjunta después de un período de tiempo especificado.

El bloque de sombrero del temporizador de cuándo.#
cuando temporizador > [1] segundos

Parámetros

Descripción

tiempo

Especifica el número de segundos antes de que comience la pila de bloques adjunta. Acepta números enteros y decimales.

Ejemplo

cuando temporizador > [2] segundos
[Move the 6-Axis Arm after 2 seconds.]
incrementar posición de [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶

cuando se inició#

El bloque al iniciarse ejecuta los bloques que se encuentran debajo cuando comienza el proyecto. Todo proyecto necesita al menos un bloque al iniciarse; sin él, los bloques inferiores no se ejecutarán. Se pueden usar varios bloques al iniciarse para ejecutar diferentes conjuntos de bloques simultáneamente.

El bloque de sombreros When started.#
cuando inicie

Parámetros

Descripción

Este bloque no tiene parámetros.

Ejemplo

cuando inicie
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
incrementar posición de [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶

Parámetros

Descripción

Este bloque no tiene parámetros.

cuando recibo el evento#

El bloque when I receive event Hat comienza a ejecutar los bloques debajo de él cuando una señal con el mismo nombre de evento es broadcast.

El bloque When I receive event hat.#
cuando reciba [my_event v]

Parámetros

Descripción

evento

El evento a desencadenar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo.

Ejemplo

cuando inicie
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar posición de [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmitir [move_y v]

cuando reciba [move_y v]
imprimir [Received!] en consola ◀ y mover cursor a la siguiente fila
incrementar posición de [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶

evento de difusión#

El bloque de pila evento de difusión envía una señal que inicia cualquier bloque cuando recibo evento con el mismo nombre de evento. El resto de los bloques del proyecto siguen ejecutándose sin esperar a que esos bloques finalicen.

El bloque de pila de eventos de difusión.#
transmitir [message1 v]

Parámetros

Descripción

evento

El evento a desencadenar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo.

Ejemplo

cuando inicie
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar posición de [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmitir [move_y v]

cuando reciba [move_y v]
imprimir [Received!] en consola ◀ y mover cursor a la siguiente fila
incrementar posición de [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶

transmitir evento y esperar#

El bloque de pila * * broadcast event and wait * * envía una señal que inicia cualquier bloque when I receive event con el mismo nombre de evento. El resto del proyecto esperará a que el evento transmitido termine de ejecutarse.

El evento de difusión y el bloque de pila de espera.#
transmitir [message1 v] y esperar

Parámetros

Descripción

evento

El evento a desencadenar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo.

Ejemplo

cuando inicie
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar posición de [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmitir [move_y v] y esperar
imprimir [Finished moving!] en consola ◀ y mover cursor a la siguiente fila


cuando reciba [move_y v]
imprimir [Received!] en consola ◀ y mover cursor a la siguiente fila
incrementar posición de [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶