ABS SCPI Driver 0.2.0
ABS SCPI driver library
|
Functions for controlling and measuring the cells. More...
Modules | |
Cell Faults | |
Cell faulting states constants. | |
Cell Current Sense Ranges | |
Cell sense range constants. | |
Cell Operating Modes | |
Cell operating mode constants. | |
Functions | |
int | AbsScpiClient_EnableCell (AbsScpiClientHandle handle, unsigned int cell, bool en) |
Enable a single cell. | |
int | AbsScpiClient_EnableCellsMasked (AbsScpiClientHandle handle, unsigned int cells, bool en) |
Enable or disable multiple cells at once. | |
int | AbsScpiClient_GetCellEnabled (AbsScpiClientHandle handle, unsigned int cell, bool *en_out) |
Query whether a cell is enabled. | |
int | AbsScpiClient_GetCellsEnabledMasked (AbsScpiClientHandle handle, unsigned int *cells_out) |
Query the enable state of all cells. | |
int | AbsScpiClient_SetCellVoltage (AbsScpiClientHandle handle, unsigned int cell, float voltage) |
Set a single cell's target voltage. | |
int | AbsScpiClient_SetAllCellVoltages (AbsScpiClientHandle handle, const float voltages[], unsigned int count) |
Set many cells' target voltages. | |
int | AbsScpiClient_SetMultipleCellVoltages (AbsScpiClientHandle handle, unsigned int cells, float voltage) |
Set multiple cells to the same voltage. | |
int | AbsScpiClient_GetCellVoltageTarget (AbsScpiClientHandle handle, unsigned int cell, float *voltage_out) |
Query a cell's target voltage. | |
int | AbsScpiClient_GetAllCellVoltageTargets (AbsScpiClientHandle handle, float voltages_out[], unsigned int count) |
Query many cells' target voltages. | |
int | AbsScpiClient_SetCellSourcing (AbsScpiClientHandle handle, unsigned int cell, float limit) |
Set a single cell's current sourcing limit. | |
int | AbsScpiClient_SetAllCellSourcing (AbsScpiClientHandle handle, const float limits[], unsigned int count) |
Set many cells' sourcing limits. | |
int | AbsScpiClient_SetMultipleCellSourcing (AbsScpiClientHandle handle, unsigned int cells, float limit) |
Set multiple cells to the same sourcing limit. | |
int | AbsScpiClient_GetCellSourcingLimit (AbsScpiClientHandle handle, unsigned int cell, float *limit_out) |
Query a single cell's sourcing limit. | |
int | AbsScpiClient_GetAllCellSourcingLimits (AbsScpiClientHandle handle, float limits_out[], unsigned int count) |
Query many cells' sourcing limits. | |
int | AbsScpiClient_SetCellSinking (AbsScpiClientHandle handle, unsigned int cell, float limit) |
Set a single cell's current sinking limit. | |
int | AbsScpiClient_SetAllCellSinking (AbsScpiClientHandle handle, const float limits[], unsigned int count) |
Set many cells' sinking limits. | |
int | AbsScpiClient_SetMultipleCellSinking (AbsScpiClientHandle handle, unsigned int cells, float limit) |
Set multiple cells to the same sinking limit. | |
int | AbsScpiClient_GetCellSinkingLimit (AbsScpiClientHandle handle, unsigned int cell, float *limit_out) |
Query a single cell's sinking limit. | |
int | AbsScpiClient_GetAllCellSinkingLimits (AbsScpiClientHandle handle, float limits_out[], unsigned int count) |
Query many cells' sinking limits. | |
int | AbsScpiClient_SetCellFault (AbsScpiClientHandle handle, unsigned int cell, int fault) |
Set a single cell's fault state. | |
int | AbsScpiClient_SetAllCellFaults (AbsScpiClientHandle handle, const int faults[], unsigned int count) |
Set many cells' fault states. | |
int | AbsScpiClient_SetMultipleCellFaults (AbsScpiClientHandle handle, unsigned int cells, int fault) |
Set multiple cells to the same fault state. | |
int | AbsScpiClient_GetCellFault (AbsScpiClientHandle handle, unsigned int cell, int *fault_out) |
Query a single cell's fault state. | |
int | AbsScpiClient_GetAllCellFaults (AbsScpiClientHandle handle, int faults_out[], unsigned int count) |
Query many cells' fault states. | |
int | AbsScpiClient_SetCellSenseRange (AbsScpiClientHandle handle, unsigned int cell, int range) |
Set a single cell's current sense range. | |
int | AbsScpiClient_SetAllCellSenseRanges (AbsScpiClientHandle handle, const int ranges[], unsigned int count) |
Set many cells' current sense ranges. | |
int | AbsScpiClient_GetCellSenseRange (AbsScpiClientHandle handle, unsigned int cell, int *range_out) |
Query a single cell's current sense range. | |
int | AbsScpiClient_GetAllCellSenseRanges (AbsScpiClientHandle handle, int ranges_out[], unsigned int count) |
Query many cells' current sense ranges. | |
int | AbsScpiClient_EnableCellNoiseFilter (AbsScpiClientHandle handle, bool en) |
Enable or disable the cell 50/60Hz noise filter. | |
int | AbsScpiClient_GetCellNoiseFilterEnabled (AbsScpiClientHandle handle, bool *en_out) |
Query the enable state of the cell 50/60Hz noise filter. | |
int | AbsScpiClient_MeasureCellVoltage (AbsScpiClientHandle handle, unsigned int cell, float *voltage_out) |
Measure a cell's voltage. | |
int | AbsScpiClient_MeasureAllCellVoltages (AbsScpiClientHandle handle, float voltages_out[], unsigned int count) |
Measure many cells' voltages. | |
int | AbsScpiClient_MeasureCellCurrent (AbsScpiClientHandle handle, unsigned int cell, float *current_out) |
Measure a cell's current. | |
int | AbsScpiClient_MeasureAllCellCurrents (AbsScpiClientHandle handle, float currents_out[], unsigned int count) |
Measure many cells' currents. | |
int | AbsScpiClient_GetCellOperatingMode (AbsScpiClientHandle handle, unsigned int cell, int *mode_out) |
Query a cell's operating mode (constant voltage or current-limited). | |
int | AbsScpiClient_GetAllCellOperatingModes (AbsScpiClientHandle handle, int modes_out[], unsigned int count) |
Query many cells' operating modes (constant voltage or current-limited). | |
Functions for controlling and measuring the cells.
int AbsScpiClient_EnableCell | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
bool | en | ||
) |
Enable a single cell.
[in] | handle | SCPI client |
[in] | cell | the cell index 0-7 |
[in] | en | whether to enable the cell |
int AbsScpiClient_EnableCellNoiseFilter | ( | AbsScpiClientHandle | handle, |
bool | en | ||
) |
Enable or disable the cell 50/60Hz noise filter.
This mode filters 50/60Hz noise and increases cell measurement accuracy, but reduces the cell control rate to 10Hz.
[in] | handle | SCPI client |
[in] | en | desired cell noise filter state |
int AbsScpiClient_EnableCellsMasked | ( | AbsScpiClientHandle | handle, |
unsigned int | cells, | ||
bool | en | ||
) |
Enable or disable multiple cells at once.
[in] | handle | SCPI client |
[in] | cells | a bitmask of cells to control, where bit 0 corresponds to cell 1 |
[in] | en | the desired enable state of the masked cells |
int AbsScpiClient_GetAllCellFaults | ( | AbsScpiClientHandle | handle, |
int | faults_out[], | ||
unsigned int | count | ||
) |
Query many cells' fault states.
[in] | handle | SCPI client |
[out] | faults_out | array to store the returned fault states |
[in] | count | length of the array (must not be greater than the total cell count) |
int AbsScpiClient_GetAllCellOperatingModes | ( | AbsScpiClientHandle | handle, |
int | modes_out[], | ||
unsigned int | count | ||
) |
Query many cells' operating modes (constant voltage or current-limited).
[in] | handle | SCPI client |
[out] | modes_out | array to store the returned modes, one per cell |
[in] | count | number of cells to query (must not be greater than the total number of cells) |
int AbsScpiClient_GetAllCellSenseRanges | ( | AbsScpiClientHandle | handle, |
int | ranges_out[], | ||
unsigned int | count | ||
) |
Query many cells' current sense ranges.
[in] | handle | SCPI client |
[out] | ranges_out | array to store the returned sense ranges |
[in] | count | length of the array (must not be greater than the total cell count) |
int AbsScpiClient_GetAllCellSinkingLimits | ( | AbsScpiClientHandle | handle, |
float | limits_out[], | ||
unsigned int | count | ||
) |
Query many cells' sinking limits.
[in] | handle | SCPI client |
[out] | limits_out | array to store the returned limits |
[in] | count | length of the array (must not be greater than the total cell count) |
int AbsScpiClient_GetAllCellSourcingLimits | ( | AbsScpiClientHandle | handle, |
float | limits_out[], | ||
unsigned int | count | ||
) |
Query many cells' sourcing limits.
[in] | handle | SCPI client |
[out] | limits_out | array to store the returned limits |
[in] | count | length of the array (must not be greater than the total cell count) |
int AbsScpiClient_GetAllCellVoltageTargets | ( | AbsScpiClientHandle | handle, |
float | voltages_out[], | ||
unsigned int | count | ||
) |
Query many cells' target voltages.
[in] | handle | SCPI client |
[out] | voltages_out | an array to store the returned voltages |
[in] | count | length of the voltages array (must not be greater than the total cell count) |
int AbsScpiClient_GetCellEnabled | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
bool * | en_out | ||
) |
Query whether a cell is enabled.
[in] | handle | SCPI client |
[in] | cell | cell index 0-7 |
[out] | en_out | pointer to the returned enable state |
int AbsScpiClient_GetCellFault | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
int * | fault_out | ||
) |
Query a single cell's fault state.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | fault_out | pointer to the returned fault state |
int AbsScpiClient_GetCellNoiseFilterEnabled | ( | AbsScpiClientHandle | handle, |
bool * | en_out | ||
) |
Query the enable state of the cell 50/60Hz noise filter.
[in] | handle | SCPI client |
[out] | en_out | a pointer to the returned filter state |
int AbsScpiClient_GetCellOperatingMode | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
int * | mode_out | ||
) |
Query a cell's operating mode (constant voltage or current-limited).
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | mode_out | pointer to returned operating mode |
int AbsScpiClient_GetCellsEnabledMasked | ( | AbsScpiClientHandle | handle, |
unsigned int * | cells_out | ||
) |
Query the enable state of all cells.
[in] | handle | SCPI client |
[out] | cells_out | pointer to the returned bitmask containing a 1 bit for each enabled cell and a 0 for each disabled cell |
int AbsScpiClient_GetCellSenseRange | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
int * | range_out | ||
) |
Query a single cell's current sense range.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | range_out | pointer to the returned sense range |
int AbsScpiClient_GetCellSinkingLimit | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float * | limit_out | ||
) |
Query a single cell's sinking limit.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | limit_out | pointer to the returned sinking limit |
int AbsScpiClient_GetCellSourcingLimit | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float * | limit_out | ||
) |
Query a single cell's sourcing limit.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | limit_out | pointer to the returned sourcing limit |
int AbsScpiClient_GetCellVoltageTarget | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float * | voltage_out | ||
) |
Query a cell's target voltage.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | voltage_out | pointer to the returned cell voltage target |
int AbsScpiClient_MeasureAllCellCurrents | ( | AbsScpiClientHandle | handle, |
float | currents_out[], | ||
unsigned int | count | ||
) |
Measure many cells' currents.
[in] | handle | SCPI client |
[out] | currents_out | array to store the returned currents, one per cell |
[in] | count | the number of cells to measure |
int AbsScpiClient_MeasureAllCellVoltages | ( | AbsScpiClientHandle | handle, |
float | voltages_out[], | ||
unsigned int | count | ||
) |
Measure many cells' voltages.
[in] | handle | SCPI client |
[out] | voltages_out | array to store the returned voltages, one per cell |
[in] | count | the number of cells to measure |
int AbsScpiClient_MeasureCellCurrent | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float * | current_out | ||
) |
Measure a cell's current.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | current_out | pointer to the returned current |
int AbsScpiClient_MeasureCellVoltage | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float * | voltage_out | ||
) |
Measure a cell's voltage.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[out] | voltage_out | pointer to the returned voltage |
int AbsScpiClient_SetAllCellFaults | ( | AbsScpiClientHandle | handle, |
const int | faults[], | ||
unsigned int | count | ||
) |
Set many cells' fault states.
[in] | handle | SCPI client |
[in] | faults | fault states, one per cell |
[in] | count | number of cells to target (must not be greater than the total cell count) |
int AbsScpiClient_SetAllCellSenseRanges | ( | AbsScpiClientHandle | handle, |
const int | ranges[], | ||
unsigned int | count | ||
) |
Set many cells' current sense ranges.
[in] | handle | SCPI client |
[in] | ranges | sense ranges, one per cell |
[in] | count | number of cells to target (must not be greater than the total cell count) |
int AbsScpiClient_SetAllCellSinking | ( | AbsScpiClientHandle | handle, |
const float | limits[], | ||
unsigned int | count | ||
) |
Set many cells' sinking limits.
[in] | handle | SCPI client |
[in] | limits | sinking limits, one per cell |
[in] | count | number of cells to target (must not be greater than the total cell count) |
int AbsScpiClient_SetAllCellSourcing | ( | AbsScpiClientHandle | handle, |
const float | limits[], | ||
unsigned int | count | ||
) |
Set many cells' sourcing limits.
[in] | handle | SCPI client |
[in] | limits | sourcing limits, one per cell |
[in] | count | number of cells to target (must not be greater than the total cell count) |
int AbsScpiClient_SetAllCellVoltages | ( | AbsScpiClientHandle | handle, |
const float | voltages[], | ||
unsigned int | count | ||
) |
Set many cells' target voltages.
[in] | handle | SCPI client |
[in] | voltages | array of voltages |
[in] | count | length of the voltages array (must not be greater than the total cell count) |
int AbsScpiClient_SetCellFault | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
int | fault | ||
) |
Set a single cell's fault state.
[in] | handle | SCPI client |
[in] | cell | cell index, 0-7 |
[in] | fault | desired cell fault |
int AbsScpiClient_SetCellSenseRange | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
int | range | ||
) |
Set a single cell's current sense range.
[in] | handle | SCPI client |
[in] | cell | cell index, 0-7 |
[in] | range | desired cell current sense range |
int AbsScpiClient_SetCellSinking | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float | limit | ||
) |
Set a single cell's current sinking limit.
[in] | handle | SCPI client |
[in] | cell | cell index, 0-7 |
[in] | limit | desired sinking limit, 0-5 (may be positive or negative) |
int AbsScpiClient_SetCellSourcing | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float | limit | ||
) |
Set a single cell's current sourcing limit.
[in] | handle | SCPI client |
[in] | cell | cell index, 0-7 |
[in] | limit | desired sourcing limit, 0-5 |
int AbsScpiClient_SetCellVoltage | ( | AbsScpiClientHandle | handle, |
unsigned int | cell, | ||
float | voltage | ||
) |
Set a single cell's target voltage.
[in] | handle | SCPI client |
[in] | cell | target cell index, 0-7 |
[in] | voltage | cell voltage, 0-5 |
int AbsScpiClient_SetMultipleCellFaults | ( | AbsScpiClientHandle | handle, |
unsigned int | cells, | ||
int | fault | ||
) |
Set multiple cells to the same fault state.
[in] | handle | SCPI client |
[in] | cells | bitmask of cells to target, one bit per cell |
[in] | fault | target cell fault state |
int AbsScpiClient_SetMultipleCellSinking | ( | AbsScpiClientHandle | handle, |
unsigned int | cells, | ||
float | limit | ||
) |
Set multiple cells to the same sinking limit.
[in] | handle | SCPI client |
[in] | cells | bitmask of cells to target (one bit per cell) |
[in] | limit | target sinking limit, 0-5 (positive or negative) |
int AbsScpiClient_SetMultipleCellSourcing | ( | AbsScpiClientHandle | handle, |
unsigned int | cells, | ||
float | limit | ||
) |
Set multiple cells to the same sourcing limit.
[in] | handle | SCPI client |
[in] | cells | bitmask of cells to target (one bit per cell) |
[in] | limit | target sourcing limit, 0-5 |
int AbsScpiClient_SetMultipleCellVoltages | ( | AbsScpiClientHandle | handle, |
unsigned int | cells, | ||
float | voltage | ||
) |
Set multiple cells to the same voltage.
[in] | handle | SCPI client |
[in] | cells | bitmask of cells to target (one bit per cell) |
[in] | voltage | target voltage |