Rail Class

class RailClass

RailClass. Provides power rail functionality on certain modules. This entity is only available on certain modules. The RailClass can be used to control power to downstream devices, I has the ability to take current and voltage measurements, and depending on hardware, may have additional modes and capabilities.

Public Functions

RailClass()

Constructor.

~RailClass()

Destructor.

!RailClass ()

Finalizer.

void init (BrainStem2CLI::ModuleClass^ module, const unsigned char index)

Initializes the class. Should only be called when manually creating classes.

Parameters:
  • pModule – The module.

  • index – The cmdRAIL index to be addressed.

aErr getCurrent(int %microamps)

Get the rail current.

Parameters:

microamps – The current in micro-amps (1 == 1e-6A).

Returns:

Returns common entity return values

aErr setCurrentSetpoint(const int microamps)

Set the rail setpoint current. Rail current control capabilities vary between modules. Refer to the module datasheet for definition of the rail current capabilities.

Parameters:

microamps – The current in micro-amps (1 == 1e-6A) to be supply by the rail.

Returns:

Returns common entity return values

aErr getCurrentSetpoint(int %microamps)

Get the rail setpoint current. Rail current control capabilities vary between modules. Refer to the module datasheet for definition of the rail current capabilities.

Parameters:

microamps – The current in micro-amps (1 == 1e-6A) the rail is trying to achieve. On some modules this is a measured value so it may not exactly match what was previously set via the setCurrent interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setCurrentLimit(const int microamps)

Set the rail current limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microamps – The current in micro-amps (1 == 1e-6A).

Returns:

Returns common entity return values

aErr getCurrentLimit(int %microamps)

Get the rail current limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microamps – The current in micro-amps (1 == 1e-6A).

Returns:

Returns common entity return values

aErr getTemperature(int %microcelsius)

Get the rail temperature.

Parameters:

microcelsius – The measured temperature associated with the rail in micro-Celsius (1 == 1e-6?C). The temperature may be associated with the module’s internal rail circuitry or an externally connected temperature sensors. Refer to the module datasheet for definition of the temperature measurement location and specific capabilities.

Returns:

Returns common entity return values

aErr getEnable(unsigned char %bEnable)

Get the state of the external rail switch. Not all rails can be switched on and off. Refer to the module datasheet for capability specification of the rails.

Parameters:

bEnable – true: enabled: connected to the supply rail voltage; false: disabled: disconnected from the supply rail voltage

Returns:

Returns common entity return values

aErr setEnable(const unsigned char bEnable)

Set the state of the external rail switch. Not all rails can be switched on and off. Refer to the module datasheet for capability specification of the rails.

Parameters:

bEnable – true: enable and connect to the supply rail voltage; false: disable and disconnect from the supply rail voltage

Returns:

Returns common entity return values

aErr getVoltage(int %microvolts)

Get the rail supply voltage. Rail voltage control capabilities vary between modules. Refer to the module datasheet for definition of the rail voltage capabilities.

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V) currently supplied by the rail. On some modules this is a measured value so it may not exactly match what was previously set via the setVoltage interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setVoltageSetpoint(const int microvolts)

Set the rail setpoint voltage. Rail voltage control capabilities vary between modules. Refer to the module datasheet for definition of the rail voltage capabilities.

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V) to be supply by the rail.

Returns:

Returns common entity return values

aErr getVoltageSetpoint(int %microvolts)

Get the rail setpoint voltage. Rail voltage control capabilities vary between modules. Refer to the module datasheet for definition of the rail voltage capabilities.

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V) the rail is trying to achieve. On some modules this is a measured value so it may not exactly match what was previously set via the setVoltage interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setVoltageMinLimit(const int microvolts)

Set the rail voltage minimum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V).

Returns:

Returns common entity return values

aErr getVoltageMinLimit(int %microvolts)

Get the rail voltage minimum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V).

Returns:

Returns common entity return values

aErr setVoltageMaxLimit(const int microvolts)

Set the rail voltage maximum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V).

Returns:

Returns common entity return values

aErr getVoltageMaxLimit(int %microvolts)

Get the rail voltage maximum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

microvolts – The voltage in micro-volts (1 == 1e-6V).

Returns:

Returns common entity return values

aErr getPower(int %milliwatts)

