1

我正在尝试将 2000 个抽头传递给 gnuradio 中的 fft 过滤器。我如何读取文件并将其传递给 fft 过滤器抽头文件?

4

2 回答 2

0

这是无法做到的。但是,您可以使用 中Filter Taps可用的变量在GRC流程图初始化时生成所需的抽头。在你的块的字段中传递ID变量,你就完成了。tapsFFT filter

如果您的抽头非常具体并且无法从可用的过滤器抽头变量构造,您可以编辑生成的 python 文件并使用 python 数组来存储它们。

编辑:正如@Marcus 所说,您可以使用numpy从文件中加载水龙头。只需使用要导入的Import元素,然后使用一个元素,用于加载所需的水龙头。GRCnumpyVariablenumpy.fromfile('filename')

于 2016-04-21T13:34:30.613 回答
0

我很幸运:

  1. 在 Matlab 中创建你的抽头向量
  2. 如果h是带有水龙头的矢量,请使用以下说明将它们打印到文件中:
fileID = fopen('filter_taps.txt', 'w');`
fprintf(fileID, '[%5.3f]+', h);
fclose(fileID);
  1. 使用简单的文本编辑器打开文本文件并删除最后一个“+”

  2. 现在,转到 gnuradio-companion 并打开一个插值 FIR 滤波器块

  3. 突出显示并复制文本文件中的点击 [0.00]+[0.01]+... 等(我使用了 control+c)

  4. 在 GRC FIR 块的“水龙头”字段中,粘贴水龙头(我使用了 control+v)

披露:我在我的 Windows 笔记本电脑上运行 Matlab,我在我的 Linux(Ubuntu)笔记本电脑上运行 GRC。

于 2020-12-02T22:22:30.297 回答