GNU 无线电索引错误:output_index必须< noutputs

gnu radio Index Error: output_index must be < noutputs

提问人:Jim 提问时间:9/14/2023 更新时间:9/14/2023 访问量:29

问:

我正在使用 gnu 无线电流程图来尝试选择适当的选择器块输出,如下所述。运行流程图时出现以下错误: 索引错误:output_index必须< noutputs。

显然,选择的索引 1 小于输出数 2。怎么了?

以下代码位于 FT8_Receive hier 块中。它仅显示与我遇到的问题相关的代码。连接部分显示了选择器模块,其中 2 个输出连接到 2 个 Wave File 接收器。我正在尝试通过使用输出索引中的 wave_select 来选择适当的输出,如 def set_wave_select() 所示。

 class FT8_Receive(gr.hier_block2):
    def __init__(self, wave_select=0):
        gr.hier_block2.__init__(
            self, "FT8_Receive",
                gr.io_signature(1, 1, gr.sizeof_float*1),
                gr.io_signature(0, 0, 0),
    )

    ##################################################
    # Parameters
    ##################################################
    self.wave_select = wave_select
    
    ##################################################
    # Connections
    ##################################################
    self.connect((self.blocks_selector_0, 1), (self.blocks_wavfile_sink_0_0, 0))
    self.connect((self.blocks_selector_0, 0), (self.blocks_wavfile_sink_0_0_0, 0))
    self.connect((self, 0), (self.rational_resampler_xxx_0, 0))
    self.connect((self.rational_resampler_xxx_0, 0), (self.blocks_selector_0, 0))

.................................

    def get_wave_select(self):
        return self.wave_select

    def set_wave_select(self, wave_select):
        self.wave_select = wave_select
        self.blocks_selector_0.set_output_index(self.wave_select)

以下代码来自流图顶部块中的 .py 文件,该文件是 OOT。这就是我打电话给set_wave_select的地方。

from FT8_Receive导入 FT8_Receive

RCV = FT8_Receive()
wave_select = 1
RCV.set_wave_select(wave_select)

上面已经解释过了。

选择器 GNUradio

评论


答: 暂无答案