54 Jackrabbit (BL1800)
4.4.1.4 Analog Input
The analog input channel on the Jackrabbit (AD0 on header J5) works by varying analog
output channel DA0 until its voltage matches the input voltage on AD0. DA0 obviously
cannot be used while an input voltage is being measured, although channel DA0 is still
available. The value returned corresponds to the value that DA0 required to match the
input voltage (you would call anaOut(0,value) for DA0 to provide that same voltage).
If the value returned is negative, then the function considers the value suspect for some
reason (most likely a failure of the DA0 voltage to settle quickly). The value can be taken
as is, or another measurement can be done.
Analog input for the Jackrabbit analog input channel (AD0).
jrioInit must be called first.
channel is the input channel number (0 only on the Jackrabbit).
An integer between 0 and 1024 will be returned in value, corresponding to a voltage
obtained if output channel DA0 was set to that value. If a value is found, but the voltage
has not appeared to fully settle, the value will be negative (but equal in magnitude to the
found voltage) to allow remeasurement if desired.
NOTE: See sample program JRIOTEST.C for an example of the use of anaIn.
Two versions of the analog input function are available: the standard function, listed
above, that does not return until the measurement has been made, and a cofunction version
that can be called from within a costatement. This cofunction version allows other tasks to
be performed while the voltage match is being made. The voltage measurement will take
ten calls of the cofunction version to make a measurement.
The parameters are identical to those described above for anaIn.
NOTE: See sample program JRIO_COF.C for an example of the use of cof_anaIn.
void anaIn(int channel, int *value);void cof_anaIn(int channel, int *value);
mVmax Vmin
PWM_MAX0 PWM_MIN
---------------------------------------------------------------------=
voltage mvalue×b+=