diff options
author | Dimitri Stolnikov <horiz0n@gmx.net> | 2012-04-06 15:29:14 +0200 |
---|---|---|
committer | Dimitri Stolnikov <horiz0n@gmx.net> | 2012-04-06 15:29:14 +0200 |
commit | 0efd28de6bc86c3e474cfad70d1e5889575224a7 (patch) | |
tree | d3d12127a6315f026505629bec961d32696271e6 /apps |
initial commit
Diffstat (limited to 'apps')
-rw-r--r-- | apps/CMakeLists.txt | 26 | ||||
-rw-r--r-- | apps/osmosdr_source.grc | 320 | ||||
-rwxr-xr-x | apps/osmosdr_source.py | 66 |
3 files changed, 412 insertions, 0 deletions
diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt new file mode 100644 index 0000000..57c919c --- /dev/null +++ b/apps/CMakeLists.txt @@ -0,0 +1,26 @@ +# Copyright 2011 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. + +include(GrPython) + +GR_PYTHON_INSTALL( + PROGRAMS + osmosdr_source.py + DESTINATION bin +) diff --git a/apps/osmosdr_source.grc b/apps/osmosdr_source.grc new file mode 100644 index 0000000..de97388 --- /dev/null +++ b/apps/osmosdr_source.grc @@ -0,0 +1,320 @@ +<?xml version='1.0' encoding='ASCII'?> +<flow_graph> + <timestamp>Fri Apr 6 14:59:58 2012</timestamp> + <block> + <key>options</key> + <param> + <key>id</key> + <value>osmosdr_source_c</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>title</key> + <value></value> + </param> + <param> + <key>author</key> + <value></value> + </param> + <param> + <key>description</key> + <value></value> + </param> + <param> + <key>window_size</key> + <value>1280, 1024</value> + </param> + <param> + <key>generate_options</key> + <value>wx_gui</value> + </param> + <param> + <key>category</key> + <value>Custom</value> + </param> + <param> + <key>run_options</key> + <value>prompt</value> + </param> + <param> + <key>run</key> + <value>True</value> + </param> + <param> + <key>realtime_scheduling</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(10, 10)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>id</key> + <value>samp_rate</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>value</key> + <value>2048e3</value> + </param> + <param> + <key>_coordinate</key> + <value>(39, 137)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable_slider</key> + <param> + <key>id</key> + <value>freq</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>label</key> + <value></value> + </param> + <param> + <key>value</key> + <value>100e6</value> + </param> + <param> + <key>min</key> + <value>50e6</value> + </param> + <param> + <key>max</key> + <value>2.2e9</value> + </param> + <param> + <key>num_steps</key> + <value>1000</value> + </param> + <param> + <key>style</key> + <value>wx.SL_HORIZONTAL</value> + </param> + <param> + <key>converver</key> + <value>float_converter</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(268, 65)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>osmosdr_source_c</key> + <param> + <key>id</key> + <value>osmosdr_source_c_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>args</key> + <value></value> + </param> + <param> + <key>freq</key> + <value>freq</value> + </param> + <param> + <key>rate</key> + <value>samp_rate</value> + </param> + <param> + <key>gain</key> + <value>gain</value> + </param> + <param> + <key>_coordinate</key> + <value>(284, 297)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>wxgui_fftsink2</key> + <param> + <key>id</key> + <value>wxgui_fftsink2_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>title</key> + <value>FFT Plot</value> + </param> + <param> + <key>samp_rate</key> + <value>samp_rate</value> + </param> + <param> + <key>baseband_freq</key> + <value>freq</value> + </param> + <param> + <key>y_per_div</key> + <value>5</value> + </param> + <param> + <key>y_divs</key> + <value>10</value> + </param> + <param> + <key>ref_level</key> + <value>145</value> + </param> + <param> + <key>ref_scale</key> + <value>2.0</value> + </param> + <param> + <key>fft_size</key> + <value>1024</value> + </param> + <param> + <key>fft_rate</key> + <value>15</value> + </param> + <param> + <key>peak_hold</key> + <value>False</value> + </param> + <param> + <key>average</key> + <value>False</value> + </param> + <param> + <key>avg_alpha</key> + <value>0</value> + </param> + <param> + <key>win</key> + <value>None</value> + </param> + <param> + <key>win_size</key> + <value></value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(681, 242)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <block> + <key>variable_slider</key> + <param> + <key>id</key> + <value>gain</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>label</key> + <value></value> + </param> + <param> + <key>value</key> + <value>10</value> + </param> + <param> + <key>min</key> + <value>0</value> + </param> + <param> + <key>max</key> + <value>30</value> + </param> + <param> + <key>num_steps</key> + <value>31</value> + </param> + <param> + <key>style</key> + <value>wx.SL_HORIZONTAL</value> + </param> + <param> + <key>converver</key> + <value>float_converter</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> + <key>_coordinate</key> + <value>(472, 65)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + </block> + <connection> + <source_block_id>osmosdr_source_c_0</source_block_id> + <sink_block_id>wxgui_fftsink2_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> +</flow_graph> diff --git a/apps/osmosdr_source.py b/apps/osmosdr_source.py new file mode 100755 index 0000000..a6bde0d --- /dev/null +++ b/apps/osmosdr_source.py @@ -0,0 +1,66 @@ +#!/usr/bin/env python +################################################## +# Gnuradio Python Flow Graph +# Title: OsmoSDR Source +# Generated: Thu Nov 12 11:26:07 2009 +################################################## + +import osmosdr +from gnuradio import eng_notation +from gnuradio import gr +from gnuradio.eng_option import eng_option +from gnuradio.gr import firdes +from gnuradio.wxgui import fftsink2 +from grc_gnuradio import wxgui as grc_wxgui +from optparse import OptionParser +import wx + +class osmosdr_source_c(grc_wxgui.top_block_gui): + + def __init__(self): + grc_wxgui.top_block_gui.__init__(self, title="OsmoSDR Source") + + self.src = osmosdr.source_c() + + self.src.set_samp_rate(1024000) + self.src.set_center_freq(392.8e6) + self.src.set_gain(10) + + ################################################## + # Variables + ################################################## + self.samp_rate = samp_rate = self.src.get_samp_rate() + + ################################################## + # Blocks + ################################################## + self.sink = fftsink2.fft_sink_c( + self.GetWin(), + fft_size=1024, + sample_rate=samp_rate, + ref_scale=50.0, + ref_level=145, + y_divs=10, + fft_rate=20, + average=False, + avg_alpha=0.5 + ) + + self.Add(self.sink.win) + + ################################################## + # Connections + ################################################## + self.connect((self.src, 0), (self.sink, 0)) + + + def set_samp_rate(self, samp_rate): + self.samp_rate = samp_rate + self.sink.set_sample_rate(self.samp_rate) + +if __name__ == '__main__': + parser = OptionParser(option_class=eng_option, usage="%prog: [options]") + (options, args) = parser.parse_args() + tb = osmosdr_source_c() + tb.Run(True) + |