最終更新 1 month ago

racerxdl's Avatar Lucas Teske revised this gist 8 years ago. Go to revision

1 file changed, 17 insertions, 5 deletions

record.py

@@ -3,7 +3,7 @@
3 3 ##################################################
4 4 # GNU Radio Python Flow Graph
5 5 # Title: Record
6 - # Generated: Mon Oct 23 22:32:00 2017
6 + # Generated: Mon Oct 23 23:04:23 2017
7 7 ##################################################
8 8
9 9 from gnuradio import blocks
@@ -25,13 +25,14 @@ class record(gr.top_block):
25 25 # Variables
26 26 ##################################################
27 27 self.samp_rate = samp_rate = 16e6
28 + self.frequency = frequency = 1686.6e6
28 29
29 30 ##################################################
30 31 # Blocks
31 32 ##################################################
32 33 self.osmosdr_source_0 = osmosdr.source( args="numchan=" + str(1) + " " + '' )
33 34 self.osmosdr_source_0.set_sample_rate(samp_rate)
34 - self.osmosdr_source_0.set_center_freq(1686.6e6, 0)
35 + self.osmosdr_source_0.set_center_freq(frequency, 0)
35 36 self.osmosdr_source_0.set_freq_corr(0, 0)
36 37 self.osmosdr_source_0.set_dc_offset_mode(0, 0)
37 38 self.osmosdr_source_0.set_iq_balance_mode(0, 0)
@@ -42,13 +43,17 @@ class record(gr.top_block):
42 43 self.osmosdr_source_0.set_antenna('', 0)
43 44 self.osmosdr_source_0.set_bandwidth(10e6, 0)
44 45
45 - self.blocks_file_sink_0 = blocks.file_sink(gr.sizeof_gr_complex*1, 'grb_1686800000_16000000.cfile', False)
46 - self.blocks_file_sink_0.set_unbuffered(False)
46 + self.blocks_multiply_const_vxx_0 = blocks.multiply_const_vcc((127, ))
47 + self.blocks_file_sink_0_0 = blocks.file_sink(gr.sizeof_char*1, 'grb_1686800000_16000000_S8.cfile', False)
48 + self.blocks_file_sink_0_0.set_unbuffered(False)
49 + self.blocks_complex_to_interleaved_char_0 = blocks.complex_to_interleaved_char(False)
47 50
48 51 ##################################################
49 52 # Connections
50 53 ##################################################
51 - self.connect((self.osmosdr_source_0, 0), (self.blocks_file_sink_0, 0))
54 + self.connect((self.blocks_complex_to_interleaved_char_0, 0), (self.blocks_file_sink_0_0, 0))
55 + self.connect((self.blocks_multiply_const_vxx_0, 0), (self.blocks_complex_to_interleaved_char_0, 0))
56 + self.connect((self.osmosdr_source_0, 0), (self.blocks_multiply_const_vxx_0, 0))
52 57
53 58 def get_samp_rate(self):
54 59 return self.samp_rate
@@ -57,6 +62,13 @@ class record(gr.top_block):
57 62 self.samp_rate = samp_rate
58 63 self.osmosdr_source_0.set_sample_rate(self.samp_rate)
59 64
65 + def get_frequency(self):
66 + return self.frequency
67 +
68 + def set_frequency(self, frequency):
69 + self.frequency = frequency
70 + self.osmosdr_source_0.set_center_freq(self.frequency, 0)
71 +
60 72
61 73 def main(top_block_cls=record, options=None):
62 74

racerxdl's Avatar Lucas Teske revised this gist 8 years ago. Go to revision

1 file changed, 74 insertions

record.py(file created)

@@ -0,0 +1,74 @@
1 + #!/usr/bin/env python2
2 + # -*- coding: utf-8 -*-
3 + ##################################################
4 + # GNU Radio Python Flow Graph
5 + # Title: Record
6 + # Generated: Mon Oct 23 22:32:00 2017
7 + ##################################################
8 +
9 + from gnuradio import blocks
10 + from gnuradio import eng_notation
11 + from gnuradio import gr
12 + from gnuradio.eng_option import eng_option
13 + from gnuradio.filter import firdes
14 + from optparse import OptionParser
15 + import osmosdr
16 + import time
17 +
18 +
19 + class record(gr.top_block):
20 +
21 + def __init__(self):
22 + gr.top_block.__init__(self, "Record")
23 +
24 + ##################################################
25 + # Variables
26 + ##################################################
27 + self.samp_rate = samp_rate = 16e6
28 +
29 + ##################################################
30 + # Blocks
31 + ##################################################
32 + self.osmosdr_source_0 = osmosdr.source( args="numchan=" + str(1) + " " + '' )
33 + self.osmosdr_source_0.set_sample_rate(samp_rate)
34 + self.osmosdr_source_0.set_center_freq(1686.6e6, 0)
35 + self.osmosdr_source_0.set_freq_corr(0, 0)
36 + self.osmosdr_source_0.set_dc_offset_mode(0, 0)
37 + self.osmosdr_source_0.set_iq_balance_mode(0, 0)
38 + self.osmosdr_source_0.set_gain_mode(False, 0)
39 + self.osmosdr_source_0.set_gain(0, 0)
40 + self.osmosdr_source_0.set_if_gain(40, 0)
41 + self.osmosdr_source_0.set_bb_gain(36, 0)
42 + self.osmosdr_source_0.set_antenna('', 0)
43 + self.osmosdr_source_0.set_bandwidth(10e6, 0)
44 +
45 + self.blocks_file_sink_0 = blocks.file_sink(gr.sizeof_gr_complex*1, 'grb_1686800000_16000000.cfile', False)
46 + self.blocks_file_sink_0.set_unbuffered(False)
47 +
48 + ##################################################
49 + # Connections
50 + ##################################################
51 + self.connect((self.osmosdr_source_0, 0), (self.blocks_file_sink_0, 0))
52 +
53 + def get_samp_rate(self):
54 + return self.samp_rate
55 +
56 + def set_samp_rate(self, samp_rate):
57 + self.samp_rate = samp_rate
58 + self.osmosdr_source_0.set_sample_rate(self.samp_rate)
59 +
60 +
61 + def main(top_block_cls=record, options=None):
62 +
63 + tb = top_block_cls()
64 + tb.start()
65 + try:
66 + raw_input('Press Enter to quit: ')
67 + except EOFError:
68 + pass
69 + tb.stop()
70 + tb.wait()
71 +
72 +
73 + if __name__ == '__main__':
74 + main()
Newer Older