Page 2
FAR 52.227-19 (June 1987) or any equivalent agency regulation or contract clause. Use, duplication or disclo- sure of Software is subject to Agilent Tech- nologies’ standard commercial license terms, and non-DOD Departments and Agencies of the U.S. Government will...
Page 4
In This Manual This manual describes the installation and reference information of the VXIplug&play driver for the Agilent B1500, and consists of the following chapters: • Chapter 1, “Installation” Describes the installation information of the B1500 VXIplug&play driver. • Chapter 2, “Driver Functions”...
Minimum disk space 2 MB for the Agilent B1500 VXIplug&play driver NOTE For the latest system requirements, go to www.agilent.com and type in B1500A in the Search field at the top of the page. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
4. Install the programming software. Follow the setup program instructions. 5. Install the Agilent B1500 VXIplug&play driver. a. Insert the Agilent B1500 Software CD-ROM to the drive connected to your computer. b. Execute setup.exe or \Pnp\B1500.exe on the CD-ROM. The setup program installs the driver. See Table 1-1 for the installed files.
Page 15
Library for Borland C++Builder <install folder>\Winnt\lib\bc\agb1500_32.lib Library for Borland C++Builder <install folder>\Winnt\lib\msc\agb1500.lib Library for Microsoft C++ <install folder>\Winnt\lib\msc\agb1500_32.lib Library for Microsoft C++ a. Execute echo %VXIPNPPATH% on the Command Prompt to know <install folder>. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Auto-discover The factory shipment initial values are 17, No, and No, respectively. 4. If the Reboot Required dialog box is displayed, reboot the B1500A by clicking the Reboot Now button. If the Reboot Required dialog box is not displayed, open the Start EasyEXPERT button by selecting the Start EasyEXPERT menu in the Windows start menu.
Page 18
Driver Functions This chapter is the complete reference of VXIplug&play driver for the Agilent B1500. • “Function List” • “Parameters” • “Status Code” • “Function Reference” Additional information NOTE See the on-line help of the VXIplug&play drivers, or open the Agb1500.hlp file in the directory that the driver is installed.
Driver Functions Function List Table 2-1 lists all the driver functions for the Agilent B1500. You will see a brief description of the functions in the table. Table 2-1 B1500 Driver Functions Category Function Description Initialize agb1500_init Initializes the software connection with the B1500.
Page 20
Applies DC current or voltage from the specified SMU. measurement agb1500_setPiv Sets the pulsed sweep source. agb1500_setSweepSync Sets the synchronous sweep source. agb1500_stopMode Sets automatic sweep abort. agb1500_sweepPiv Performs pulsed sweep measurement. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 21
Clears the source channels for the sampling measurement. Breakdown agb1500_force Applies DC current or voltage from the specified SMU. voltage agb1500_setBdv Sets the quasi pulse source. measurement agb1500_measureBdv Performs quasi pulsed spot breakdown voltage measurement. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 22
Sets the automatic error checking. agb1500_errorQueryDetect_Q Queries for the automatic error checking setting. agb1500_dcl Sends the Device Clear. agb1500_readStatusByte_Q Reads the B1500 status byte. agb1500_opc_Q Checks the B1500 operation completion status. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 23
Sends a command to read 32 bit integer array response. agb1500_cmdReal64_Q Sends a command to read 64 bit real response. agb1500_cmdReal64Arr_Q Sends a command to read 64 bit real array response. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
SCUU connected to the MFCMU in the slot channel. a. Slot number 1 to 10 have been assigned to the bottom slot to the top slot respectively. b. HPSMU occupies two slots. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 25
For the functions to start or execute the measurement that uses the pulse source, set 0 or positive value to set the minimum range that covers the compliance value automatically. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 26
10E-3 0 to ± 200 ±50E-3 a. Parameter name may be base, bias, peak, value, start, stop, and so on. b. This column shows the maximum value of the current compliance. 2-10 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 27
± 500E-3 ±40 to ± 1 ±20 a. Parameter name may be base, bias, peak, value, start, stop, and so on. b. This column shows the maximum value of the voltage compliance. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-11...
Page 28
Q (quality factor) Rp (parallel resistance, Ω) Lp (parallel inductance, H) Rs (series resistance, Ω) Ls (series inductance, H) Ls (series inductance, H) D (dissipation factor) Ls (series inductance, H) Q (quality factor) 2-12 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 29
10 kΩ 30000 ≤ range < 100000 30 kΩ 30 kΩ 100000 ≤ range < 300000 100 kΩ 300000 ≤ range 300 kΩ a. Available measurement ranges depend on the measurement frequency. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-13...
Driver Functions Status Code After measurement is performed, the Agilent B1500 returns a status code to notify you if the measurement has been completed successfully. The status code will be returned with the measurement data by the following functions that perform measurement.
Page 31
Target value was not found within the search range. (for agb1500_readData) Detection time was too long. (for agb1500_measureBdv and agb1500_measureIleak) Search measurement was automatically stopped. (for agb1500_readData) Output slew rate was too late. (for agb1500_measureBdv and agb1500_measureIleak) Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-15...
Driver Functions agb1500_abortMeasure Function Reference This section describes the functions of VXIplug&play driver for the Agilent B1500. The functions are appeared in alphabetical order. agb1500_abortMeasure This function aborts the B1500’s present operation, such as the measurement executed by the agb1500_startMeasure function, the dc bias output by the agb1500_force function, and so on.
ASU output. This function is effective for the specified channel. When the Agilent B1500 is turned on, the ASU output will be connected to the SMU connector side, but the HRSMU will not be enabled yet. After this function is executed with path=2, the HRSMU specified by channel cannot be used.
To use the ASU, connect it to the correct HRSMU properly before turning the Agilent B1500A on. For the connection, see User’s Guide. The ASU will add the connection switch function described above to the B1500A and the 1 pA measurement range to the HRSMU. Use the agb1500_asuRange function to enable/disable the 1 pA range for the auto ranging operation.
It is generally a good programming habit to close the instrument handle when the program is done using the instrument. Syntax ViStatus _VI_FUNC agb1500_close(ViSession vi); Parameters Instrument handle returned from agb1500_init( ). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-19...
Int16 or 32 can be passed as the Int16 will be promoted. Syntax ViStatus _VI_FUNC agb1500_cmdInt(ViSession vi, ViString cmd_str, ViInt32 value); Parameters Instrument handle returned from agb1500_init( ). cmd_str Instrument command (cannot exceed 256 bytes in length). 2-20 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
This function passes the cmd_str string to the instrument. This function expects a response that is a definite arbitrary block of 64 bit real. You specify the cmd_str and size parameters, and get result[ ] and count. 2-22 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
This function returns the error numbers and corresponding error messages in the error queue of an instrument. See Agilent B1500 User’s Guide for a listing of the instrument error numbers and messages. Instrument errors may occur when you places the instrument in a bad state such as sending an invalid sequence of coupled commands.
To execute this function, open the measurement terminals at the end of the device side. Syntax ViStatus _VI_FUNC agb1500_execCmuAdjust(ViSession vi, ViInt32 channel, ViPInt16 result); Parameters Instrument handle returned from agb1500_init( ). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-25...
Reference value of the standard. The value must be the value for the secondary parameter (ex: X in the R-X measurement mode). Numeric expression. result Execution result of this function. Returned value. 2-26 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Reference value of the standard. This must be the conductance value. Numeric expression. result Execution result of this function. Returned value. 0: Passed. No failure detected. 1: Failed. 2: Aborted. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-27...
0: Passed. No failure detected. 1: Failed. 2: Aborted. agb1500_force This function specifies the dc current/voltage source, and forces the output immediately. To stop the output, use the agb1500_force function with zero output. 2-28 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Slot number of the slot that installs the MFCMU to be used. See Table 2-2. channel=-1 detects the slot automatically. value Oscillator level of the output AC voltage (in V). Numeric expression. 10 mV (initial setting) to 250 mV, 1 mV step Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-29...
If the agb1500_init function encounters an error, then the value of the vi output parameter will be VI_NULL. Syntax ViStatus _VI_FUNC agb1500_init(ViRsrc InstrDesc, ViBoolean id_query, ViBoolean do_reset, ViPSession vi); Parameters InstrDesc Instrument description. Examples; GPIB0::1::INSTR. 2-30 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Before executing this function, the agb1500_setIleak function must be executed. Syntax ViStatus _VI_FUNC agb1500_measureIleak(ViSession vi, ViInt32 channel, ViInt32 interval, ViPReal64 value, ViPInt32 status); Parameters Instrument handle returned from agb1500_init( ). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-31...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-32 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
2-14. To disable the status data output, set 0 (NULL pointer) instead. time Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-33...
Page 51
Sweep source setup data (voltage). md[n]: Measurement data (current). st[n]: Status for the md[n] data. tm[n]: Time stamp data (measurement start time) for the md[n] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-35...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-36 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 53
Status for the md[2*n+1] data. tm[2*n]: Time stamp data (measurement start time) for the md[2*n] data. tm[2*n+1]: Time stamp data (measurement start time) for the md[2*n+1] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-37...
8: Capacitance measurement data 9: Dissipation factor measurement data 10: Quality factor measurement data 11: Inductance measurement data 12: Phase measurement data (radian) 13: Phase measurement data (degree) 14: Frequency data 2-38 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Instrument handle returned from agb1500_init( ). channel Slot number of the slot that installs the SMU/MFCMU to return the channel settings. See Table 2-2. channel=0 specifies all modules. channel=-1 detects the CMU slot automatically. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-39...
0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-41...
Page 58
Status for the md[2*n] data. st[2*n+1]: Status for the md[2*n+1] data. tm[2*n]: Time stamp data for the md[2*n] data. tm[2*n+1]: Time stamp data for the md[2*n+1] data. where, n = 0 to 10 (integer). 2-42 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
1: Enables the indicator. Initial setting. To use SCUU NOTE Before turn the Agilent B1500 on, connect the SCUU to the MFCMU and two MPSMU/HRSMUs properly. The SCUU is used to switch the module (SMU or MFCMU) connected to the DUT.
This function is available for the Agilent B1500 installed with the multi frequency capacitance measurement unit (MFCMU) and the SMU CMU unify unit (SCUU). To use the SCUU, connect it to the MFCMU and two SMUs (MPSMU or HRSMU) correctly.
SMU installed in the slot numbered slot-2. To use SCUU NOTE Before turn the Agilent B1500 on, connect the SCUU to the MFCMU and two MPSMU/HRSMUs properly. The SCUU is used to switch the module (SMU or MFCMU) connected to the DUT.
Slot number of the slot that installs the SMU used to perform measurement. See Table 2-2. Set 0 to select all SMUs. A/D converter type. 0 (high-speed) or 1 (high-resolution). 2-46 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Current compliance (in A). See Table 2-4. hold Hold time (in seconds). 0 to 655.35 s, 0.01 s resolution. delay Delay time (in seconds). 0 to 6.5535 s, 0.0001 s resolution. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-47...
0.1 Hz (100 kHz to), or 1 Hz (1 MHz to 5 MHz). agb1500_setCmuInteg This function sets the number of averaging samples or the averaging time set to the A/D converter of the MFCMU. 2-48 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
3: Double-Linear sweep 4: Double-Log sweep start, stop Start or stop voltage (in V). Numeric expression. start and stop must have the same polarity for log sweep. 0 (initial setting) to ±100 V Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-49...
And the source stops the settling detection and keeps the output when the following condition a or b occurs. After the delay time, the measurement channel starts leakage current measurement. Condition: a. Quasi-pulse source reaches it current compliance setting. 2-50 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
0.001 to 20.0 VA (for HPSMU) Setting resolution: 0.001 VA agb1500_setLoadCorrMode This function sets the CMU load correction function ON or OFF. The agb1500_execLoadCorr function must be executed before this function. 2-52 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
(second synchronous sweep source), ..., or 10 for the tenth sweep source (ninth synchronous sweep source). channel Slot number of the slot that installs the SMU to be used. See Table 2-2. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-53...
For the staircase sweep with pulsed bias measurements, the pulse output synchronizes with the staircase sweep output by the agb1500_setIv function. 2-54 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 71
Measurement channel always uses the high-speed A/D converter, and performs measurement so that the pulse width and pulse period are kept. The integration time is automatically set by the Agilent B1500, and you cannot change. The agb1500_setAdc and agb1500_setAdcType settings are ignored. Also the timing parameters of the agb1500_setIv function are also ignored.
Measurement channel always uses the high-speed A/D converter, and performs measurement so that the pulse width and pulse period are kept. The integration time is automatically set by the Agilent B1500, and you cannot change. The agb1500_setAdc and agb1500_setAdcType settings are ignored. Also the timing parameters of the agb1500_setIv function are also ignored.
-0.09 to -0.0001 s, resolution 0.0001 s. base_hold Hold time of the base value output until the bias value output. Numeric expression. in seconds. 0 (initial setting) to 655.35 s, resolution 0.01 s. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-57...
Page 74
Each channel controls the output simultaneously. 2. base_hold seconds later, the source channels change the output to the bias value. The channels keep the value until the end of the sampling measurement. 2-58 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
For the log sampling, the B1500A holds only the data that can be plotted on the log scale in the same distance as close as possible. Only the held data is counted in the number of measurement result data.
Slot number of the slot that installs the MFCMU to be used. See Table 2-2. channel=-1 detects the slot automatically. mode 0: CMU short correction function ON. 1: CMU short correction function OFF. 2-60 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Or, set 2 if the function sets the voltage output mode. range Output ranging mode. 0 (auto) or positive value (limited auto). start Sweep start value (in A or V). stop Sweep stop value (in A or V). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-61...
Page 79
= agb1500_spotCmuMeas(vi, ch, mm, mr, &md[0], &st[0], &mon[0], &stmon[0], &tm); For the above example, the array variables md[], st[], mon[], and stmon[] will contain the following data. md[0]: Primary parameter measurement data (ex: Cp). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-63...
2-14. To disable the status data output, set 0 (NULL pointer) instead. time Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead. 2-64 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
For meas_type=3, 4, 5, 9, 17, or 18, only one measurement channel can be set. For meas_type=14 or 15, set 0 (NULL pointer) instead of channel [ ]. mode[ ] Measurement mode. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-65...
Instrument handle returned from agb1500_init( ). stop Automatic abort function. 0 (disable) or 1 (enable). last_mode Output after measurement. 1 (start value or base value) or 2 (stop value or bias value). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-67...
0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-68 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 85
MFCMU monitor data (DC bias monitor data). stmon[2*n]: Status for the mon[2*n] data. stmon[2*n+1]: Status for the mon[2*n+1] data. tm[n]: Time stamp data (measurement start time) for the md[2*n] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-69...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-70 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 87
Sweep source setup data (voltage). md[n]: Measurement data (current). st[n]: Status for the md[n] data. tm[n]: Time stamp data (measurement start time) for the md[n] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-71...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-72 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 89
Status for the md[2*n+1] data. tm[2*n]: Time stamp data (measurement start time) for the md[2*n] data. tm[2*n+1]: Time stamp data (measurement start time) for the md[2*n+1] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-73...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-74 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 91
Sweep source setup data (voltage). md[n]: Measurement data (current). st[n]: Status for the md[n] data. tm[n]: Time stamp data (measurement start time) for the md[n] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-75...
2-14. To disable the status data output, set 0 (NULL pointer) instead of array. time[ ] Time stamp data (measurement start time). Returned data. To disable the time stamp data output, set 0 (NULL pointer) instead of array. 2-76 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 93
Sweep source setup data (voltage). md[n]: Measurement data (current). st[n]: Status for the md[n] data. tm[n]: Time stamp data (measurement start time) for the md[n] data. where, n = 0 to 10 (integer). Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 2-77...
Instrument handle returned from agb1500_init( ). channel Slot number of the SMU/MFCMU to set to the zero output. See Table 2-2. channel=0 specifies all modules. channel=-1 detects the CMU slot automatically. 2-78 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 96
Programming Examples for Visual Basic Users This chapter explains programming examples to perform the following measurements using the Agilent B1500 and the B1500 VXIplug&play driver, and consists of the following sections. • “Programming Basics” • “High Speed Spot Measurement” •...
Programming Examples for Visual Basic Users Programming Basics Programming Basics This section provides the basic information for programming using the Agilent B1500 VXIplug&play driver. • “To Create Your Project Template” • “To Create Measurement Program” To Create Your Project Template This section explains how to create a project template by using Microsoft Visual Basic.
Page 98
19 to 23 Resets the Agilent B1500, sets the driver I/O time out to 60 seconds, and enables the automatic instrument error checking. Also opens a message box to confirm start of measurement.
Page 99
End Sub Line Description Disables the software connection with the Agilent B1500. Calls the check_err subprogram to check if an error status is returned for the line 30. 32 to 33 Opens a message box to confirm end of program.
Step 4. Launch Visual Basic. Step 5. Open the project (e.g. \test\dev_a\spot_id). Step 6. Open the form that contains the template code as shown in Table 3-1. On the code window, complete the perform_meas subprogram. Then use the Agilent B1500 VXIplug&play driver functions: •...
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 102
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the display_data subprogram (next page) to display measurement data. End of the spot_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 103
Or displays error message on a message box if the status is abnormal. End of the display_data subprogram. Measurement Id = 4.0565 (mA) Result Example Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Disables measurement channels. 11 and 16 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-10 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 105
17 to 28 Declares variables used to set the measurement channels, and defines the value. 30 to 32 Declares variables used to keep the measurement data, status data, and time stamp data. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-11...
Page 106
Calls the check_err subprogram (shown in Table 3-1) to check if and 46 an error status is returned for the previous line. Calls the display_data subprogram (next page) to display measurement data. End of the mspot_meas subprogram. 3-12 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 107
End of the display_data subprogram. Measurement Ic = 3.808 (mA) Time = 0.061(sec) Result Example Ib = 0.01883 (mA) Time = 0.0636(sec) hfe = 202.230483271375 Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-13...
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-14 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 109
Sets SMU filter off for the pulsed bias channel, and sets the pulsed bias source. 25 to 27 Applies voltage to device. Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-15...
Page 110
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the display_data subprogram (next page) to display measurement data. End of the spot_meas subprogram. 3-16 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 111
Or displays error message on a message box if the status is abnormal. End of the display_data subprogram. Measurement Id = 4.075 (mA) Result Example Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-17...
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-18 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 113
3 to 30 Declares variables, and defines the value. 33 to 43 Declares variables used to keep source data, measurement data, status data, and time stamp data. Also defines array size. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-19...
Page 114
58 to 59 Declares a variable, and defines the value. This variable is used for the output value of the secondary sweep source. Sets the array counter i to 0. 3-20 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 115
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the save_data subprogram (next page) to save measurement data. End of the sweep_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-21...
Page 116
Displays measurement data on a message box. If Yes is clicked on the message box, performs the sweep_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the save_data subprogram. 3-22 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 117
2,0.3,4.178,0.2168,0 2,0.6,7.9075,0.2182,0 2,0.9,11.193,0.2197,0 2,1.2,14.035,0.2232,0 2,1.5,16.49,0.2242,0 2,1.8,18.59,0.2255,0 2,2.1,20.44,0.2265,0 2,2.4,22.095,0.2277,0 2,2.7,23.575,0.229,0 2,3,24.94,0.2301,0 3,0,0.00050875,0.3391,0 3,0.3,5.0385,0.3468,0 3,0.6,9.6655,0.3483,0 3,0.9,13.88,0.3517,0 3,1.2,17.65,0.353,0 3,1.5,21.005,0.354,0 3,1.8,23.935,0.3554,0 3,2.1,26.515,0.3564,0 3,2.4,28.775,0.3577,0 3,2.7,30.77,0.359,0 3,3,32.575,0.3601,0 Data save completed. Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-23...
Page 118
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-24 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 119
3 to 28 Declares variables, and defines the value. 30 to 38 Declares variables used to keep source data, measurement data, status data, and time stamp data. Also defines array size. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-25...
Page 120
Calls the save_data subprogram to save measurement data. Or, displays a message box if the number of returned data is not equal to the nop value. End of the sweep_meas subprogram. 3-26 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 121
Displays measurement data on a message box. If Yes is clicked on the message box, performs the sweep_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the save_data subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-27...
Page 122
Measurement Vg (V), Id (mA), Time (sec), Status 0,-0.000098485,0.0714,0 Result Example 0.3,2.338,0.0901,0 0.6,4.9295,0.0921,0 0.9,7.7645,0.0938,0 1.2,10.8095,0.0951,0 1.5,14.05,0.0985,0 1.8,17.465,0.1001,0 2.1,21.045,0.1016,0 2.4,24.755,0.1028,0 2.7,28.59,0.1043,0 3,32.54,0.1058,0 Data save completed. Do you want to perform measurement again? 3-28 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 123
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-29...
Page 124
3 to 28 Declares variables, and defines the value. 30 to 38 Declares variables used to keep source data, measurement data, status data, and time stamp data. Also defines array size. 3-30 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 125
Calls the save_data subprogram to save measurement data. Or, displays a message box if the number of returned data is not equal to the nop value. End of the sweep_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-31...
Page 126
Displays measurement data on a message box. If Yes is clicked on the message box, performs the sweep_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the save_data subprogram. 3-32 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 127
Measurement Vg (V), Id (mA), Time (sec), Status 0,-0.000117215,0.0715,0 Result Example 0.3,2.335,0.0904,0 0.6,4.928,0.092,0 0.9,7.767,0.0937,0 1.2,10.812,0.0953,0 1.5,14.045,0.0987,0 1.8,17.465,0.1,0 2.1,21.045,0.1015,0 2.4,24.765,0.103,0 2.7,28.6,0.1046,0 3,32.555,0.1058,0 Data save completed. Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-33...
Disables measurement channels. 11 and 16 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-34 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 129
Beginning of the sweep_meas subprogram. 3 to 30 Declares variables used to set the source channels, and defines the value. 32 to 41 Declares variables used to set the measurement channels, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-35...
Page 130
Sets the specified port to the zero output state. 55, 60, 63, and 66 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. 3-36 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 131
Next i Line Description Beginning of the save_data subprogram. 3 to 5 Declares variables, and defines the value. 7 to 10 Creates data to be saved and displayed on a message box. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-37...
Page 132
Vb (V), Ib (mA), Ic (mA), Time_b (sec), Time_c (sec), Status_b, Result Example Status_c 0.3,0,-0.005,0.0568,0.1427,0,0 0.35,0,-0.005,0.2288,0.3147,0,0 0.4,0,-0.005,0.4008,0.4867,0,0 0.45,0,-0.005,0.5728,0.6587,0,0 0.5,0,0,0.7448,0.8306,0,0 0.55,0.0001,0.015,0.9168,1.0027,0,0 0.6,0.0005,0.085,1.0888,1.1746,0,0 0.65,0.00305,0.605,1.2608,1.3467,0,0 0.7,0.01915,3.89,1.4328,1.5186,0,0 0.75,0.09975,19.625,1.6048,1.6906,0,0 0.8,0.34745,59.38,1.7768,1.8626,0,0 Data save completed. Do you want to perform measurement again? 3-38 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 133
Disables measurement channels. 11 and 16 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-39...
Page 134
Beginning of the sweep_meas subprogram. 3 to 30 Declares variables used to set the source channels, and defines the value. 32 to 41 Declares variables used to set the measurement channels, and defines the value. 3-40 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 135
Sets the specified port to the zero output state. 55, 60, 63, and 66 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-41...
Page 136
Next i Line Description Beginning of the save_data subprogram. 3 to 5 Declares variables, and defines the value. 7 to 10 Creates data to be saved and displayed on a message box. 3-42 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 137
Vb (V), Ib (mA), Ic (mA), Time_b (sec), Time_c (sec), Status_b, Result Example Status_c 0.3,0,-0.005,0.057,0.057,0,0 0.35,0,-0.005,0.1434,0.1434,0,0 0.4,0,-0.005,0.23,0.23,0,0 0.45,0,-0.005,0.3164,0.3164,0,0 0.5,0,-0.005,0.403,0.403,0,0 0.55,0.0001,0.01,0.489,0.489,0,0 0.6,0.0005,0.085,0.5754,0.5754,0,0 0.65,0.00305,0.595,0.662,0.662,0,0 0.7,0.0191,3.855,0.7484,0.7484,0,0 0.75,0.0993,19.255,0.835,0.835,0,0 0.8,0.34475,57.825,0.9214,0.9214,0,0 Data save completed. Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-43...
Disables measurement channels. 11 and 16 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-44 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 139
3 to 33 Declares variables, and defines the value. 35 to 45 Declares variables used to keep source data, measurement data, status data, and time stamp data. Also defines array size. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-45...
61 to 62 Declares a variable, and defines the value. This variable is used for the output value of the secondary sweep source. Sets the array counter i to 0. 3-46 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 141
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the save_data subprogram (next page) to save measurement data. End of the sweep_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-47...
Page 142
Displays measurement data on a message box. If Yes is clicked on the message box, performs the sweep_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the save_data subprogram. 3-48 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 143
100,0.3,15.725,0.4139,0 100,0.6,18.115,0.4239,0 100,0.9,18.715,0.4339,0 100,1.2,18.84,0.4439,0 100,1.5,18.925,0.4539,0 100,1.8,19.015,0.4639,0 100,2.1,19.045,0.4739,0 100,2.4,19.12,0.4839,0 100,2.7,19.175,0.4939,0 100,3,19.215,0.5039,0 150,0,-0.15,0.6539,0 150,0.3,21.065,0.6639,0 150,0.6,24.54,0.6739,0 150,0.9,26.47,0.6839,0 150,1.2,27.19,0.6939,0 150,1.5,27.405,0.7039,0 150,1.8,27.605,0.7139,0 150,2.1,27.71,0.7239,0 150,2.4,27.795,0.7339,0 150,2.7,27.885,0.7439,0 150,3,27.955,0.7539,0 Data save completed. Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-49...
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-50 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 145
Declares variables for source channels, and defines the value. 35 to 45 Declares variables used to keep source data, measurement data, status data, and time stamp data. Also defines array size. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-51...
Page 146
Declares a variable, and defines the value. This variable is used for the output value of the secondary sweep source. Sets the array counter i to 0. 65 to 70 Declares variables for the pulsed source, and defines the value. 3-52 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 147
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the save_data subprogram (next page) to save measurement data. End of the sweep_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-53...
Page 148
Displays measurement data on a message box. If Yes is clicked on the message box, performs the sweep_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the save_data subprogram. 3-54 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 149
2,0.3,4.205,0.4282,0 2,0.6,7.955,0.4382,0 2,0.9,11.245,0.4482,0 2,1.2,14.11,0.4582,0 2,1.5,16.55,0.4682,0 2,1.8,18.67,0.4782,0 2,2.1,20.52,0.4882,0 2,2.4,22.185,0.4982,0 2,2.7,23.67,0.5082,0 2,3,25.02,0.5182,0 3,0,0,0.6708,0 3,0.3,5.07,0.6808,0 3,0.6,9.73,0.6908,0 3,0.9,13.965,0.7008,0 3,1.2,17.76,0.7108,0 3,1.5,21.115,0.7208,0 3,1.8,24.07,0.7308,0 3,2.1,26.64,0.7408,0 3,2.4,28.91,0.7508,0 3,2.7,30.925,0.7608,0 3,3,32.71,0.7708,0 Data save completed. Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-55...
Disables measurement channels. 11 and 16 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 3-56 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 151
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the display_data subprogram (shown below) to display measurement data. End of the vbd_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-57...
Page 152
If Yes is clicked on the message box, performs the vbd_meas subprogram again. If No is clicked, returns to the perform_meas subprogram. End of the display_data subprogram. Measurement Vbd = 55.885 (V) Result Example Do you want to perform measurement again? 3-58 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 153
Disables measurement channels. 13 and 18 Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-59...
Page 154
Calls the check_err subprogram (shown in Table 3-1) to check if an error status is returned for the previous line. Calls the display_data subprogram (next page) to display measurement data. End of the spot_meas subprogram. 3-60 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 155
Or displays error message on a message box if the status is abnormal. End of the display_data subprogram. Measurement Id = 12.775 (mA) Result Example Do you want to perform measurement again? Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 3-61...
Page 156
Programming Examples for Visual Basic Users Leakage Current Measurement 3-62 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Programming Examples for C++ Users This chapter explains programming examples to perform the following measurements using the Agilent B1500 and the B1500 VXIplug&play driver, and consists of the following sections. • “Programming Basics” • “High Speed Spot Measurement” • “Multi Channel Spot Measurement”...
Programming Examples for C++ Users Programming Basics Programming Basics This section provides the basic information for programming using the Agilent B1500 VXIplug&play driver. • “To Create Your Project Template” • “To Create Measurement Program” To Create Your Project Template This section explains how to create a project template in the C language. Before starting programming, create your project template, and keep it as your reference.
Page 160
Description 1 to 4 Required to use the Agilent B1500 VXIplug&play driver. The header files contain various necessary information such as function declaration and macro definitions. You may add the include statements to call another header files that may be needed by the codes you added.
43 to 45 Resets the Agilent B1500, sets the driver I/O time out to 60 seconds, and enables the automatic instrument error checking. Calls the perform_meas subprogram (line 22).
Step 4. Launch the programming software. Step 5. Open the project (e.g. \test\dev_a\spot_id). Step 6. Open the source file that contains the template code as shown in Table 4-1, and complete the perform_meas subprogram. Then use the Agilent B1500 VXIplug&play driver functions: •...
Enables measurement channels. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 19 to 29 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 164
Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Measurement Id = 14.255001 mA (at 1.5 V) Vg = 1.5 V Result Example Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Enables measurement channels. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 15 to 29 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 166
Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Measurement Ic = 3.846500 mA (Time: 0.093200 sec) Ib = 0.018970 mA (Time: 0.094300 sec) Result Example hfe = 202.767528 4-10 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Enables measurement channels. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 19 to 28 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-11...
Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Measurement Id = 14.255000 mA (at 1.5 V) Vg = 1.5 V Result Example 4-12 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
= "Saving data..."; ViChar msg2[] = "Data save completed."; ViChar ’\n’; /* 36 */ Line Description Beginning of the perform_meas subprogram. 4 to 36 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-13...
Page 170
Sets the specified port to the zero output state. 42 and 70 Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 4-14 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 171
Saves the measurement results into a CSV file specified by the f_name variable. Disables all ports. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-15...
Declares variables, and defines the value. 33 to 36 Enables measurement channels. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-17...
56 to 59 Stops the program execution if the number of returned data is not equal to nop. 61 to 64 Displays the measurement result data. 4-18 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 176
Declares variables, and defines the value. 33 to 36 Enables measurement channels. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 4-20 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
56 to 59 Stops the program execution if the number of returned data is not equal to nop. 61 to 64 Displays the measurement result data. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-21...
= mode[0] = mode[1] = range[0] = 0; range[1] = 0; /* 34 */ Line Description Beginning of the perform_meas subprogram. 3 to 34 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-23...
Page 180
Calls the check_err subprogram (shown in Table 4-1) to check if an error status is and 57 returned for the previous line. 59 to 62 Stops the program execution if the number of returned data is not equal to the nop value. 4-24 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 182
= agb1500_setSwitch(vi, collector, 1); check_err (vi, ret); /* 39 */ Line Description Beginning of the perform_meas subprogram. 3 to 34 Declares variables, and defines the value. 36 to 39 Enables measurement channels. 4-26 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 183
59 to 62 Stops the program execution if the number of returned data is not equal to nop. 64 to 69 Displays the measurement result data. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-27...
= agb1500_setSwitch(vi, collector, 1); check_err (vi, ret); /* 34 */ Line Description Beginning of the perform_meas subprogram. 3 to 29 Declares variables, and defines the value. 31 to 33 Enables measurement channels. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-29...
Page 186
Sets the specified port to the zero output state. 34, 45, 48, 57, Calls the check_err subprogram (shown in Table 4-1) to check if an error status is and 63 returned for the previous line. 4-30 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 187
Saves the measurement results into a CSV file specified by the f_name variable. Disables all ports. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-31...
= "Saving data..."; ViChar msg2[] = "Data save completed."; ViChar ’\n’; /* 36 */ Line Description Beginning of the perform_meas subprogram. 4 to 36 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-33...
Page 190
Sets the specified port to the zero output state. 42 and 70 Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. 4-34 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 191
Saves the measurement results into a CSV file specified by the f_name variable. Disables all ports. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-35...
Applies voltage to device. Sets the quasi pulsed voltage source. 17, 20, and Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-37...
Page 194
Calls the check_err subprogram (shown in Table 4-1) to check if and 40 an error status is returned for the previous line. End of the perform_meas subprogram. Measurement Vbd = 56.245000 V Result Example 4-38 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Enables measurement channels. 24 to 26 Applies voltage to device. 22 and 27 Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-39...
Page 196
End of the perform_meas subprogram. Measurement Id = 12.240000 mA Vd = -5.00 to 5.00 V Result Example Vg = 0.00 V 4-40 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
ViInt32 status[60]; mch[0] =t1; mch[1] =t2; mch[2] mode[0] mode[1] range[0] range[1] /* 28 */ Line Description Beginning of the perform_meas subprogram. 3 to 28 Declares variables, and defines the value. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-41...
Page 198
Performs sampling measurement. Sets all channels to the zero output state. 49 to 55 Stops the program execution if the number of returned data is not equal to the nop value. 4-42 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 199
Clears the sampling source setting. Disables all ports. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-43...
Displays a message box that asks if you perform the phase compensation. If you click Yes, the phase compensation will be performed. It will take about 30 seconds. End of the phase_compen subprogram. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-45...
Page 202
It does not need a long time. The short correction and the load correction are not performed in this example. End of the open_corr subprogram. 4-46 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 203
Sets the SCUU connection path. 27 to 28 Enables the MFCMU, and sets the integration time. Calls the phase_compen subprogram (shown in Table 4-15) used to perform the phase compensation of the MFCMU. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-47...
Page 204
Cp = 5.681398 pF (status= 0) G = 27.148290 uS (status= 0) Result Example AC level = 0.028929 V (status= 0) DC bias = -4.767328 V (status= 0) Time = 0.017700 sec 4-48 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 206
35 to 38 Enables source channels connected to the drain and source terminals, and applies 0 V. 39 to 41 Sets the SCUU connection path, enables the MFCMU, and sets the integration time. 4-50 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...
Page 207
Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. Resets the time stamp. Performs capacitance-voltage (CV) sweep measurement. Applies 0 V from all channels. Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3 4-51...
Page 208
29. Disables all ports. Calls the check_err subprogram (shown in Table 4-1) to check if an error status is returned for the previous line. End of the perform_meas subprogram. 4-52 Agilent B1500 VXIplug&play Driver User’s Guide, Edition 3...