アナログ入力#
導入#
analog_in クラスは、VEX EXP 3-Wire ポートに接続されたデバイスからのアナログ入力信号を読み取るために使用されます。このクラスは、現在のアナログ値へのアクセスを提供し、値の変更に対するコールバック関数を登録できるようにします。
クラスコンストラクタ#
analog_in(
triport::port &port );
クラスデストラクタ#
analog_in オブジェクトを破棄し、関連するリソースを解放します。
~analog_in();
パラメータ#
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
アナログ入力が接続されている 3 線ポートは、 |
例#
// Create the analog_in instance on 3-Wire Port A
analog_in AnalogInA = analog_in(Brain.ThreeWirePort.A);
メンバーの機能#
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); }