Adding a simple script to read data from the MSDD source and dump it to a file.
authortrondeau <trondeau@221aa14e-8319-0410-a670-987f0aec2ac5>
Wed, 2 Apr 2008 00:37:04 +0000 (00:37 +0000)
committertrondeau <trondeau@221aa14e-8319-0410-a670-987f0aec2ac5>
Wed, 2 Apr 2008 00:37:04 +0000 (00:37 +0000)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@8151 221aa14e-8319-0410-a670-987f0aec2ac5

gr-msdd6000/src/python/benchmark_msdd6000.py [new file with mode: 0755]

diff --git a/gr-msdd6000/src/python/benchmark_msdd6000.py b/gr-msdd6000/src/python/benchmark_msdd6000.py
new file mode 100755 (executable)
index 0000000..48afdc5
--- /dev/null
@@ -0,0 +1,74 @@
+#!/usr/bin/env python
+#
+# Copyright 2008 Free Software Foundation, Inc.
+# 
+# This file is part of GNU Radio
+# 
+# GNU Radio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+# 
+# GNU Radio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with GNU Radio; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street,
+# Boston, MA 02110-1301, USA.
+# 
+
+from gnuradio import gr, gr_unittest
+from gnuradio import msdd
+from gnuradio.eng_option import eng_option
+from optparse import OptionParser
+
+class benchmark_msdd6000(gr.top_block):
+    def __init__(self, address, options):
+        gr.top_block.__init__(self)
+
+        self.frequency = options.frequency
+        self.filename  = options.filename
+        self.decim     = options.decim
+        self.gain      = options.gain
+        self.address   = address
+
+        self.port = 10001
+
+        src = msdd.source_c(0, 1, self.address, self.port)
+        src.set_decim_rate(self.decim)
+        src.set_desired_packet_size(0, 1460)
+        src.set_pga(0, self.gain)
+        src.set_rx_freq(0, self.frequency)
+
+        print "Min PGA: ", src.pga_min()
+        print "Max PGA: ", src.pga_max()
+        print "PGA:     ", src.pga(0)
+        print "Decim:   ", src.decim_rate()
+        print "Freq:    ", src.rx_freq(0)
+        
+        snk = gr.file_sink(gr.sizeof_gr_complex, self.filename)
+        self.connect(src, snk)
+        
+def main():
+    usage="%prog: [options] host_address"
+    parser = OptionParser(usage=usage, option_class=eng_option, conflict_handler="resolve")
+    parser.add_option("-f", "--frequency", type="eng_float", default=100e6,
+                      help="set frequency (Hz) [default=%default]")
+    parser.add_option("-d", "--decim", type="int", default=256,
+                      help="set decimation rate [default=%default]")
+    parser.add_option("-g", "--gain", type="int", default=32,
+                      help="set receiver gain (dB) [default=%default]")
+    parser.add_option("-F", "--filename", type="string", default="output.dat",
+                      help="set output filename [default=%default]")
+    (options, args) = parser.parse_args ()
+    host_address = args[0]
+
+    tb = benchmark_msdd6000(host_address, options)
+    tb.start()
+    tb.wait()
+
+if __name__ == '__main__':
+    main()