അനലോഗ് ഇൻ#

ആമുഖം#

ഒരു VEX EXP 3-വയർ പോർട്ടിലേക്ക് കണക്റ്റുചെയ്‌തിരിക്കുന്ന ഉപകരണങ്ങളിൽ നിന്നുള്ള അനലോഗ് ഇൻപുട്ട് സിഗ്നലുകൾ വായിക്കാൻ analog_in ക്ലാസ് ഉപയോഗിക്കുന്നു. ഇത് നിലവിലെ അനലോഗ് മൂല്യത്തിലേക്ക് ആക്‌സസ് നൽകുകയും മൂല്യ മാറ്റങ്ങൾക്കായി കോൾബാക്ക് ഫംഗ്‌ഷനുകൾ രജിസ്റ്റർ ചെയ്യാൻ അനുവദിക്കുകയും ചെയ്യുന്നു.

ക്ലാസ് കൺസ്ട്രക്‌ടറുകൾ#

analog_in(
    triport::port &port );

ക്ലാസ് ഡിസ്ട്രക്റ്റർ#

analog_in ഒബ്‌ജക്റ്റിനെ നശിപ്പിക്കുകയും അനുബന്ധ ഉറവിടങ്ങൾ പുറത്തുവിടുകയും ചെയ്യുന്നു.

~analog_in();

പാരാമീറ്ററുകൾ#

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

port

triport::port&

അനലോഗ് ഇൻപുട്ട് ബന്ധിപ്പിച്ചിരിക്കുന്ന 3-വയർ പോർട്ട്, Brain.ThreeWirePort.X അല്ലെങ്കിൽ ExpanderName.Xഎന്ന് എഴുതിയിരിക്കുന്നു, ഇവിടെ X എന്നത് പോർട്ട് അക്ഷരമാണ് (ഉദാഹരണത്തിന്, Brain.ThreeWirePort.A അല്ലെങ്കിൽ Expander1.A).

ഉദാഹരണം#

// 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 ഉദാഹരണം സൃഷ്ടിക്കണം:

/* 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 Functions
int32_t value(
  analogUnits units );

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

units

analogUnits

മൂല്യത്തെ പ്രതിനിധീകരിക്കുന്ന യൂണിറ്റ്:

  • range8bit — 8-ബിറ്റ് അനലോഗ് മൂല്യം (256 സാധ്യമായ അവസ്ഥകളുള്ള ഒരു മൂല്യം)
  • range10bit — 10-ബിറ്റ് അനലോഗ് മൂല്യം (1024 സാധ്യമായ അവസ്ഥകളുള്ള ഒരു മൂല്യം)
  • range12bit — 12-ബിറ്റ് അനലോഗ് മൂല്യം (4096 സാധ്യമായ അവസ്ഥകളുള്ള ഒരു മൂല്യം)
  • pct — ശതമാനം
  • mV — മില്ലിവോൾട്ടുകൾ

Return Values

ഈ ഫംഗ്ഷൻ അനലോഗ് ഇൻപുട്ടിന്റെ നിലവിലെ മൂല്യം നൽകുന്നു.

Examples
// Get the current value of the Analog Input
int32_t value = AnalogInA.value();

changed#

അനലോഗ് ഇൻപുട്ടിന്റെ മൂല്യം മാറുമ്പോൾ വിളിക്കേണ്ട ഒരു കോൾബാക്ക് ഫംഗ്ഷൻ രജിസ്റ്റർ ചെയ്യുന്നു.

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

Parameters

പാരാമീറ്റർ

ടൈപ്പ് ചെയ്യുക

വിവരണം

callback

void (* callback)(void)

അനലോഗ് ഇൻപുട്ടിന്റെ മൂല്യം മാറുമ്പോൾ വിളിക്കപ്പെടുന്ന ഒരു ഫംഗ്ഷൻ.

Return Values

ഈ ഫംഗ്ഷൻ ഒരു മൂല്യം തിരികെ നൽകുന്നില്ല.

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);
}