我想在gnuradio3.8中使用gnuradio3.7中的rx.py和tx.py。
我试着将这些相关文件转换为python3,但还缺少其他模块。例如,在path.py中,模块digital.mod_pkts不存在。我尝试将mod_pkts函数(gnuradio/digital/pkt.py)转换为python 3,但我得到了缺少的附加包。例如,message_source之后就丢失了:
Traceback (most recent call last):
File "benchmark_tx_stdin.py", line 270, in <module>
main()
File "benchmark_tx_stdin.py", line 214, in main
tb = my_top_block(mods[options.modulation], options)
File "benchmark_tx_stdin.py", line 132, in __init__
self.txpath = transmit_path(modulator, options)
File "/root/gnuradio/gr-digital/examples/narrowband/transmit_path.py", line 61, in __init__
pad_for_usrp=True)
File "/usr/local/lib/python3/dist-packages/gnuradio/digital/pkt.py", line 81, in __init__
self._pkt_input = blocks.message_source(gr.sizeof_char, msgq_limit)
AttributeError: module 'gnuradio.blocks' has no attribute 'message_source'我很感谢在gnuradio 3.8中帮助复制这些文件。
谢谢!
发布于 2022-11-02 13:03:40
我想在gnuradio3.8中使用gnuradio3.7中的benchmark_rx.py和benchmark_tx.py。
你不能,我们不得不放弃benchmark_tx/_rx所基于的功能。事实上,这是在不可预测的时刻积极地丢弃数据的原因,因为我们没有人能在十年的大部分时间里弄清楚这一点。
因此,我们在没有替换的情况下丢弃了这些python块,它们真的没什么突破,因为它们只是使用调制映射器和脉冲成形滤波器的一种古怪的方式。
与benchmark_不同,您应该使用分组通信示例,如官方引导的例子中所解释的,以及gnuradio中的示例(可能/usr/share/gnuradio/示例/digital)。
GNU电台3.8的话:虽然仍然得到支持,但在这方面没有任何进一步的发展。(这比3.7要好,在这种情况下,Py2和比特的依赖关系使得无法将其合理地集成到我们的CI基础结构中,因此我们让它结束了生命,甚至不再能够修复bug了。)
https://stackoverflow.com/questions/74237433
复制相似问题