def test_sub_ii(self): src1_data = [1, 2, 3, 4, 5] src2_data = [8, -3, 4, 8, 2] expected_result = [-7, 5, -1, -4, 3] op = blocks.sub_ii() self.help_ii((src1_data, src2_data), expected_result, op)
def test_sub_ii(self): src1_data = (1, 2, 3, 4, 5) src2_data = (8, -3, 4, 8, 2) expected_result = (-7, 5, -1, -4, 3) op = blocks.sub_ii() self.help_ii((src1_data, src2_data), expected_result, op)
def test_sub_ii1(self): src1_data = (1, 2, 3, 4, 5) expected_result = (1, 2, 3, 4, 5) src = blocks.vector_source_i(src1_data) op = blocks.sub_ii() dst = blocks.vector_sink_i() self.tb.connect(src, op, dst) self.tb.run() result_data = dst.data() self.assertEqual(expected_result, result_data)
def __init__(self): grc_wxgui.top_block_gui.__init__(self, title="Top Block") _icon_path = "/usr/share/icons/hicolor/32x32/apps/gnuradio-grc.png" self.SetIcon(wx.Icon(_icon_path, wx.BITMAP_TYPE_ANY)) ################################################## # Variables ################################################## self.samp_rate = samp_rate = 2.5e6 self.fft1 = fft1 = 128 ################################################## # Blocks ################################################## self.sig_source = numbersink2.number_sink_f( self.GetWin(), unit='Units', minval=-100, maxval=100, factor=1.0, decimal_places=5, ref_level=0, sample_rate=samp_rate, number_rate=15, average=False, avg_alpha=None, label='sig source', peak_hold=True, show_gauge=True, ) self.Add(self.sig_source.win) self.rtlsdr_source_0 = osmosdr.source( args="numchan=" + str(1) + " " + '' ) self.rtlsdr_source_0.set_sample_rate(samp_rate) self.rtlsdr_source_0.set_center_freq(467.562e6, 0) self.rtlsdr_source_0.set_freq_corr(0, 0) self.rtlsdr_source_0.set_dc_offset_mode(1, 0) self.rtlsdr_source_0.set_iq_balance_mode(0, 0) self.rtlsdr_source_0.set_gain_mode(False, 0) self.rtlsdr_source_0.set_gain(10, 0) self.rtlsdr_source_0.set_if_gain(20, 0) self.rtlsdr_source_0.set_bb_gain(20, 0) self.rtlsdr_source_0.set_antenna('', 0) self.rtlsdr_source_0.set_bandwidth(0, 0) self.phase = numbersink2.number_sink_f( self.GetWin(), unit='Units', minval=-100, maxval=100, factor=1.0, decimal_places=10, ref_level=0, sample_rate=samp_rate, number_rate=15, average=False, avg_alpha=None, label='Number Plot', peak_hold=False, show_gauge=True, ) self.Add(self.phase.win) self.high_pass_filter_0 = filter.fir_filter_ccf(1, firdes.high_pass( 1, samp_rate, 1000, 10000, firdes.WIN_HAMMING, 6.76)) self.fft_vxx_0_0 = fft.fft_vcc(32, True, (window.blackmanharris(32)), True, 1) self.fft_vxx_0 = fft.fft_vcc(128, True, (window.blackmanharris(128)), True, 1) self.blocks_vector_to_stream_0_0 = blocks.vector_to_stream(gr.sizeof_gr_complex*1, 32) self.blocks_vector_to_stream_0 = blocks.vector_to_stream(gr.sizeof_gr_complex*1, fft1) self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*1, samp_rate,True) self.blocks_sub_xx_0 = blocks.sub_ii(1) self.blocks_stream_to_vector_0_0 = blocks.stream_to_vector(gr.sizeof_gr_complex*1, 32) self.blocks_stream_to_vector_0 = blocks.stream_to_vector(gr.sizeof_gr_complex*1, fft1) self.blocks_skiphead_0_0 = blocks.skiphead(gr.sizeof_gr_complex*1, 9) self.blocks_skiphead_0 = blocks.skiphead(gr.sizeof_gr_complex*1, 9) self.blocks_keep_one_in_n_0_0 = blocks.keep_one_in_n(gr.sizeof_gr_complex*1, 1) self.blocks_keep_one_in_n_0 = blocks.keep_one_in_n(gr.sizeof_gr_complex*1, 1) self.blocks_complex_to_mag_0_0 = blocks.complex_to_mag(1) self.blocks_complex_to_mag_0 = blocks.complex_to_mag(1) self.blocks_complex_to_arg_0_0 = blocks.complex_to_arg(1) self.blocks_complex_to_arg_0 = blocks.complex_to_arg(1) self.analog_sig_source_x_0 = analog.sig_source_c(samp_rate, analog.GR_SIN_WAVE, 467.563e6, 1, 0) self.actual_data = numbersink2.number_sink_f( self.GetWin(), unit='Units', minval=-100, maxval=100, factor=1.0, decimal_places=5, ref_level=0, sample_rate=samp_rate, number_rate=15, average=False, avg_alpha=None, label='actual', peak_hold=True, show_gauge=True, ) self.Add(self.actual_data.win) ################################################## # Connections ################################################## self.connect((self.analog_sig_source_x_0, 0), (self.blocks_stream_to_vector_0_0, 0)) self.connect((self.blocks_complex_to_arg_0, 0), (self.blocks_sub_xx_0, 0)) self.connect((self.blocks_complex_to_arg_0_0, 0), (self.blocks_sub_xx_0, 1)) self.connect((self.blocks_complex_to_mag_0, 0), (self.actual_data, 0)) self.connect((self.blocks_complex_to_mag_0_0, 0), (self.sig_source, 0)) self.connect((self.blocks_keep_one_in_n_0, 0), (self.blocks_complex_to_arg_0, 0)) self.connect((self.blocks_keep_one_in_n_0, 0), (self.blocks_complex_to_mag_0, 0)) self.connect((self.blocks_keep_one_in_n_0_0, 0), (self.blocks_complex_to_arg_0_0, 0)) self.connect((self.blocks_keep_one_in_n_0_0, 0), (self.blocks_complex_to_mag_0_0, 0)) self.connect((self.blocks_skiphead_0, 0), (self.blocks_keep_one_in_n_0, 0)) self.connect((self.blocks_skiphead_0_0, 0), (self.blocks_keep_one_in_n_0_0, 0)) self.connect((self.blocks_stream_to_vector_0, 0), (self.fft_vxx_0, 0)) self.connect((self.blocks_stream_to_vector_0_0, 0), (self.fft_vxx_0_0, 0)) self.connect((self.blocks_sub_xx_0, 0), (self.phase, 0)) self.connect((self.blocks_throttle_0, 0), (self.blocks_stream_to_vector_0, 0)) self.connect((self.blocks_vector_to_stream_0, 0), (self.blocks_skiphead_0, 0)) self.connect((self.blocks_vector_to_stream_0_0, 0), (self.blocks_skiphead_0_0, 0)) self.connect((self.fft_vxx_0, 0), (self.blocks_vector_to_stream_0, 0)) self.connect((self.fft_vxx_0_0, 0), (self.blocks_vector_to_stream_0_0, 0)) self.connect((self.high_pass_filter_0, 0), (self.blocks_throttle_0, 0)) self.connect((self.rtlsdr_source_0, 0), (self.high_pass_filter_0, 0))