Digital I/O Handshaking - Keithley 2601 Reference Manual

System sourcemeter 2600 series (smu)
Hide thumbs Also See for 2601:
Table of Contents

Advertisement

Appendix E: Speed Specification Test Conditions
3.
Measurement filter is off.
4.
Set the source function to volts.
5.
The NPLC is set.
6.
Turn output ON.
7.
Autozero is set to smua.AUTOZERO_ONCE.
8.
A voltage measurement is taken to get a background reference reading.
9.
Autozero is turned off.
10.
A for-loop takes the desired number of samples.
11.
Measurements are taken, data is saved to a buffer, and an array is created in Lua to store
the samples. If the test is a "to GPIB" test, data is returned using the printnumber() function.
12.
Turn output OFF.
13.
A print command is issued to the test program when the test is complete if the test is "to
MEMORY."

Digital I/O handshaking:

1.
Set the source range to 1V, turning autorange off.
2.
Measure range is set to 1V, turning autorange off.
3.
Measurement filter is off.
4.
Set the trigger mode of line 1 to FALLING, digio.trigger[1].mode = digio.TRIG_FALLING.
5.
Set the pulse width of line 2, digio.trigger[2].pulsewidth = 1E-6.
6.
Sets the source function to volts.
7.
The NPLC is set.
8.
Turn output ON.
9.
Autozero is set to smua.AUTOZERO_ONCE.
10.
A measurement is taken internally to get a background reference reading.
11.
Autozero is turned off.
12.
A for-loop takes the desired number of samples.
13.
A loop generates a series of measurements. Before each measurement, digio.trigger[1].wait
is issued. A voltage measurement is then stored to a buffer. If the test is a "to GPIB" test,
data is returned with the printnumber() function. Finally, digio.trigger[2].wait is sent.
14.
Turn output OFF.
15.
A print command is issued to the test program when the test is complete if the test is "to
MEMORY".
Measure to Memory
The script uses smua.measure.v(nvbuffer1) to take measurements. The measure count is set to a
large number such as 1,000 instead of taking data in a for-loop. Results are saved to nvbuffer1
instead of an array created in Lua.
The following shows how the speed results are obtained in Visual Basic. TestScript() is the setup
script.
tstart = Timer
TransmitBuffer = "TestScript()" & CRLF
ReceiveBuffer = ""
VisaStatus = viWrite(VisaSession, TransmitBuffer, Len(TransmitBuffer), ReturnCount)
VisaStatus = viRead(VisaSession, ReceiveBuffer, MAX_BUFFER, ReturnCount)
tstop = Timer
Result = NumPoints/ (tstop – start)
E-4
Series 2600 System SourceMeter® Instruments Reference Manual
--Starts timer
--Stops timer
--NumPoints is the number of samples taken
Return to
Section Topics
2600S-901-01 Rev. C / January 2008

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

26362602261126122635

Table of Contents