GX5961, GX5964
Programs the high-powered chassis power supply VCC and VEE voltage levels.
GtDio6xPowerSupplySetVoltageRails (nHandle, dVcc, dVee, pnStatus)
Name |
Type |
Comments |
nHandle |
SHORT |
Session identifier:● Board handle is used when communicating with the hardware. The Board handle session identifier is returned by calling GtDio6xInitialize or GtDio6xSetupInitialization. |
dVcc |
DOUBLE
|
Used to specify the positive voltage rail level to be program. The dVcc may be between 10V to +28V. The maximum voltage swing between VCC and VEE may not exceed 33.5 V. |
dVee |
DOUBLE |
Used to specify the negative voltage rail level to be program. The Vee voltage must may not exceed 18V and must not be less than 3V. The maximum voltage swing between VCC and VEE may not exceed 33.5 V. |
pnStatus |
LONG |
Returned status: 0 on success, negative value on failure. |
The Marvin Test Solutions Gx7015A and Gx7005A high-powered chassis include a built in, user programmable power supply system. They use a special backplane to deliver high-power to the GX5055 pin electronics via the J5 PXI connector. The power supply is made up of two VCC high rail modules, one VEE low rail module, and one VDD module.
The GX5961 and GX5964 are capable of controlling these modules by setting their voltages, and monitoring their voltage and current output.
The following example:
1. Check if high-power supply is supported.
2. Sets the power connection to the backplane and returns the power connection settings
3. Enables the high-powered chassis power supply.
4. Read the power supply’s status, if fault is detected, then call GtDio6xPowerSupplyResetFault.
5. Program VCC voltage rail to 18.0V and VEE to 14.0.
6. Measure each of the 4 voltages
7. Measure each of the power supply current
SHORT nStatus;
SHORT nPowerState;
DWORD dwStatus;
DOUBLE dVoltage, dCurrent;
DOUBLE dVcc, dVee;
BOOL bSupported;
GtDio6xPowerSupplyIsSupported(nHandle, &bSupported, &nStatus);
If (bSupported)
{
GtDio6xPowerSetSource (nHandle, GTDIO6X_POWER_BACKPLANE, &nStatus);
GtDio6xPowerGetSource (nHandle, &nPowerState, &nStatus);
GtDio6xPowerSupplySetState(nHandle, DIO_ENABLED, &nStatus);
GtDio6xPowerSupplySetVoltageRails (nHandle, 18.0V, 14.0 pnStatus)
GtDio6xPowerSupplyGetInterfaceStatus (nHandle, &dwStatus, &nStatus);
if (dwStatus & 0x1F9000) // detected any of the faults
GtDio6xPowerSupplyResetFault(nHandle, &nStatus);
Read back the voltages:
GtDio6xPowerSupplyGetVoltageRails (nHandle, &dVcc, &dVee, pnStatus)
Measure power supplies 4 voltages:
GtDio6xPowerSupplyGetVoltage (nHandle, GTDIO6X_POWER_SUPPLY_VCC, &dVoltage, &nStatus);
GtDio6xPowerSupplyGetVoltage (nHandle, GTDIO6X_POWER_SUPPLY_VCC2, &dVoltage, &nStatus);
GtDio6xPowerSupplyGetVoltage (nHandle, GTDIO6X_POWER_SUPPLY_VEE, &dVoltage, &nStatus);
GtDio6xPowerSupplyGetVoltage (nHandle, GTDIO6X_POWER_SUPPLY_VDD, &dVoltage, &nStatus);
Measure power supplies 4 voltage railes currents:
GtDio6xPowerSupplyGetCurrent (nHandle, GTDIO6X_POWER_SUPPLY_VCC, &dCurrent, &nStatus);
GtDio6xPowerSupplyGetCurrent (nHandle, GTDIO6X_POWER_SUPPLY_VCC2, &dCurrent, &nStatus);
GtDio6xPowerSupplyGetCurrent (nHandle, GTDIO6X_POWER_SUPPLY_VEE, &dCurrent, &nStatus);
GtDio6xPowerSupplyGetCurrent (nHandle, GTDIO6X_POWER_SUPPLY_VDD, &dCurrent, &nStatus);
}
GtDio6xPowerSupplyIsSupported, GtDio6xPowerSupplyResetFault, GtDio6xPowerSupplySetState, GtDio6xPowerSupplyGetVoltage, GtDio6xPowerSupplySetVoltageRails, GtDio6xGetErrorString