Imported Upstream version 3.0
[debian/gnuradio] / gnuradio-examples / python / usrp / siggen_min2.py
1 #!/usr/bin/env python
2
3 from gnuradio import gr
4 from gnuradio import usrp
5 from gnuradio import eng_notation
6 from gnuradio.eng_option import eng_option
7 from optparse import OptionParser
8
9
10
11 def build_graph ():
12
13     # interp = 32
14     interp = 64
15     nchan = 2
16     
17     if nchan == 1:
18         mux = 0x0098
19         #mux = 0x9800
20     else:
21         mux = 0xba98
22
23     f0 = 100e3
24     a0 = 16e3
25     duc0 = 5e6
26
27     f1 = 50e3
28     a1 = 16e3
29     duc1 = 7e6
30
31     fg = gr.flow_graph ()
32
33     u = usrp.sink_c (0, interp, nchan, mux)
34     sample_rate = u.dac_freq () / interp
35     print "sample_rate = ", eng_notation.num_to_str (sample_rate)
36     print "usb_sample_rate = ", eng_notation.num_to_str (sample_rate * nchan)
37
38     u.set_tx_freq (0, duc0)
39     u.set_tx_freq (1, duc1)
40
41     interleave = gr.interleave (gr.sizeof_gr_complex)
42     fg.connect (interleave, u)
43
44     src0 = gr.sig_source_c (sample_rate, gr.GR_SIN_WAVE, f0, a0, 0)
45     fg.connect (src0, (interleave, 0))
46
47     if nchan == 2:
48         if 1:
49             src1 = gr.sig_source_c (sample_rate, gr.GR_SIN_WAVE, f1, a1, 0)
50         else:
51             src1 = gr.noise_source_c (gr.GR_UNIFORM, a1)
52         fg.connect (src1, (interleave, 1))
53     
54     return fg
55
56
57 if __name__ == '__main__':
58     fg = build_graph ()
59     fg.start ()
60     raw_input ('Press Enter to quit: ')
61     fg.stop ()
62