Section 5: Capturing high power pulse waveforms Model 2651A High Power System SourceMeter® Instrument User's Manual
-- Configure the Pulsed Sweep setup
-----------------------------------
-- Timer 1 controls the pulse period
trigger.timer[1].count
= numPulses - 1
-- 1% Duty Cycle
trigger.timer[1].delay
= pulseWidth / 0.01
trigger.timer[1].passthrough = true
trigger.timer[1].stimulus
= smua.trigger.ARMED_EVENT_ID
-- Timer 2 controls the pulse width
trigger.timer[2].count
= 1
trigger.timer[2].delay
= pulseWidth - 3e-6
trigger.timer[2].passthrough = false
trigger.timer[2].stimulus
= smua.trigger.SOURCE_COMPLETE_EVENT_ID
-- Configure SMU Trigger Model for Sweep/Pulse Output
-----------------------------------------------------
-- Pulses will all be the same level so set start and stop to
-- the same value and the number of points in the sweep to 2
smua.trigger.source.lineari(pulseLevel, pulseLevel, 2)
smua.trigger.source.limitv
= pulseLimit
smua.trigger.measure.action
= smua.ASYNC
-- We want to start the measurements before the source action takes
-- place, so we must configure the ADC to operate asynchronously of
-- the rest of the SMU trigger model actions
-- Measure I and V during the pulse
smua.trigger.measure.iv(smua.nvbuffer1, smua.nvbuffer2)
-- Return the output to the bias level at the end of the pulse
smua.trigger.endpulse.action
= smua.SOURCE_IDLE
smua.trigger.endsweep.action
= smua.SOURCE_IDLE
smua.trigger.count
= numPulses
smua.trigger.arm.stimulus
= 0
smua.trigger.source.stimulus
= trigger.timer[1].EVENT_ID
smua.trigger.measure.stimulus = trigger.timer[1].EVENT_ID
smua.trigger.endpulse.stimulus = trigger.timer[2].EVENT_ID
smua.trigger.source.action
= smua.ENABLE
smua.source.output
= smua.OUTPUT_ON
smua.trigger.initiate()
waitcomplete()
smua.source.output
= smua.OUTPUT_OFF
PrintPulseData()
end
5-8
2651A-900-01 Rev. A / March 2011