【问题标题】:Dual Channel Tuner allocation双通道调谐器分配
【发布时间】:2014-10-03 15:39:48
【问题描述】:

我有一个双通道调谐器,我正在尝试使用 Frontend 2.0 分配两个通道。我正在使用 Redhawk 1.9 安装。当调用 allocateCapacity 时,它表示容量长度为 1。对于双通道调谐器,这应该是 2 吗?我以为我读到 .prf.xml 文件中指定了调谐器的数量,但我没有看到指定的调谐器数量。这是正确的方法吗?

CORBA::Boolean DEVICE_i::allocateCapacity(const CF::Properties & capacities)
throw (CORBA::SystemException, CF::Device::InvalidCapacity, CF::Device::InvalidState) {
        std::cout << "In DEVICE_i::allocateCapacity...capacities length = " << capacities.length() << std::endl;

【问题讨论】:

    标签: redhawksdr


    【解决方案1】:

    应该为每个调谐器调用allocateCapacity。要分配两个调谐器,请两次调用 allocateCapacity

    此上下文中的 capacities 是指传递给allocateCapacity 的请求,而不是设备容量。如您所见,一次应发出一个请求,这意味着请求的长度应为 1。

    设备的容量是使用frontend_tuner_status struct sequence 属性公布的,该属性对每个调谐器都有一个条目。对于双调谐器,frontend_tuner_status struct 序列中应该有两个条目。如果已知且恒定,则可以在.prf.xml 中填充它,但它更常见于运行时在设备代码中填充。要指定有两个调谐器,请将两个结构条目添加到 frontend_tuner_status 结构序列(在 prf 中或在运行时)。

    USRP_UHD 是支持多个调谐器的 FEI 2.0 设备示例,您可以将其用作示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-05
      相关资源
      最近更新 更多