タッチLED#

導入#

VEX IQ Touch LEDは、ライトとボタンの両方の機能を備えています。ロボットの準備完了を知らせたり、選択されているモードを表示したり、他のセンサーで検出された色と一致させたりするなど、さまざまな色で点灯してフィードバックを提供できます。また、タッチされたことを検知し、タップするだけでロボットの動作を開始したり変更したりできます。

クラスコンストラクタ#

touchled( 
  int32_t index );

クラスデストラクタ#

touchled オブジェクトを破棄し、関連するリソースを解放します。

virtual ~touchled();

パラメータ#

パラメータ

タイプ

説明

index

int32_t

タッチLEDが接続されているスマートポートは、 PORTxと表記され、 x はポート番号です(例: PORT1)。

例#

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

メンバーの機能#

touchled クラスには、以下のメンバ関数が含まれています。

  • pressingを押している – タッチ LED が押されているかどうかを返します。

  • setColor – タッチLEDの色を設定します。

  • setFade – 色が互いにフェードする速度を設定します。

  • setBrightness – タッチLEDの明るさを設定します。

  • pressed – タッチLEDが押されたときに呼び出される関数を登録します。

  • released – タッチLEDが離されたときに呼び出される関数を登録します。

  • on – タッチLEDをオンにします。

  • off – タッチLEDをオフにします。

  • setBlink – タッチLEDを無期限に交互に点灯・消灯します。

  • installed – タッチLEDがブレインに接続されているかどうかを返します。

touchled メンバー関数を呼び出す前に、以下に示すようにインスタンスを作成する必要があります touchled

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

TouchLEDが現在押されているかどうかを返します。

Available Functions
bool pressing();

Parameters

この関数は引数を受け付けません。

Return Values

タッチLEDが押されているかどうかを示すブール値 bool を返します。

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

setColor#

タッチLEDセンサーのLEDを特定の色に設定します。

Available Functions

1 — タッチLEDを vex::colorを使用して色に設定します。

void setColor( 
  vex::color  color );

2 — colorTypeを使用して LED の色を設定します。

void setColor( 
  colorType   color );

Parameters

パラメータ

タイプ

説明

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

有効なカスタムカラー。

Return Values

この関数は値を返しません。

setFade#

タッチLEDセンサーのフェード設定を行います。タッチLEDセンサーは、設定したフェードタイプに従って新しい色に変化します。

Available Functions
void setFade(
  fadeType  speed );

Parameters

パラメータ

タイプ

説明

speed

fadeType

フェードの速度設定:

  • fast
  • off — フェードなし
  • slow

Return Values

この関数は値を返しません。

setBrightness#

タッチLEDの明るさを設定します。

Available Functions
void setBrightness(
  uint32_t  value );

Parameters

パラメータ

タイプ

説明

value

uint32_t

タッチLEDの明るさをパーセントで設定します。

Return Values

この関数は値を返しません。

pressed#

タッチLEDが押されたときに呼び出される関数を登録します。

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

Parameters

パラメータ

タイプ

説明

callback

void (*)(void)

タッチLEDが押されたときに呼び出される関数へのポインタ。この関数は引数を取らず、戻り値はvoidでなければなりません。

Return Values

この関数は値を返しません。

Examples

コールバック関数を定義します( int main()の外側)

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

コールバックを登録する 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#

タッチLEDが離されたときに呼び出される関数を登録します。

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

Parameters

パラメータ

タイプ

説明

callback

void (*)(void)

タッチLEDが離されたときに呼び出される関数へのポインタ。この関数は引数を取らず、戻り値はvoidでなければなりません。

Return Values

この関数は値を返しません。

Examples

コールバック関数を定義します( int main()の外側)

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

コールバックを登録する 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#

タッチLEDセンサーのLEDを、設定した色と明るさで点灯させます。

Available Functions

1 — vex::color を使用して LED を色に設定します。

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

2 — 色相を使用してLEDの色を設定します。

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

3 — RGB値でLEDの色を設定します。

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

Parameters

パラメータ

タイプ

説明

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

オプション。LEDの明るさをパーセントで指定します。デフォルト値は100です。

hue

uint32_t

LEDの色相。これは16進数値(0x000000)で表すこともできます。

red

uint8_t

LEDの赤色の値を表す整数。

green

uint8_t

LEDの緑色の値を表す整数。

blue

uint8_t

LEDの青色の値を表す整数。

Return Values

この関数は値を返しません。

off#

タッチLEDをオフにします。

Available Functions
void off( void );

Parameters

この関数は引数を取りません。

Return Values

この関数は値を返しません。

installed#

タッチLEDが接続されているかどうかを返します。

Available Functions
bool installed();

Parameters

この関数は引数を取りません。

Return Values

タッチLEDが接続されているかどうかを示すブール値を返します。

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