Jump to content

linc

Newcomers
  • Posts

    1
  • Joined

  • Last visited

linc's Achievements

Newbie

Newbie (1/4)

0

Reputation

  1. Hello, I'm trying to use the WaveForms SDK version 3.21.3 with an ADP3450 and seeing some really bizarre behavior. I'd appreciate if anyone can explain what's going on. I'm trying to record a fixed length scope capture with a variable trigger offset, e.g. for a capture duration of 10ms, I might set the trigger position to 0 to capture from the trigger to 10ms afterward set the trigger position to -5ms to capture from 5ms before the trigger to 5ms afterward My fixed settings are as follows: acquisitionMode: 3 (Record) AnalogInFrequency: 100000 (100kHz) recordLength: 0.01 (10ms) bufferSize: 33554432 (the maximum) triggerSource: 2 (DetectorAnalogIn) triggerChannel: 0 triggerPosition: 0 triggerType: 0 (Edge) triggerCondition: 0 (Rise) triggerHysteresis: 0.01 My test waveform is a 200Hz, 1V amplitude sine wave. Expected results: The scope records 1000 samples (10ms * 100kHz.) The trigger occurs when the sine waveform rises through 0. After the capture is complete, FDwfAnalogInTriggerPositionStatus returns the timestamp of the first sample relative to the trigger (roughly equal to the trigger offset.) The above behavior does not depend on the trigger position or the voltage range. Actual results: When I use the fine voltage range (2V) and a trigger position of 0, the behavior is as expected. if I do the same with the coarse voltage range (50V), the scope does not trigger only on rising edges despite the setting, but on either rising or falling edges. Sometimes I get the sample above, sometimes the one below. Why is the trigger condition different in this range? I have confirmed by looking at the raw samples that this is not a jitter issue, i.e. the first two samples are in fact positive then negative, forming a falling edge. There is only one sign change in the vicinity. I have confirmed that the trigger condition is set correctly, i.e. FDwfAnalogInTriggerConditionGet just before the capture is 0 for rising edge. When I set a nonzero trigger position, The number of samples taken increases and is not constant between captures, even with the same settings. The trigger does not occur at a zero transition and does not occur at a constant place in the waveform, i.e. the waveform shifts left and right. I do notice that the end of the capture always seems to occur at the correct place in the waveform, so it seems the scope is prepending a random number of samples to the start of the capture, and then FDwfAnalogInTriggerPositionStatus is not returning the correct timestamp of the first sample. Why is this happening? If I chop off the start and take only the last 1000 samples, is it guaranteed that I'll get a correctly lined up waveform with the starting point given by FDwfAnalogInTriggerPositionStatus? Here are several captures in a row taken with exactly the same settings.
×
×
  • Create New...