Get the rail supply power. Rail power control capabilities vary between modules. Refer to the module datasheet for definition of the rail power capabilities.

Parameters:

milliwatts – The power in milli-watts (1 == 1e-3W) currently supplied by the rail. On some modules this is a measured value so it may not exactly match what was previously set via the setPower interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setPowerSetpoint(const int milliwatts)

Set the rail setpoint power. Rail power control capabilities vary between modules. Refer to the module datasheet for definition of the rail power capabilities.

Parameters:

milliwatts – The power in milli-watts (1 == 1e-3W) to be supplied by the rail.

Returns:

Returns common entity return values

aErr getPowerSetpoint(int %milliwatts)

Get the rail setpoint power. Rail power control capabilities vary between modules. Refer to the module datasheet for definition of the rail power capabilities.

Parameters:

milliwatts – The power in milli-watts (1 == 1e-3W) the rail is trying to achieve. On some modules this is a measured value so it may not exactly match what was previously set via the setPower interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setPowerLimit(const int milliwatts)

Set the rail power maximum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

milliwatts – The power in milli-watts (1 == 1e-3W).

Returns:

Returns common entity return values

aErr getPowerLimit(int %milliwatts)

Get the rail power maximum limit setting. (Check product datasheet to see if this feature is available)

Parameters:

milliwatts – The power in milli-watts (1 == 1e-3W).

Returns:

Returns common entity return values

aErr getResistance(int %milliohms)

Get the rail load resistance. Rail resistance control capabilities vary between modules. Refer to the module datasheet for definition of the rail resistance capabilities.

Parameters:

milliohms – The resistance in milli-ohms (1 == 1e-3Ohms) currently drawn by the rail. On some modules this is a measured value so it may not exactly match what was previously set via the setResistance interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setResistanceSetpoint(const int milliohms)

Set the rail setpoint resistance. Rail resistance control capabilities vary between modules. Refer to the module datasheet for definition of the rail resistance capabilities.

Parameters:

milliohms – The power in milli-ohms (1 == 1e-3Ohms) to be drawn by the rail.

Returns:

Returns common entity return values

aErr getResistanceSetpoint(int %milliohms)

Get the rail setpoint resistance. Rail resistance control capabilities vary between modules. Refer to the module datasheet for definition of the rail resistance capabilities.

Parameters:

milliohms – The resistance in milli-ohms (1 == 1e-3Ohms) the rail is trying to achieve. On some modules this is a measured value so it may not exactly match what was previously set via the setResistance interface. Refer to the module datasheet to to determine if this is a measured or stored value.

Returns:

Returns common entity return values

aErr setKelvinSensingEnable(const unsigned char bEnable)

Enable or Disable kelvin sensing on the module. Refer to the module datasheet for definition of the rail kelvin sensing capabilities.

Parameters:

bEnable – enable or disable kelvin sensing.

Returns:

Returns common entity return values

aErr getKelvinSensingEnable(unsigned char %bEnable)

Determine whether kelvin sensing is enabled or disabled. Refer to the module datasheet for definition of the rail kelvin sensing capabilities.

Parameters:

bEnable – Kelvin sensing is enabled or disabled.

Returns:

Returns common entity return values

aErr getKelvinSensingState(unsigned char %state)

Determine whether kelvin sensing has been disabled by the system. Refer to the module datasheet for definition of the rail kelvin sensing capabilities.

Parameters:

state – Kelvin sensing is enabled or disabled.

Returns:

Returns common entity return values

aErr setOperationalMode(const unsigned char mode)

Set the operational mode of the rail. Refer to the module datasheet for definition of the rail operational capabilities.

Parameters:

mode – The operational mode to employ.

Returns:

Returns common entity return values

aErr getOperationalMode(unsigned char %mode)

Determine the current operational mode of the system. Refer to the module datasheet for definition of the rail operational mode capabilities.

Parameters:

mode – The current operational mode setting.

Returns:

Returns common entity return values

aErr getOperationalState(unsigned int %state)

Determine the current operational state of the system. Refer to the module datasheet for definition of the rail operational states.

Parameters:

state – The current operational state.

Returns:

Returns common entity return values

aErr clearFaults(void)

Clears the current fault state of the rail. Refer to the module datasheet for definition of the rail faults.

Returns:

Returns common entity return values