Page 3
The reader should consult National Instruments if errors are suspected. In no event shall National Instruments be liable for any damages arising out of or related to this document or the information contained in it.
Page 4
Conventions The following conventions are used in this manual: Square brackets enclose optional items—for example, [ response » The » symbol leads you through nested menu items and dialog box options to a final action. The sequence File»Page Setup»Options directs you to pull down the File menu, select the Page Setup item, and select Options from the last dialog box.
Page 6
Contents Appendix A Overview of the Calibration Constants Appendix B Function Reference Appendix C Function Constants Appendix D Technical Support Resources NI 54XX Calibration Procedure ni.com...
Chapter 1 Introduction—Document Scope Why Should You Calibrate? The characteristics of electronic components drift with time and temperature, which can affect output accuracy as the device ages. Calibration restores your device to NI standards. How Often Should You Calibrate? The output accuracy requirements of your application determine the calibration interval of your NI 54XX device.
Page 10
Chapter 1 Introduction—Document Scope Calibration Software The calibration procedure requires the latest version of the NI-DAQ driver on the calibration system. This driver configures and controls the NI 54XX devices. You can download NI-DAQ from the NI Web site, . NI-DAQ supports programming all NI signal ni.com/softlib.nsf sources using a number of languages, including LabVIEW, Measurement Studio, Microsoft Visual C++, and Microsoft Visual Basic.
DLL. You niArbCal must link to this library when building applications in Microsoft Visual C++ or National Instruments CVI. This is a header file for the accessible vxipnp\winnt(win95)\include\niArbCal.h functions in the DLL. niArbCal...
Introduction—Document Scope The NI-DAQ Function Reference Online Help includes detailed information on the driver functions. You can access the online help by clicking Start»Programs»National Instruments DAQ»NI-DAQ Help. The NI-DAQ User Manual provides instructions for installing and configuring National Instruments DAQ devices.
Page 14
Chapter 2 Verification The verification procedure for each of these specifications includes setting up, programming, and cleaning up. The setup routine described in the next section, Initializing Device for Verification, is the same for each specification you are verifying. For a diagram of the connectors referenced in the procedure that follows, see Figure 2-1.
Chapter 2 Verification Call to initiate signal generation. niFgen_InitiateGeneration() This function causes the function generator to leave its configuration state and enter its signal generation state. The only parameter required for this function is sessionHandle Measure the 0.0 V DC generated by your NI 54XX device at ARB OUT using the DMM.
Page 18
Chapter 2 Verification Call to select the niFgen_ConfigureStandardWaveform() channel to output a waveform. Set the following parameters: • vi—The output value that you obtained from sessionHandle function niFgen_init • Channel_Name— ”0” • Amplitude— , where = the largest possible peak-to-peak amplitude for the power meter.
Chapter 2 Verification 12. Call to close the instrument I/O session, destroy the niFgen_Close() instrument driver session and all of its properties, and release any memory resources the driver uses. The only parameter required for this function is sessionHandle Verifying Total Harmonic Distortion and Spurious Free Dynamic Range Using a spectrum analyzer, verify the spectral purity of your NI 54XX device by generating a 1 MHz sine wave and a 16 MHz sine wave.
Chapter 2 Verification • Waveform— NIFGEN_VAL_WFM_SINE • Start_Phase— Call to initiate signal generation. niFgen_InitiateGeneration() This function causes the function generator to leave its configuration state and enter its signal generation state. The only parameter required for this function is sessionHandle Choose the input attenuator setting of the spectrum analyzer such that the input mixer distortion does not limit the measurements.
Page 25
Chapter 3 Adjustment Table 3-1. Measuring Calibration Output Measurement Constant to Adjust Type of Measurement Output Connection Device A0–A6 DC voltage ARB OUT/VIDEO OUT A7–A9 Magnitude of a sinusoidal ARB OUT/VIDEO OUT voltage (either amplitude, peak-to-peak amplitude, or RMS value) Internal reference DC voltage ARB OUT/VIDEO OUT...
Chapter 3 Adjustment Adjusting Your NI 54XX—Procedural Overview To adjust your NI 54XX device, complete the following steps. You may also want to see the External Calibration examples in LabVIEW or C, which you can find in Table 1-3. Call to open the session using the following ni54xx_CalStart parameters:...
Page 29
Chapter 3 Adjustment Set the gain calibration DAC to zero by calling the function . Use the following parameters: ni54xx_SetGainDAC • sessionHandle—The handle of the calibration session for the device • DACValue— Generate a 0 V DC waveform by calling the function .
Page 31
Chapter 3 Adjustment Determining the Interactions of Gains and Offsets in the Main DAC and Gain Calibration DAC (Constants A3 and A4) To calculate constants, sweep the full range of the 12-bit main DAC (–2048 to 2047) by calling with the amplitude ni54xx_GenerateWaveform parameter set to correspond to the DC value of each DAC setting.
Page 33
Chapter 3 Adjustment Feed the measurements to . The ni54xx_CalAdjust measuredData are the new array of measurements, and the are the DAC actualData values corresponding to outputs (see Table 3-2). Call the function using the following parameters: ni54xx_CalAdjust • sessionHandle—The handle of the calibration session for the device •...
Page 35
Chapter 3 Adjustment Generate a full scale sine wave at 500 Hz by calling the function . Set the following parameters: ni54xx_GenerateWaveform • sessionHandle—The handle of the calibration session for the device • waveType— NI54XX_SINE • amplitudeInVolts— • frequencyInHz— Measure the outputs ( lowFrequencyAmplitude Enable the 10 dB attenuator by calling the function .
Page 37
Chapter 3 Adjustment 10. Call for A0. The should ni54xx_CalAdjust measuredData be an array of values. The first element should be the , and the second element should be offsetInResetState . Call the function offsetWithAnalogFilterEnabled using the following parameters: ni54xx_CalAdjust •...
Page 39
Chapter 3 Adjustment For x = (1, 2, 4, 8, 16, 32) Call the function, , using the following ni54xx_SetAttenuation parameters: • sessionHandle—The handle of the calibration session for the device • attenuation—x Measure the outputs ( attenuatedAmplitudes[] Call for A9_UNTERMINATED. The ni54xx_CalAdjust is an array of values corresponding to the outputs for measuredData...
Page 41
Chapter 3 Adjustment Set the offset calibration DAC to 0 by calling the function . Set the following parameters: ni54xx_SetOffsetDAC • sessionHandle—The handle of the calibration session for the device • DACValue— Set the gain calibration DAC to –4079 (the approximate value for a gain of 1) by calling the function .
Page 43
Chapter 3 Adjustment • waveType— NI54XX_SINE • amplitudeInVolts— • frequencyInHz— Measure the outputs, and store as the first element in the frequency responses array ( frequencyResponses[0] For x = (1000000, 2000000, …15000000, 16000000) Generate a full scale sine wave at frequency x by calling the function .
Page 45
Chapter 3 Adjustment D0 Constant Enable the analog filter by calling the function . Set the following parameters: ni54xx_SetAnalogFilter • sessionHandle—The handle of the calibration session for the device • filterState— NI54XX_ENABLE Generate a full scale (10 V) sine wave at 1000 Hz by calling the function .
Page 47
Chapter 3 Adjustment Try the new “best-guess” by calling the function . Set the following parameters: ni54xx_SetDutyCycle • sessionHandle—The handle of the calibration session for the device • dutyCycle— Measure the new duty cycle ( currentDutyCycle Set a 75% duty cycle by calling the function ni54xx_SetDutyCycle Set the following parameters: •...
Page 49
Chapter 3 Adjustment Set the gain and offset using ni54xx_SetAdjustedGainAndOffset with 0 offset and 0 attenuation, in the unterminated case. Use the following parameters: • sessionHandle—The handle of the calibration session for the device • offsetInVolts— • attenuationInDb— • terminationState— NI54XX_UNTERMINATED Initialize the VCXO calibration for normal mode by calling the function .
Page 51
Chapter 3 Adjustment • attenuationInDb— • terminationState— NI54XX_UNTERMINATED Initialize the VCXO calibration for M-PAL mode by calling the function . Set the following ni54xx_InitializeVCXOCalibration parameters: • sessionHandle—The handle of the calibration session for the device • type— NI54XX_SET_VCXO_PAL_M Set the VCXO with the current “best-guess” value (M-PAL mode) by calling the function .
Page 53
Chapter 3 Adjustment Set the VCXO with the current “best-guess” value (NTSC mode) by calling the function . Set the following ni54xx_CalibrateVCXO parameters: • sessionHandle—The handle of the calibration session for the device • type— NI54XX_SET_VCXO_NTSC_M Measure the new frequency ( currentFrequency While the |frequency –...
Page 55
Appendix A Overview of the Calibration Constants Table A-1. DC or Low-Frequency Gains and Offsets of Components within the Analog Channel (Continued) Constant Name Description The low frequency gain of the analog filter. The gain of the 10 dB attenuator in the analog channel. An array of constants corresponding to the gains of the six post-amplification Unterminated attenuators (1, 2, 4, 8, 16, 32 dB) when device is unterminated.
Page 58
Appendix B Function Reference ni54xx_CalStart Format __declspec(dllexport) long __stdcall ni54xx_CalStart( shortdevice, char *password, unsigned long *sessionHandle); Purpose Initiates a calibration session for the specified device. Parameters Name Description A number corresponding to the DAQ device number of the device device to be calibrated. The external adjustment password.
Page 60
Appendix B Function Reference ni54xx_CalEnd Format __declspec(dllexport) long __stdcall ni54xx_CalEnd(unsigned long *sessionHandle, unsigned long action); Purpose Closes the calibration session and either commits or discards the new constants that have been calculated. Parameters Name Description A pointer to the handle of the calibration session for the sessionHandle device, created with a call to ni54xx_CalStart...
Page 62
Appendix B Function Reference ni54xx_CalFetchDate Format __declspec(dllexport) long __stdcall ni54xx_CalFetchDate(unsigned long device, long area, long *month, long *day, long *year); Purpose Retrieves the date of the last calibration, either from the internal (self-calibration) or external (manual calibration) area. Parameters Name Description A number corresponding to the DAQ device number of the device...
Page 64
Appendix B Function Reference ni54xx_CalFetchMiscInfo Format __declspec(dllexport) long __stdcall ni54xx_CalFetchMiscInfo(unsigned long device, char *miscInfo); Purpose Retrieves four bytes of data from the external adjustment miscellaneous data area. Parameters Name Description A number corresponding to the DAQ device number of the device device to be calibrated.
Page 66
Appendix B Function Reference ni54xx_CalChangePassword Format __declspec(dllexport) long __stdcall ni54xx_CalChangePassword(unsigned long device, char *oldPassword, char *newPassword); Purpose Changes the password, which is needed to do a full external adjustment. Parameters Name Description A number corresponding to the DAQ device number of the device device to be calibrated.
Page 68
Appendix B Function Reference ni54xx_DeviceReset Format __declspec(dllexport) long __stdcall ni54xx_DeviceReset(unsigned long sessionHandle ); Purpose Resets the NI 54XX device and puts it in a default reset state. Parameter Name Description The handle of the calibration session for the device, created sessionHandle with a call to ni54xx_CalStart...
Page 70
Appendix B Function Reference ni54xx_SetAnalogFilter Format __declspec(dllexport) long __stdcall ni54xx_SetAnalogFilter(unsigned long sessionHandle, unsigned long filterState ); Purpose Enables or disables the analog filter of the device. Parameters Name Description The handle of the calibration session for the device, created sessionHandle with a call to ni54xx_CalStart Indicates whether to enable or disable the filter...
Page 72
Appendix B Function Reference ni54xx_SetOutputImpedance Format __declspec(dllexport) long __stdcall ni54xx_SetOutputImpedance(unsigned long sessionHandle, unsigned long impedance ); Purpose Sets the output impedance of the device (50 or 75 ohms). During calibration, the impedance should never be set to 75 ohms because the terminated case assumes a 50 ohm load. This requirement is true also for the NI 5431 devices.
Page 74
Appendix B Function Reference ni54xx_GenerateVideoWaveform Format __declspec(dllexport) long __stdcall ni54xx_GenerateVideoWaveform(unsigned long sessionHandle, unsigned long waveType, double amplitudeInVolts, double frequencyInHz, unsigned long videoMode); Purpose Causes the device to output a DC voltage or a sine wave with a specified amplitude and frequency.
Page 76
Appendix B Function Reference ni54xx_SetAdjustedGainAndOffset Format __declspec(dllexport) long __stdcall ni54xx_SetAdjustedGainAndOffset(unsigned long sessionHandle, double offsetInVolts, unsigned long attenuationInDb, unsigned long terminatedState ); Purpose Configures the device to output with a certain level of attenuation and a certain offset. It uses the calibration constants for the session (including those that have been changed during the session) to calculate the appropriate settings for the calibration DACs.
Page 78
Appendix B Function Reference ni54xx_SetOffsetDAC Format __declspec(dllexport) long __stdcall ni54xx_SetOffsetDAC(unsigned long sessionHandle, long DACValue ); Purpose Sets the offset calibration DAC to the specified value, which affects the pre-attenuation offset of the signal. Parameters Name Description The handle of the calibration session for the device, created sessionHandle with a call to ni54xx_CalStart...
Page 80
Appendix B Function Reference ni54xx_SetCalibrationMux Format __declspec(dllexport) long __stdcall ni54xx_SetCalibrationMux(unsigned long sessionHandle, unsigned long muxSetting ); Purpose Determines what value is read by a call to , the ground vs. the ground, ReadCalibrationADC the reference vs. the reference, the output vs. the ground, or the output vs. the reference. You should only set to output vs.
Page 82
Appendix B Function Reference ni54xx_InitializeVCXOCalibration Format __declspec(dllexport) long __stdcall ni54xx_InitializeVCXOCalibration(unsigned long sessionHandle, unsigned long type); Purpose The VCXO is calibrated iteratively. Call this function before calibrating the VCXO because it sets many internal variables to appropriate values for the calibration. Parameters Name Description...
Page 85
Appendix C Function Constants NI54XX_STATUS_BAD_PARAMETER_1 NI54XX_STATUS_BAD_PARAMETER_2 NI54XX_STATUS_BAD_PARAMETER_3 NI54XX_STATUS_BAD_PARAMETER_4 NI54XX_STATUS_BAD_PARAMETER_5 NI54XX_STATUS_BAD_PARAMETER_6 NI54XX_STATUS_UNKNOWN_ERROR Constants that are Option Parameters for the ni54xx_CalEnd Function NI54XX_ABORT NI54XX_COMMIT_CONSTANTS Constants Used as Parameters in Functions that Control the Device NI54XX_50_OHMS NI54XX_75_OHMS NI54XX_DISABLE NI54XX_ENABLE NI54XX_UNTERMINATED NI54XX_TERMINATED NI54XX_DC NI54XX_SINE NI54XX_PAL_M NI54XX_NTSC_M NI54XX_GND_VS_GND...
Page 87
Technical Support Resources Web Support National Instruments Web support is your first stop for help in solving installation, configuration, and application problems and questions. Online problem-solving and diagnostic resources include frequently asked questions, knowledge bases, product-specific troubleshooting wizards, manuals, drivers, software updates, and more. Web support is available through the Technical Support section of .
Page 88
Appendix D Technical Support Resources Worldwide Support National Instruments has offices located around the world to help address your support needs. You can access our branch office Web sites from the Worldwide Offices section of . Branch office Web sites provide ni.com...