Touch-LED#

Einführung#

Die VEX IQ Touch LED ist sowohl eine Leuchte als auch ein Knopf. Sie kann in verschiedenen Farben leuchten, um Feedback zu geben, z. B. um anzuzeigen, dass der Roboter bereit ist, den ausgewählten Modus anzuzeigen oder eine von einem anderen Sensor erfasste Farbe widerzuspiegeln. Außerdem erkennt sie Berührungen, sodass Sie das Verhalten des Roboters durch Antippen starten oder ändern können.

Klassenkonstruktor#

touchled( 
  int32_t index );

Klassendestruktor#

Zerstört das touchled Objekt und gibt die zugehörigen Ressourcen frei.

virtual ~touchled();

Parameter#

Parameter

Typ

Beschreibung

index

int32_t

Der Smart Port, an den die Touch-LED angeschlossen ist, wird als PORTxgeschrieben, wobei x die Portnummer ist (zum Beispiel PORT1).

Beispiel#

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

Mitgliedsfunktionen#

Die Klasse touchled umfasst die folgenden Memberfunktionen:

  • pressing – Gibt zurück, ob die Touch-LED gedrückt wird.

  • setColor – Legt die Farbe der Touch-LED fest.

  • setFade – Legt fest, wie schnell die Farben ineinander überblenden.

  • setBrightness – Legt die Helligkeit der Touch-LED fest.

  • pressed – Registriert eine Funktion, die aufgerufen werden soll, wenn die Touch-LED gedrückt wird.

  • released – Registriert eine Funktion, die aufgerufen werden soll, wenn die Touch-LED losgelassen wird.

  • on – Schaltet die Touch-LED ein.

  • off – Schaltet die Touch-LED aus.

  • setBlink – Die Touch-LED wird abwechselnd ein- und ausgeschaltet.

  • installed – Gibt zurück, ob die Touch-LED mit dem Brain verbunden ist.

Bevor touchled Memberfunktionen aufgerufen werden können, muss eine touchled -Instanz erstellt werden, wie unten dargestellt:

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

Gibt zurück, ob der TouchLED-Button gerade gedrückt wird.

Available Functions
bool pressing();

Parameters

Diese Funktion akzeptiert keine Parameter.

Return Values

Gibt einen booleschen Wert von bool zurück, der angibt, ob die Touch-LED gedrückt wird.

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

setColor#

Schaltet die LED des Touch-LED-Sensors auf eine bestimmte Farbe ein.

Available Functions

1 — Stellt die Touch-LED mithilfe von vex::color auf eine Farbe ein.

void setColor( 
  vex::color  color );

2 — Legt die LED-Farben mit einem colorType fest.

void setColor( 
  colorType   color );

Parameters

Parameter

Typ

Beschreibung

color

colorType

Eine gültige Farbe:

  • 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

Eine gültige benutzerdefinierte Farbe.

Return Values

Diese Funktion gibt keinen Wert zurück.

setFade#

Legt die Überblendungseinstellung des Touch-LED-Sensors fest. Der Touch-LED-Sensor wechselt die Farben mithilfe des eingestellten Überblendungstyps.

Available Functions
void setFade(
  fadeType  speed );

Parameters

Parameter

Typ

Beschreibung

speed

fadeType

Die Geschwindigkeit des Fades wird wie folgt eingestellt:

  • fast
  • off — kein Fade
  • slow

Return Values

Diese Funktion gibt keinen Wert zurück.

setBrightness#

Stellt die Helligkeit der Touch-LED ein.

Available Functions
void setBrightness(
  uint32_t  value );

Parameters

Parameter

Typ

Beschreibung

value

uint32_t

Die Helligkeit der Touch-LED, die in Prozent eingestellt werden soll.

Return Values

Diese Funktion gibt keinen Wert zurück.

pressed#

Registriert eine Funktion, die beim Drücken der Touch-LED aufgerufen werden soll.

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

Parameters

Parameter

Typ

Beschreibung

callback

void (*)(void)

Ein Zeiger auf eine Funktion, die beim Drücken der Touch-LED aufgerufen wird. Die Funktion darf keine Parameter annehmen und muss einen Rückgabewert von void haben.

Return Values

Diese Funktion gibt keinen Wert zurück.

Examples

Definiere die Callback-Funktion (außerhalb von int main())

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

Registriere den Callback innerhalb von 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#

Registriert eine Funktion, die aufgerufen werden soll, wenn die Touch-LED losgelassen wird.

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

Parameters

Parameter

Typ

Beschreibung

callback

void (*)(void)

Ein Zeiger auf eine Funktion, die beim Loslassen der Touch-LED aufgerufen wird. Die Funktion darf keine Parameter annehmen und muss einen Rückgabewert von void haben.

Return Values

Diese Funktion gibt keinen Wert zurück.

Examples

Definiere die Callback-Funktion (außerhalb von int main())

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

Registriere den Callback innerhalb von 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#

Schaltet die LED des TouchLED-Sensors mit Farben und einer voreingestellten Helligkeit ein.

Available Functions

1 — Setzt die Farbe der LED mithilfe von vex::color.

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

2 — Stellt die LED-Farbe mithilfe des Farbtons ein.

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

3 — Legt die LED-Farbe anhand der RGB-Werte fest.

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

Parameters

Parameter

Typ

Beschreibung

color

vex::color

Eine gültige Farbe:

  • 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

Optional. Die Helligkeit, auf die die LED eingestellt werden soll, in Prozent, Standardwert 100.

hue

uint32_t

Die Farbe der LED. Diese kann auch als Hexadezimalcode (0x000000) dargestellt werden.

red

uint8_t

Eine ganze Zahl, die den Rotwert der LED darstellt.

green

uint8_t

Eine ganze Zahl, die den Grünwert der LED darstellt.

blue

uint8_t

Eine ganze Zahl, die den Blauwert der LED repräsentiert.

Return Values

Diese Funktion gibt keinen Wert zurück.

off#

Schaltet die Touch-LED aus.

Available Functions
void off( void );

Parameters

Diese Funktion benötigt keine Parameter.

Return Values

Diese Funktion gibt keinen Wert zurück.

installed#

Gibt zurück, ob die Touch-LED angeschlossen ist.

Available Functions
bool installed();

Parameters

Diese Funktion benötigt keine Parameter.

Return Values

Gibt einen booleschen Wert zurück, der angibt, ob die Touch-LED angeschlossen ist:

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