diff options
author | Johnathan Corgan | 2011-07-03 17:51:24 -0700 |
---|---|---|
committer | Johnathan Corgan | 2011-07-03 17:51:24 -0700 |
commit | 2930812784e1b2d9325efccc163448e14118af7c (patch) | |
tree | 2e66b1b4db028f562f5d51b8f8f282433ec7740e /gr-usrp/apps/usrp_test_loopback.py | |
parent | 9810b8820631c610f981016276d4def432549b5f (diff) | |
download | gnuradio-2930812784e1b2d9325efccc163448e14118af7c.tar.gz gnuradio-2930812784e1b2d9325efccc163448e14118af7c.tar.bz2 gnuradio-2930812784e1b2d9325efccc163448e14118af7c.zip |
gr-utils: move non-GUI apps using old libusrp(2) into gr-usrp or gr-usrp2
One step (of many) to convert GNU Radio to use new Ettus Research UHD driver.
Diffstat (limited to 'gr-usrp/apps/usrp_test_loopback.py')
-rwxr-xr-x | gr-usrp/apps/usrp_test_loopback.py | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/gr-usrp/apps/usrp_test_loopback.py b/gr-usrp/apps/usrp_test_loopback.py new file mode 100755 index 000000000..b58ac06ae --- /dev/null +++ b/gr-usrp/apps/usrp_test_loopback.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python +# +# Copyright 2004,2007 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. +# + +""" +Digital loopback (Tx to Rx) for the USRP Rev1. +""" + + +from gnuradio import gr +from gnuradio import usrp + + +def ramp_source (tb): + period = 2**16 + src = gr.vector_source_s (range (-period/2, period/2, 1), True) + return src + +def build_graph (): + tx_interp = 32 # tx should be twice rx + rx_decim = 16 + + tb = gr.top_block () + + data_src = ramp_source (tb) + # usrp_tx = usrp.sink_s (0, tx_interp, 1, 0x98) + usrp_tx = usrp.sink_s (0, tx_interp) + tb.connect (data_src, usrp_tx) + + usrp_rx = usrp.source_s (0, rx_decim, 1, 0x32103210, usrp.FPGA_MODE_LOOPBACK) + sink = gr.check_counting_s () + tb.connect (usrp_rx, sink) + + # file_sink = gr.file_sink (gr.sizeof_short, "loopback.dat") + # tb.connect (usrp_rx, file_sink) + + return tb + +def main (): + tb = build_graph () + try: + tb.run() + except KeyboardInterrupt: + pass + +if __name__ == '__main__': + main () |