niDCPower_CreateAdvancedSequenceCommitStepWithChannels
- Updated2025-10-06
- 3 minute(s) read
Creates a Commit step in the Active advanced sequence. A Commit step configures channels to a user-defined known state before starting the advanced sequence.
Syntax
ViStatus _VI_FUNC niDCPower_CreateAdvancedSequenceCommitStepWithChannels(ViSession vi, ViConstString channelName, ViBoolean setAsActiveStep)
Remarks
You can specify the Active advanced sequence using the NIDCPOWER_ATTR_ACTIVE_ADVANCED_SEQUENCE attribute.
When you create an advanced sequence step, each attribute you passed to the niDCPower_CreateAdvancedSequenceWithChannels function is reset to its default value for the new step. To configure the step, you must first designate the new step as the Active step using the NIDCPOWER_ATTR_ACTIVE_ADVANCED_SEQUENCE attribute or the setAsActiveStep parameter of this function. Once the step is Active, use set functions to configure new values for the step.
NI-DCPower uses the terms "source" and "output". However, while sinking with electronic loads and SMUs these correspond to "sinking" and "input", respectively.
Support for this Function
This function is not supported on all devices. Refer to Supported Functions by Device for more information about supported devices.
You must set the source mode to NIDCPOWER_VAL_SEQUENCE to use this function.
Using the niDCPower_SetSequence function with Advanced Sequence functions for the same channel in the same session is unsupported.
When a Commit step exists in the Active advanced sequence, you cannot set the niDCPower_ConfigureOutputFunction function to NIDCPOWER_VAL_PULSE_VOLTAGE or NIDCPOWER_VAL_PULSE_CURRENT in either the Commit step (-1) or step 0.
Details
When Does the Commit Step Run in a Sequence?
The driver applies the Commit step to a channel when it transitions to the Committed state. After the driver applies the Commit step to channels, the driver waits until the source delay has elapsed before waiting for the Start trigger.
You can provide a specific source delay for the Commit step if you set NIDCPOWER_ATTR_SOURCE_DELAY as one of the attributes to be configured with the niDCPower_CreateAdvancedSequenceWithChannels function.
If you call niDCPower_InitiateWithChannels while a channel is in the Uncommitted state, the channel implicitly moves through the Committed state before moving to the Running state.
Differences Between the Commit Step and Other Steps
The source unit does not wait on any triggers before running the Commit step.
The source unit does not emit a Source Complete Event when the Commit step is complete.
No measurements are taken in the Commit step, therefore you cannot set the NIDCPOWER_ATTR_APERTURE_TIME, NIDCPOWER_ATTR_MEASURE_RECORD_LENGTH, and NIDCPOWER_ATTR_DC_NOISE_REJECTION attributes in the Commit step.
The NIDCPOWER_ATTR_SEQUENCE_STEP_DELTA_TIME attribute does not apply to the Commit step, and you cannot configure the NIDCPOWER_ATTR_SEQUENCE_STEP_DELTA_TIME attribute in the Commit step.
Related Topics:
Parameters
| Name | Direction | Type | Description |
|---|---|---|---|
| vi | [in] | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
| channelName | [in] | ViConstString | Specifies the channel(s) to use. Specify the channel(s) using the form PXI1Slot3/0,PXI1Slot3/2-3,PXI1Slot4/2-3 or PXI1Slot3/0,PXI1Slot3/2:3,PXI1Slot4/2:3, where PXI1Slot3 and PXI1Slot4 are instrument resource names and 0, 2, and 3 are channels. If you pass "" for this control, all channels in the session are used. |
| setAsActiveStep | [in] | ViBoolean | Specifies that this current step in the active sequence is active. |
Returns
Reports the status of this operation. To obtain a text description of the status code, call niDCPower_error_message. To obtain additional information concerning the error condition, call niDCPower_GetError. The general meaning of the status code is as follows:
Value | Meaning |
|---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |