【问题标题】:Differences in display of parameters between GNU Radio 3.7 and 3.8GNU Radio 3.7 和 3.8 之间参数显示的差异
【发布时间】:2020-08-09 01:22:26
【问题描述】:

我正在将 multi-rtl 移植到 GNU Radio 3.8。我实际上已经完成了所有的移植,并且我已经有了一个可以工作的程序。现在只缺少一些外观更改,例如新示例。当我想创建一个新示例时,我意识到该块对我的显示与图片中的不同。这是来自文档(原始程序)的这张图片:

下面是这个块的显示方式(在我移植的程序中):

这甚至是预期的行为。以下是该块的参数(以这种方式为每个 n 生成):

-   id: sync_gain${n}
    label: "Ch${n}: Sync RF Gain (dB)"
    category: Synchronization
    dtype: real
    default: 10
    hide: ${"$"}{ 'part' if nchan > ${n} else 'all' }
-   id: freq${n}
    label: "Ch${n}: Frequency (Hz)"
    category: RF Options
    dtype: real
    default: 100e6
    hide: ${"$"}{ 'none' if nchan > ${n} else 'all' }
-   id: gain${n}
    label: "Ch${n}: RF Gain (dB)"
    category: RF Options
    dtype: real
    default: 10
    hide: ${"$"}{ 'part' if nchan > ${n} else 'all' }
-   id: gain_mode${n}
    label: "Ch${n}: Gain Mode"
    category: RF Options
    dtype: bool
    default: False
    hide: ${"$"}{ 'part' if nchan > ${n} else 'all' }
    options: [ False, True ]
    option_labels: [ Manual, Automatic ]
-   id: id_string${n}
    label: "Ch${n}: ID string"
    dtype: string
    default: "${n}"
    hide: ${"$"}{ 'part' if nchan > ${n} else 'all' }

隐藏选项设置为无的唯一参数是“Ch $ {n}:频率(Hz)”,因此它也是唯一显示“外部”的参数。这是正常的。但是,我不明白为什么 gnuradio 3.7 中此代码的等效项显示不同。这是我认为等效的 GNU Radio 3.7 代码:

<param>
  <name>Ch$(n): Sync RF Gain (dB)</name>
  <key>sync_gain$(n)</key>
  <value>10</value>
  <type>real</type>
  <hide>\#if \$nchan() > $n then 'part' else 'all'#</hide>
  <tab>Synchronization</tab>
</param>
<param>
  <name>Ch$(n): Frequency (Hz)</name>
  <key>freq$(n)</key>
  <value>100e6</value>
  <type>real</type>
  <hide>\#if \$nchan() > $n then 'none' else 'all'#</hide>
  <tab>RF Options</tab>
</param>
<param>
  <name>Ch$(n): RF Gain (dB)</name>
  <key>gain$(n)</key>
  <value>10</value>
  <type>real</type>
  <hide>\#if \$nchan() > $n then 'part' else 'all'#</hide>
  <tab>RF Options</tab>
</param>
<param>
  <name>Ch$(n): Gain Mode</name>
  <key>gain_mode$(n)</key>
  <value>False</value>
  <type>bool</type>
  <hide>\#if \$nchan() > $n then 'part' else 'all'#</hide>
  <option>
    <name>Manual</name>
    <key>False</key>
  </option>
  <option>
    <name>Automatic</name>
    <key>True</key>
  </option>
  <tab>RF Options</tab>
</param>
<param>
  <name>Ch$(n): ID string</name>
  <key>id_string$(n)</key>
  <value>"$(n)"</value>
  <type>string</type>
  <hide>\#if \$nchan() > $n then 'part' else 'all'#</hide>
</param>

为什么它们的显示方式不同?

【问题讨论】:

    标签: gnuradio gnuradio-companion


    【解决方案1】:

    为什么它们的显示方式不同?

    您的 gnuradio 3.7 版本中可能存在一些错误。我刚刚使用 gnuradio 3.7.13.5 对其进行了测试,显示的块类似于您的 gnuradio 3.8 示例。

    如果您想查看所有参数,请将'part' 更改为'none'。另见https://wiki.gnuradio.org/index.php/YAML_GRC#Parameters

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 2012-08-23
      • 2020-11-14
      • 1970-01-01
      • 2011-10-23
      • 2011-03-23
      相关资源
      最近更新 更多