Analog

class brainstem.entity.Analog(module, index)[source]

AnalogClass: Interface to analog entities on BrainStem modules. Analog entities may be configured as a input or output depending on hardware capabilities. Some modules are capable of providing actual voltage readings, while other simply return the raw analog-to-digital converter (ADC) output value. The resolution of the voltage or number of useful bits is also hardware dependent.

getBulkCaptureNumberOfSamples()[source]

Get the current number of samples setting for this analog when bulk capturing. number of samples.

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getBulkCaptureSampleRate()[source]

Get the current sample rate setting for this analog when bulk capturing. upon success filled with current sample rate in samples per second (Hertz).

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getBulkCaptureState()[source]

Get the current bulk capture state for this analog. the state of bulk capture. - Idle: bulkCaptureIdle = 0 - Pending: bulkCapturePending = 1 - Finished: bulkCaptureFinished = 2 - Error: bulkCaptureError = 3

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getConfiguration()[source]

Get the analog configuration. - Current configuration of the analog entity.

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getEnable()[source]

Get the analog output enable status. 0 if disabled 1 if enabled.

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getRange()[source]

Get the analog input range. 8 bit value corresponding to a discrete range option

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getValue()[source]

Get the raw ADC output value in bits. 16 bit analog reading with 0 corresponding to the negative analog voltage reference and 0xFFFF corresponding to the positive analog voltage reference. Note: Not all modules are provide 16 useful bits; this value’s least significant bits are zero-padded to 16 bits. Refer to the module’s datasheet to determine analog bit depth and reference voltage.

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

getVoltage()[source]

Get the scaled micro volt value with reference to ground. 32 bit signed integer (in microvolts) based on the board’s ground and reference voltages. Note: Not all modules provide 32 bits of accuracy; Refer to the module’s datasheet to determine the analog bit depth and reference voltage.

Returns:

Result object containing the requested value when the results error is set to NO_ERROR(0)

Return type:

Result

initiateBulkCapture()[source]

Initiate a BulkCapture on this analog. Captured measurements are stored in the module’s RAM store (RAM_STORE) slot 0. Data is stored in a contiguous byte array with each sample stored in two consecutive bytes, LSB first.

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setBulkCaptureNumberOfSamples(value)[source]

Set the number of samples to capture for this analog when bulk capturing.

Parameters:

value (const unsigned int) – number of samples. Minimum # of Samples: 0 Maximum # of Samples: (BRAINSTEM_RAM_SLOT_SIZE / 2) = (3FFF / 2) = 1FFF = 8191

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setBulkCaptureSampleRate(value)[source]

Set the sample rate for this analog when bulk capturing.

Parameters:

value (const unsigned int) – sample rate in samples per second (Hertz). Minimum rate: 7,000 Hz Maximum rate: 200,000 Hz

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setConfiguration(configuration)[source]

Set the analog configuration. aErrConfiguration - Entity does not support this configuration.

Parameters:

configuration (const unsigned char) –

  • bitAnalogConfigurationOutput configures the analog entity as an output.

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setEnable(enable)[source]

Set the analog output enable state.

Parameters:

enable (const unsigned char) – set 1 to enable or 0 to disable.

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setRange(range)[source]

Set the analog input range.

Parameters:

range (const unsigned char) – 8 bit value corresponding to a discrete range option

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setValue(value)[source]

Set the value of an analog output (DAC) in bits.

Parameters:

value (const unsigned short) – 16 bit analog set point with 0 corresponding to the negative analog voltage reference and 0xFFFF corresponding to the positive analog voltage reference. Note: Not all modules are provide 16 useful bits; the least significant bits are discarded. E.g. for a 10 bit DAC, 0xFFC0 to 0x0040 is the useful range. Refer to the module’s datasheet to determine analog bit depth and reference voltage.

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte

setVoltage(microvolts)[source]

Set the voltage level of an analog output (DAC) in microvolts.

Parameters:

microvolts (const int) – 32 bit signed integer (in microvolts) based on the board’s ground and reference voltages. Note: Voltage range is dependent on the specific DAC channel range.

Returns:

An error result from the list of defined error codes in brainstem.result

Return type:

unsigned byte