[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] My old gnu radio code ( 2007) does not work now :(
From: |
Bisu Bahadur |
Subject: |
[Discuss-gnuradio] My old gnu radio code ( 2007) does not work now :( |
Date: |
Sun, 2 May 2010 23:13:33 -0400 |
Hi All,
I am running gnu radio-3.2.2 now. I haven't used gnuradio in a while (since 2007). I had a old gnuradio code (from a project) that generated a signal repeatedly until I ask it to stop, and the source came from a vector source defined in the program (please see below). I know "flow_graph" has been changed to "top_block". I made that change, rest of the old code didn't complain while compiling. However, it does not produce the signal I would like it to produce (checked it on the spectrum analyzer). Could you please tell me what else, I need to change. It used to run perfectly in the old version of gnuradio (around May 2007). Thank you for your time.
===========================The code with flow_graph changed into top_block==============================
from datetime import datetime
from gnuradio import gr,usrp
from gnuradio import eng_notation
from optparse import OptionParser
from gnuradio.eng_option import eng_option
class my_top_block(gr.top_block):
def __init__(self, my_carrier, period, pulse, seq, interp=64):
global dest, src, sample_rate
global carrier
global BARK, QAM
global vector
self.BARK = 2
self.QAM = 1
carrier = my_carrier
self.vector = []
gr.top_block.__init__(self)
nchan = 1
duc0 = 5e6
self.dest = usrp.sink_c (0, interp, nchan)
self.sample_rate = self.dest.dac_freq() / interp
self.src = ""> self.dest.set_tx_freq(0, duc0)
self.dest.set_pga(0,0)
max = 2**15 - 1
min = -max
if seq == self.QAM:
n = 4
else:
n = 11
nWidth = int(pulse*(self.sample_rate/1e6))
nPulse = int(nWidth/n)
nPeriod = int(period*(self.sample_rate/1e6))
nIdle = nPeriod - nPulse
if seq == self.QAM:
for i in range(nPulse):
self.vector.append(complex(max,max))
self.vector.append(complex(max,min))
self.vector.append(complex(min,max))
self.vector.append(complex(min,min))
else:
for i in range(nPulse):
self.vector.append(complex(max,0))
self.vector.append(complex(min,0))
self.vector.append(complex(max,0))
self.vector.append(complex(max,0))
self.vector.append(complex(min,0))
self.vector.append(complex(max,0))
self.vector.append(complex(max,0))
self.vector.append(complex(max,0))
self.vector.append(complex(min,0))
self.vector.append(complex(min,0))
self.vector.append(complex(min,0))
for i in range(nIdle):
self.vector.append(complex(0,0))
self.buildGraph()
def buildGraph(self):
self.disconnect_all()
self.src = "" True)
self.connect(self.src, self.dest)
# Get an instance of daughterboard
dboard = usrp.selected_subdev(self.dest, (0,0))
dboard.set_gain(90)
# Display the name of the daughterboard
print "Signal will be generate by :", dboard.side_and_name()
# The parameters are which motherboard, daughterboard, the carrier frequence
rf = self.dest.tune(dboard.which(), dboard, carrier)
if rf:
print "Carrier :",carrier
else:
print "The range of the daugtherboard's frequency is :", \
eng_notation.num_to_str(dboard.freq_range()[0]), "-", \
eng_notation.num_to_str(dboard.freq_range()[1])
raise SystemExit
self.start()
if __name__ == "__main__":
parser = OptionParser (option_class=eng_option)
parser.add_option ("-p", "--pulse-width", type="int", default=35,
help="pulse width of jamming signal in microseconds")
parser.add_option ("-j", "--period", type="int", default=400,
help="idle width of jamming signal in microseconds")
parser.add_option ("-c", "--carrier", type="float", default=2.462e9,
help="the carrier frequency")
parser.add_option ("--qam", dest="seq", action="" const=1,
help="generate QAM signals", default = 1)
parser.add_option ("--barker", dest="seq", action="" const=2,
help="generate a BARKER sequence")
(options, args) = parser.parse_args ()
if len(args) != 0:
parser.print_help()
raise SystemExit
g = my_top_block(options.carrier, options.period, options.pulse_width, options.seq)
print options
raw_input("Hit enter to stop: ")
g.stop()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Discuss-gnuradio] My old gnu radio code ( 2007) does not work now :(,
Bisu Bahadur <=