09-25-2013 07:52 AM
See attached screenshots. My goal is to capture 4000 datapoints of an output voltage ramp from 0 to 5v, with 3458A being LEVEL triggered at the 1v level, beginning from the SEL ON signal which enables a device's output. I've confirmed all signals are proper with a scope, but I cannot get the 3458 to CONSISTENTLY capture the waveform. Every time I run the vis, I get random numbers of datapoints ranging from 5 to the desired 4000. Why can't I consistently get my 4000 datapoints? In the screenshots below, the TrigELoadramp,vi immediately follows the Setup3458.vi. The paragraph in the latter vi is copied from the Agilent 3458A driver notes, which doesn't make sense to me.
Solved! Go to Solution.
09-25-2013 09:13 AM
I bet this is an issue with the termination character. Turn the termination character off for the VISA session before performing the scan and turn it back on after reading the scan. Do this with the SEL ON and SEL OFF portions of the code.
With the termination character on, any byte that is the termination character (usually 0xA) will cause the VISA Read to stop. So if you have a data point of 10, then the read will stop with that character.
09-25-2013 09:43 AM
Thank you. That sounds like exactly the solution, but how to I do that? Is there a VISA command to turn it off and on?
09-25-2013 10:38 AM
09-25-2013 10:43 AM
Use a property node on the VISA reference. The property you need to set is Message Based Settings->Termination Character Enable.