Аналоговый вход#
Введение#
Класс analog_in analog_in используется для считывания аналоговых входных сигналов от устройств, подключенных к порту VEX EXP 3-Wire. Он обеспечивает доступ к текущему аналоговому значению и позволяет регистрировать функции обратного вызова для изменения значения.
Конструкторы классов#
analog_in(
triport::port &port );
Деструктор класса#
Уничтожает объект analog_in и освобождает связанные с ним ресурсы.
~analog_in();
Параметры#
Параметр |
Тип |
Описание |
|---|---|---|
|
|
Трехпроводной порт, к которому подключен аналоговый вход, обозначается как |
Пример#
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
Функции участников#
Класс analog_in включает следующие функции-члены:
value— Возвращает значение устройства аналогового входа.changed— Регистрирует функцию обратного вызова при изменении значения аналогового входа.
Перед вызовом любых функций-членов analog_in analog_in необходимо создать экземпляр analog_in analog_in , как показано ниже:
/* This constructor is required to use an
Analog Input device. Replace the values
as needed. */
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
value#
Возвращает текущее значение аналогового входа.
Available Functionsint32_t value(
analogUnits units );
Параметр |
Тип |
Описание |
|---|---|---|
|
|
Единица измерения значения:
|
Эта функция возвращает текущее значение аналогового входа.
Examples// Get the current value of the Analog Input
int32_t value = AnalogInA.value();
changed#
Регистрирует функцию обратного вызова, которая будет вызываться при изменении значения аналогового входа.
Available Functionsvoid changed( void (* callback)(void) );
Параметр |
Тип |
Описание |
|---|---|---|
|
|
Функция, которая будет вызываться при изменении значения аналогового входа. |
Эта функция не возвращает значения.
ExamplesОпределите функцию обратного вызова (вне
int main())// Display a message when the input changes void AnalogInputChanged() { Brain.Screen.print("analog input changed"); }Зарегистрируйте функцию обратного вызова внутри
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Run AnalogInputChanged when the value of the // Analog Input changes AnalogInA.changed(AnalogInputChanged); }