diff options
author | Anthony LaTorre <devnull@localhost> | 2013-03-01 12:28:12 -0600 |
---|---|---|
committer | Anthony LaTorre <devnull@localhost> | 2013-03-01 12:28:12 -0600 |
commit | 4b6de6f134bc6b3c1023c8e86c67883ca9218dd0 (patch) | |
tree | c369bd8bba5919182d11e8815a9189990241f17b | |
parent | 19bb5dc974e009b2591c2015910a66035dfaf383 (diff) | |
download | lecrunch-4b6de6f134bc6b3c1023c8e86c67883ca9218dd0.tar.gz lecrunch-4b6de6f134bc6b3c1023c8e86c67883ca9218dd0.tar.bz2 lecrunch-4b6de6f134bc6b3c1023c8e86c67883ca9218dd0.zip |
add method to fetch preamble which gives information about the format of the transferred waveform.
-rw-r--r-- | tektronix.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tektronix.py b/tektronix.py index d18885f..e473d7e 100644 --- a/tektronix.py +++ b/tektronix.py @@ -8,6 +8,7 @@ preamble_fields = {'BYT_NR': int, # data width for waveform 'NR_PT' : int, # record length of record waveform 'WFID' : str, # description string of waveform 'PT_FMT': str, # format of reverence waveform (Y/ENV) + 'XINCR' : float, 'PT_OFF': int, 'XZERO' : float, 'XUNIT' : str, @@ -35,3 +36,27 @@ class TekScope(object): break return buffer + + def query(self, msg): + if not msg.endswith('\n'): + msg += '\n' + + self.send(msg) + + return self.recv() + + def get_preamble(self): + header = self.query('header?\n') + + # turn header on so that we know preamble field names + self.send('header 1\n') + + preamble = {} + for s in self.query('wfmpre?\n').strip()[8:].split(';'): + key, value = s.split(' ',1) + + preamble[key] = preamble_fields[key](value) + + self.send(header) + + return preamble |