LED sensível ao toque#

Introdução#

O VEX IQ Touch LED funciona como luz e botão. Pode brilhar em diferentes cores para fornecer feedback, como sinalizar que o robô está pronto, mostrar qual o modo selecionado ou combinar com uma cor detetada por outro sensor. Além disso, deteta quando é tocado, permitindo iniciar ou alterar o comportamento do robô com um simples toque.

Construtor de Classes#

touchled( 
  int32_t index );

Destrutor de classes#

Destrói o objeto touchled e liberta os recursos associados.

virtual ~touchled();

Parâmetros#

Parâmetro

Tipo

Descrição

index

int32_t

A Smart Port à qual o LED Touch está ligado, escrita como PORTx, em que x é o número da porta (por exemplo, PORT1).

Exemplo#

// Create a touchled instance in Port 1
touchled TouchLED1 = touchled(PORT1);

Funções de membro#

A classe touchled inclui as seguintes funções membro:

  • pressing – Retorna se o LED de toque está a ser premido.

  • setColor – Define a cor do LED de toque.

  • setFade – Define a velocidade com que as cores se irão desvanecer umas para as outras.

  • setBrightness – Define o brilho do LED de toque.

  • pressed – Regista uma função a ser chamada quando o LED de toque é premido.

  • released – Regista uma função a ser chamada quando o LED de toque é libertado.

  • on – Liga o LED sensível ao toque.

  • off – Desliga o LED táctil.

  • setBlink – Alterna o LED de toque ligado e desligado indefinidamente.

  • installed – Retorna se o LED de toque está ligado ao cérebro.

Antes de chamar qualquer função membro de <code>touchled</code> <code>touchled</code> 1), deve ser criada uma instância de touchled 3 touchled , como se mostra abaixo:

/* This constructor is required when using VS Code.
Touch LED configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a Touch LED instance in Port 1
touchled TouchLED1 = touchled(PORT1);

pressing#

Retorna se o TouchLED estiver a ser pressionado.

Available Functions
bool pressing();

Parameters

Esta função não aceita qualquer parâmetro.

Return Values

Retorna um valor booleano bool indicando se o LED táctil está a ser pressionado.

  • true — The Touch LED is being pressed.
  • false — The Touch LED is not being pressed.

setColor#

Define a cor do LED do sensor de toque.

Available Functions

1 — Define a cor do LED de toque utilizando vex::color.

void setColor( 
  vex::color  color );

2 — Sets LED colors using a colorType.

void setColor( 
  colorType   color );

Parameters

Parâmetro

Tipo

Descrição

color

colorType

Uma cor válida:

  • blue
  • blue_green
  • blue_violet
  • green
  • orange
  • purple
  • red
  • red_orange
  • red_violet
  • violet
  • white
  • yellow
  • yellow_green
  • yellow_orange
  • colorType::none
  • black
  • transparent

color

vex::color

Uma cor personalizada válida.

Return Values

Esta função não devolve qualquer valor.

setFade#

Define a definição de transição gradual do sensor LED de toque. O sensor LED de toque mudará para novas cores utilizando o tipo de transição gradual.

Available Functions
void setFade(
  fadeType  speed );

Parameters

Parâmetro

Tipo

Descrição

speed

fadeType

A velocidade do fade será definida para:

  • fast
  • off — sem fade
  • slow

Return Values

Esta função não devolve qualquer valor.

setBrightness#

Define o brilho do LED sensível ao toque.

Available Functions
void setBrightness(
  uint32_t  value );

Parameters

Parâmetro

Tipo

Descrição

value

uint32_t

O brilho do LED sensível ao toque pode ser definido em percentagem.

Return Values

Esta função não devolve qualquer valor.

pressed#

Regista uma função a ser chamada quando o LED sensível ao toque é premido.

Available Functions
void pressed( void (* callback)(void) );

Parameters

Parâmetro

Tipo

Descrição

callback

void (*)(void)

Um ponteiro para uma função que será chamada quando o LED sensível ao toque for premido. A função não deve receber parâmetros e deve devolver void.

Return Values

Esta função não devolve qualquer valor.

Examples

Defina a função de callback (fora de int main())

// Display a message when LED is pressed
void LEDPressed() {
  Brain.Screen.print("LED pressed");
}

Registe o callback dentro de int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run LEDPressed when the value of the Touch LED is pressed.
  TouchLED1.pressed(LEDPressed);
}

released#

Regista uma função a ser chamada quando o LED sensível ao toque for libertado.

Available Functions
void released( void (* callback)(void) );

Parameters

Parâmetro

Tipo

Descrição

callback

void (*)(void)

Um ponteiro para uma função que será chamada quando o LED táctil for libertado. A função não deve receber parâmetros e deve devolver void.

Return Values

Esta função não devolve qualquer valor.

Examples

Defina a função de callback (fora de int main())

// Display a message when LED is released
void LEDReleased() {
  Brain.Screen.print("LED released");
}

Registe o callback dentro de int main()

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run LEDReleased when the value of the Touch LED is released.
  TouchLED1.released(LEDReleased);
}

on#

Liga o LED do sensor TouchLED utilizando cores e um nível de brilho predefinido.

Available Functions

1 — Define a cor do LED utilizando vex::color.

void on( 
  vex::color    color, 
  uint32_t      brightness = 100 );

2 — Define a cor do LED utilizando a tonalidade.

void on( 
  uint32_t hue, 
  uint32_t brightness = 100);

3 — Define a cor do LED por valores RGB.

void on( 
  uint8_t   red, 
  uint8_t   green, 
  uint8_t   blue, 
  uint32_t  brightness = 100);

Parameters

Parâmetro

Tipo

Descrição

color

vex::color

Uma cor válida:

  • blue
  • blue_green
  • blue_violet
  • green
  • orange
  • purple
  • red
  • red_orange
  • red_violet
  • violet
  • white
  • yellow
  • yellow_green
  • yellow_orange
  • colorType::none
  • black
  • transparent

brightness

uint32_t

Opcional. O nível de brilho do LED em percentagem, com um valor padrão de 100.

hue

uint32_t

A tonalidade do LED. Este também pode ser representado por um valor hexadecimal (0x000000).

red

uint8_t

Um número inteiro que representa o valor de vermelho do LED.

green

uint8_t

Um número inteiro que representa o valor de verde do LED.

blue

uint8_t

Um número inteiro que representa o valor de azul do LED.

Return Values

Esta função não devolve qualquer valor.

off#

Desliga o LED sensível ao toque.

Available Functions
void off( void );

Parameters

Esta função não recebe qualquer parâmetro.

Return Values

Esta função não devolve qualquer valor.

installed#

Retorna se o LED sensível ao toque está ligado.

Available Functions
bool installed();

Parameters

Esta função não recebe qualquer parâmetro.

Return Values

Retorna um valor booleano indicando se o LED sensível ao toque está ligado:

  • true — The sensor is connected and responding.
  • false — The sensor is not connected or not detected.