Dotyková LED#

Zavedení#

Dotyková LED dioda VEX IQ Touch je zároveň kontrolka i tlačítko. Může svítit různými barvami a poskytovat tak zpětnou vazbu, například signalizovat, že je robot připraven, ukazovat, který režim je vybrán, nebo shodovat se s barvou detekovanou jiným senzorem. Dokáže také detekovat dotyk, což vám umožní spustit nebo změnit chování robota klepnutím.

Konstruktor třídy#

touchled( 
  int32_t index );

Destruktor tříd#

Zničí objekt touchled a uvolní související zdroje.

virtual ~touchled();

Parametry#

Parametr

Typ

Popis

index

int32_t

Inteligentní port, ke kterému je připojena dotyková LED dioda, zapsaný jako PORTx, kde x je číslo portu (například PORT1).

Příklad#

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

Členské funkce#

Třída touchled obsahuje následující členské funkce:

  • pressing – Vrací, zda je stisknuta dotyková LED.

  • setColor – Nastaví barvu dotykové LED diody.

  • setFade – Nastavuje, jak rychle budou barvy přecházet jedna do druhé.

  • setBrightness – Nastavuje jas dotykové LED diody.

  • pressed – Registruje funkci, která se má volat při stisknutí dotykové LED diody.

  • released – Registruje funkci, která se má volat při uvolnění dotykové LED diody.

  • on – Zapne dotykovou LED.

  • off – Vypne dotykovou LED.

  • setBlink – Střídavě zapíná a vypíná dotykovou LED diodu na dobu neurčitou.

  • installed – Vrací, zda je dotyková LED dioda připojena k Brainu.

Před voláním jakékoli členské funkce typu touchled je nutné vytvořit instanci touchled , jak je znázorněno níže:

/* 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#

Vrací, pokud je dotyková LED dioda aktuálně stisknuta.

Available Functions
bool pressing();

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values

Vrací bool hodnotu bool která indikuje, zda je stisknuta dotyková LED dioda.

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

setColor#

Nastaví LED diodu dotykového LED senzoru na určitou barvu.

Available Functions

1 — Nastaví barvu dotykové LED diody pomocí vex::color.

void setColor( 
  vex::color  color );

2 — Nastaví barvy LED diod pomocí typu colorType s hodnotou .

void setColor( 
  colorType   color );

Parameters

Parametr

Typ

Popis

color

colorType

A valid color:

  • 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

Platná hodnota vlastní barva.

Return Values

Tato funkce nevrací hodnotu.

setFade#

Nastavuje stmívání dotykového LED senzoru. Dotykový LED senzor se změní na nové barvy pomocí typu stmívání.

Available Functions
void setFade(
  fadeType  speed );

Parameters

Parametr

Typ

Popis

speed

fadeType

Rychlost prolínání bude nastavena na:

  • fast
  • off — žádné prolínání
  • slow

Return Values

Tato funkce nevrací hodnotu.

setBrightness#

Nastavuje jas dotykové LED diody.

Available Functions
void setBrightness(
  uint32_t  value );

Parameters

Parametr

Typ

Popis

value

uint32_t

Jas dotykové LED diody, který se má nastavit v procentech.

Return Values

Tato funkce nevrací hodnotu.

pressed#

Registruje funkci, která se má volat při stisknutí dotykové LED diody.

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

Parameters

Parametr

Typ

Popis

callback

void (*)(void)

Ukazatel na funkci, která bude volána při stisknutí dotykové LED diody. Funkce nesmí přijímat žádné parametry a vracet hodnotu void.

Return Values

Tato funkce nevrací hodnotu.

Examples

Definujte callback funkci (mimo int main())

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

Zaregistrujte zpětné volání uvnitř 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#

Registruje funkci, která se má volat po uvolnění dotykové LED diody.

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

Parameters

Parametr

Typ

Popis

callback

void (*)(void)

Ukazatel na funkci, která bude volána po uvolnění dotykové LED diody. Funkce nesmí přijímat žádné parametry a vracet hodnotu void.

Return Values

Tato funkce nevrací hodnotu.

Examples

Definujte callback funkci (mimo int main())

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

Zaregistrujte zpětné volání uvnitř 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#

Zapne LED diodu dotykového senzoru TouchLED pomocí barev a nastaveného jasu.

Available Functions

1 — Nastaví barvu LED diody pomocí vex::color.

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

2 — Nastavuje barvu LED diody pomocí odstínu.

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

3 — Nastavuje barvu LED diody pomocí hodnot RGB.

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

Parameters

Parametr

Typ

Popis

color

vex::color

A valid color:

  • 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

Volitelné. Jas, na který se má LED dioda nastavit, v procentech, výchozí hodnota je 100.

hue

uint32_t

Odstín LED diody. Může být také reprezentován jako hexadecimální hodnota (0x000000).

red

uint8_t

Celé číslo představující červenou hodnotu LED.

green

uint8_t

Celé číslo představující zelenou hodnotu LED.

blue

uint8_t

Celé číslo představující modrou hodnotu LED diody.

Return Values

Tato funkce nevrací hodnotu.

off#

Vypne dotykovou LED.

Available Functions
void off( void );

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values

Tato funkce nevrací hodnotu.

installed#

Vrací, zda je připojena dotyková LED dioda.

Available Functions
bool installed();

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values

Vrací booleovskou hodnotu označující, zda je připojena dotyková LED dioda:

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