C++ 中的 GNU Radio QT GUI 接收器

Posted

技术标签:

【中文标题】C++ 中的 GNU Radio QT GUI 接收器【英文标题】:GNU Radio QT GUI Sink in C++ 【发布时间】:2016-04-11 01:08:37 【问题描述】:

我正在尝试使用 C++ 在 GNU Radio 中实现一个简单的 QTGui 接收器(在我的例子中是一个复杂的频率接收器)。

我无法找到任何 C++ 示例。有人可以给我举一个简单的例子来说明如何实现吗?

【问题讨论】:

【参考方案1】:

您看到的所有图形接收器都是 GNU Radio 的 source tree 的一部分,并且它的组织方式使 QT 的东西在它自己的 gr-qtgui submodule 中;您将在 include/ 中找到公共标头,在 lib/ 中找到 C++ 实现。

现在,“复杂频率接收器”对我来说没有任何意义;对于复数信号,频率可以是负数,但就像时间轴一样,频率轴只是实数的一部分(因此不是复数)。所以,我假设您不想看到像 QT GUI 频率接收器显示那样的功率谱密度 (PSD),而只是看到 DFT 的实部和虚部;好吧,这是最好的直接实现为流程图的东西(不管是 Python 还是 C++;我使用 GRC 来快速获得 Python 流程图):

结果类似于(FFT->顶部实部和虚部的时间接收器,底部频率接收器):

【讨论】:

感谢马库斯的快速回复。目前,我只是尝试在 C++ 中实现 qt gui 函数,并且无法从生成的 python 代码中了解如何执行此操作。实际使用的块/功能并不重要(我可以使用任何一个)。我主要想了解一个运行和绘制简单信号的 C++(而不是 grc 或 python)示例。 ;-) 嗯,GNU Radio 是关于连接已经存在的块,并在必要时编写新的块。在 99% 的情况下,您希望使用 Python 进行连接。如果你想学习如何编写 C++ 块,你真的不应该从 GUI 可视化开始。它们真的很复杂。从Guided Tutorials从1到5开始,你会非常了解如何编写C++块! 嗨,Marcus,我回来了,但指导教程详细介绍了编写 OOT 块,我不需要。我只想知道 C++ 调用在屏幕上抛出一个绘图(和一个滑块)。我仍然找不到这样的例子。 @RobertKraml 编写 GUI 块非常复杂,所以是的,您需要知道如何设计块来编写 GUI 块。没办法——无论如何,没有“入门友好”的如何编写 Qt 可视化,所以我只能建议阅读 gr-qtgui/lib 和 /include 中的源代码。

以上是关于C++ 中的 GNU Radio QT GUI 接收器的主要内容,如果未能解决你的问题,请参考以下文章

我的项目需要 GUI,该项目具有用 C++ (GNU) 编写的代码并涉及 hash_map 数据结构

[SDR] GNU Radio 系列教程(十四) —— GNU Radio 低阶到高阶用法的分水岭 ZMQ 的使用详解

如何减慢 GNU Radio 中的文件源?

如何在纯c++环境中使用qt中的图像?

在 Windows (Vista) 上使用 C++、Qt 的 GUI 设计问题

从 Qt 中的信号调用成员函数的问题