我们将使用Gnuradio从无线电外设传输数据。此外,我们还有另一个外围设备,它是以编程方式控制的系统的一部分。我有一个基本的C程序来进行控制。
我希望能够在GNUradio中实现这一点,但我不会'知道最好的办法是什么。我已经看到你可以制作块了,所以我想我可以制作一个接收器块,有一个恒定的输入,并且具有由WX滑块等控件定义的常量值。
如果我可以移除常量块并且只是将分配给WX滑块的变量直接分配给控制块,那么将需要一个不必要的部分,但是那时就没有输入。你能创建一个只输入某个程序或子程序的无输入和无输出块吗?
此外,在进行基本测试以确定这是否可行时,我使用滑块来获取WX示波器图的常量源。在设置选项和看到结果显示在情节之间似乎存在滞后或延迟。有没有更有效的方法来减少这种滞后?或者是因为我的计算机很慢而导致延迟?
答案 0 :(得分:0)
我猜你的工作流程图中需要一个油门,或者块之间的采样率不正确。
除非您发布grc文件或其图像,否则几乎无法帮助您。
答案 1 :(得分:0)
如果我可以移除常量块并且只是将分配给WX滑块的变量直接分配给控制块,那么将需要一个不必要的部分,但是那时就没有输入。你能创建一个只输入某个程序或子程序的无输入和无输出块吗?
是的,如果你这样做会有效。实际上,您可以在GRC XML文件中编写任何类型的Python代码,如果您正确设置了属性和setter代码,那么您想要的是什么。它本身并不需要实际创建任何GNU Radio块。
此外,在进行基本测试以确定这是否可行时,我使用滑块来获取WX示波器图的常量源。在设置选项和看到结果显示在情节之间似乎存在延迟或延迟。
GNU Radio未针对最小延迟进行优化,但针对高效的批量处理进行了优化。您正在看到源和接收器之间的缓冲。每当你有一个计算值的源而不是绑定到某个硬件时钟时,它下游的缓冲区将总是接近满,你就会得到这个滞后。
在高级选项中,有调整缓冲区大小的设置,但它们只会有很多帮助。