[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r5055 - gnuradio/branches/developers/jcorgan/snd/gr-so
From: |
jcorgan |
Subject: |
[Commit-gnuradio] r5055 - gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python |
Date: |
Fri, 20 Apr 2007 15:05:52 -0600 (MDT) |
Author: jcorgan
Date: 2007-04-20 15:05:51 -0600 (Fri, 20 Apr 2007)
New Revision: 5055
Added:
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_rx.py
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_tx.py
Modified:
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
Log:
Work in progress, refactoring.
Added:
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_rx.py
===================================================================
---
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_rx.py
(rev 0)
+++
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_rx.py
2007-04-20 21:05:51 UTC (rev 5055)
@@ -0,0 +1,18 @@
+from gnuradio import gr, usrp
+
+class sounder_rx:
+ def __init__(self, frequency, mask):
+ self.fg = gr.flow_graph()
+ self.rcvr = usrp.source_s(fpga_filename='usrp_sounder.rbf',
decim_rate=8)
+ self.subdev_spec = usrp.pick_rx_subdevice(self.rcvr)
+ self.subdev = usrp.selected_subdev(self.rcvr, self.subdev_spec)
+ self.rcvr.tune(0, self.subdev, frequency)
+ self.set_mask(mask);
+ self.sink = gr.file_sink(gr.sizeof_short, "output.dat")
+ self.fg.connect(self.rcvr, self.sink)
+
+ def receive(self):
+ self.fg.run()
+
+ def set_mask(self, value):
+ return self.rcvr._write_fpga_reg(usrp.FR_USER_0, value);
Added:
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_tx.py
===================================================================
---
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_tx.py
(rev 0)
+++
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder_tx.py
2007-04-20 21:05:51 UTC (rev 5055)
@@ -0,0 +1,23 @@
+from gnuradio import gr, usrp
+
+# Set to 0 for 32 MHz tx clock, 1 for 64 MHz tx clock
+# Must match config.vh in FPGA code
+TX_RATE_MAX = 0
+_tx_freq_divisor = 32e6*(TX_RATE_MAX+1)
+
+class sounder_tx:
+ def __init__(self, frequency, mask):
+ self.trans = usrp.sink_s(fpga_filename='usrp_sounder.rbf')
+ self.subdev_spec = usrp.pick_tx_subdevice(self.trans)
+ self.subdev = usrp.selected_subdev(self.trans, self.subdev_spec)
+ self.trans.tune(0, self.subdev, frequency)
+ self.set_mask(mask);
+
+ def turn_on(self):
+ self.trans.start()
+
+ def turn_off(self):
+ self.trans.stop()
+
+ def set_mask(self, value):
+ return self.trans._write_fpga_reg(usrp.FR_USER_0, value);
Modified:
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
===================================================================
---
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
2007-04-20 21:01:30 UTC (rev 5054)
+++
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
2007-04-20 21:05:51 UTC (rev 5055)
@@ -1,44 +1,24 @@
#!/usr/bin/env python
-from gnuradio import gr, usrp
from gnuradio import eng_notation
from gnuradio.eng_option import eng_option
from optparse import OptionParser
-import math
-# Set to 0 for 32 MHz tx clock, 1 for 64 MHz tx clock
-# Must match config.vh in FPGA code
-TX_RATE_MAX = 0
-_tx_freq_divisor = 32e6*(TX_RATE_MAX+1)
+from sounder_tx import sounder_tx
+from sounder_rx import sounder_rx
+import time
-class sounder_tx:
- def __init__(self, frequency, mask):
- self.trans = usrp.sink_s(fpga_filename='usrp_sounder.rbf')
- self.subdev_spec = usrp.pick_tx_subdevice(self.trans)
- self.subdev = usrp.selected_subdev(self.trans, self.subdev_spec)
- self.trans.tune(0, self.subdev, frequency)
- self.set_mask(mask);
-
- def turn_on(self):
- self.trans.start()
-
- def turn_off(self):
- self.trans.stop()
-
- def set_mask(self, value):
- return self.trans._write_fpga_reg(usrp.FR_USER_0, value);
-
-def test_transmit(options):
- t = sounder_tx(options.frequency, options.mask)
- t.turn_on()
- raw_input('Press return to stop transmitter.')
- t.turn_off()
-
def main():
parser = OptionParser(option_class=eng_option)
parser.add_option("-f", "--frequency", type="eng_float", default=0.0,
help="set frequency to FREQ in Hz, default is %default",
metavar="FREQ")
+ parser.add_option("-t", "--transmit", action="store_true", default=False,
+ help="enable sounding transmitter, default is %default")
+
+ parser.add_option("-r", "--receive", action="store_true", default=False,
+ help="enable sounding receiver, default is %default")
+
(options, args) = parser.parse_args()
options.mask = 0x0801;
@@ -47,7 +27,24 @@
parser.print_help()
sys.exit(1)
- test_transmit(options)
-
+ if (options.transmit):
+ print "Enabling sounder transmitter."
+ tx = sounder_tx(options.frequency, options.mask)
+ tx.turn_on()
+
+ try:
+ if (options.receive):
+ print "Enabling sounder receiver."
+ rx = sounder_rx(options.frequency, options.mask)
+ rx.receive()
+ else:
+ if (options.transmit):
+ while (True): time.sleep(1.0)
+
+ except KeyboardInterrupt:
+ if (options.transmit):
+ tx.turn_off()
+
+
if __name__ == "__main__":
main()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r5055 - gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python,
jcorgan <=