Сенсорний світлодіод#

Вступ#

Світлодіодний індикатор VEX IQ Touch — це одночасно індикатор і кнопка. Він може світитися різними кольорами, щоб надати зворотний зв’язок, наприклад, сигналізуючи про готовність робота, показуючи вибраний режим або збігаючись із кольором, виявленим іншим датчиком, а також він може виявляти дотик, дозволяючи запускати робота або змінювати його поведінку одним дотиком.

Конструктор класів#

touchled( 
  int32_t index );

Деструктор класів#

Знищує об’єкт touchled , та звільняє пов’язані з ним ресурси.

virtual ~touchled();

Параметри#

Параметр

Тип

Опис

index

int32_t

Розумний порт, до якого підключено сенсорний світлодіодний індикатор, записується як PORTx, де x – номер порту (наприклад, PORT1).

Приклад#

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

Функції-члени#

Клас touchled містить такі функції-члени:

  • pressing – Повертає, чи натискається сенсорний світлодіод.

  • setColor – Встановлює колір світлодіода Touch.

  • setFade – Встановлює швидкість переходу кольорів один в один.

  • setBrightness – Встановлює яскравість сенсорного світлодіода.

  • pressed – Реєструє функцію, яка викликається при натисканні сенсорного світлодіода.

  • released – Реєструє функцію, яка викликається при відпусканні сенсорного світлодіода.

  • on – Вмикає сенсорний світлодіод.

  • off – Вимикає сенсорний світлодіод.

  • setBlink – По черзі вмикати та вимикати сенсорний світлодіод необмежений час.

  • installed – Повертає, чи підключено сенсорний світлодіод до мозку.

Перед викликом будь-яких функцій-членів 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

Повертає логічне значення bool вказує на те, чи натискається сенсорний світлодіод.

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

setColor#

Встановлює певний колір світлодіода сенсорного датчика.

Available Functions

1 — Встановлює колір сенсорного світлодіода за допомогою vex::color.

void setColor( 
  vex::color  color );

2 — Встановлює кольори світлодіодів, використовуючи тип кольору colorType.

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#

Встановлює налаштування затемнення сенсорного світлодіодного датчика. Сенсорний світлодіодний датчик змінюватиме кольори на нові, використовуючи тип затемнення.

Available Functions
void setFade(
  fadeType  speed );

Parameters

Параметр

Тип

Опис

speed

fadeType

Швидкість згасання буде встановлено:

  • fast
  • off — без згасання
  • slow

Return Values

Ця функція не повертає значення.

setBrightness#

Встановлює яскравість сенсорного світлодіода.

Available Functions
void setBrightness(
  uint32_t  value );

Parameters

Параметр

Тип

Опис

value

uint32_t

Яскравість сенсорного світлодіода, яку потрібно встановити у відсотках.

Return Values

Ця функція не повертає значення.

pressed#

Реєструє функцію, яка викликається при натисканні сенсорного світлодіода.

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

Parameters

Параметр

Тип

Опис

callback

void (*)(void)

Вказівник на функцію, яка буде викликана при натисканні сенсорного світлодіода. Функція не повинна приймати параметрів і повертати значення 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#

Реєструє функцію, яка викликається при відпусканні світлодіода Touch.

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

Parameters

Параметр

Тип

Опис

callback

void (*)(void)

Вказівник на функцію, яка буде викликана після відпускання сенсорного світлодіода. Функція не повинна приймати параметрів і повертати значення 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#

Вмикає світлодіод сенсорного датчика TouchLED, використовуючи кольори та встановлену яскравість.

Available Functions

1 — Встановлює колір світлодіода за допомогою vex::color.

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

2 — Встановлює колір світлодіода за допомогою відтінку.

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

3 — Встановлює колір світлодіода за значеннями rgb.

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

Необов’язково. Яскравість світлодіода у відсотках, за замовчуванням 100.

hue

uint32_t

Відтінок світлодіода. Його також можна представити у вигляді шістнадцяткового значення (0x000000).

red

uint8_t

Ціле число, що представляє значення червоного кольору світлодіода.

green

uint8_t

Ціле число, що представляє зелене значення світлодіода.

blue

uint8_t

Ціле число, що представляє значення синього кольору світлодіода.

Return Values

Ця функція не повертає значення.

off#

Вимикає сенсорний світлодіод.

Available Functions
void off( void );

Parameters

Ця функція не приймає жодних параметрів.

Return Values

Ця функція не повертає значення.

installed#

Повертає, чи підключено сенсорний світлодіод.

Available Functions
bool installed();

Parameters

Ця функція не приймає жодних параметрів.

Return Values

Повертає логічне значення, яке вказує, чи підключено сенсорний світлодіод:

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