0

我从 github 存储库( https://github.com/RedhawkSDR/USRP_UHD )安装了 Redhawk 的最新版本(v1.9.0)和 USRP_UHD,但我不知道如何构建 USRP 源/接收器。这些组件在某个存储库中是否已经可用?如果没有,有人可以帮我构建这些源/接收器吗?

提前致谢,

胭脂红

4

2 回答 2

2

正如 John C 所说,为了控制 USRP_UHD 设备,您必须对其中一个调谐器执行分配。在 RedHawk 1.9 中,执行此操作的步骤如下:

  1. 打开要在其中执行分配的波形并查看 *.sad.xml 文件
  2. 在连接部分下方(</connections>标记后)添加以下内容:

    <usesdevicedependencies> <usesdevice id="DCE:@UUID@" type="usesUSRP"> <propertyref refid="DCE:cdc5ee18-7ceb-4ae6-bf4c-31f983179b4d" value="FRONTEND"/> <propertyref refid="DCE:0f99b2e4-9903-4631-9846-ff349d18ecfb" value="USRP"/> <structref refid="FRONTEND::tuner_allocation"> <simpleref refid="FRONTEND::tuner_allocation::tuner_type" value="@TUNER_TYPE@"/> <simpleref refid="FRONTEND::tuner_allocation::allocation_id" value="usrpAllocation"/> <simpleref refid="FRONTEND::tuner_allocation::center_frequency" value="99100000"/> <simpleref refid="FRONTEND::tuner_allocation::bandwidth" value="1000000"/> <simpleref refid="FRONTEND::tuner_allocation::sample_rate" value="1000000"/> <simpleref refid="FRONTEND::tuner_allocation::group_id" value=""/> <simpleref refid="FRONTEND::tuner_allocation::rf_flow_id" value=""/> </structref> </usesdevice> </usesdevicedependencies>

  3. 在连接部分,(在<connections>标签之后)添加以下内容:

    <connectinterface id="usrpAllocation"> <usesport> <usesidentifier>dataShort_out</usesidentifier> <deviceusedbyapplication usesrefid="DCE:@SAME_UUID_AS_ABOVE@"/> </usesport> <providesport> <providesidentifier>@INPUT_PORT_NAME@</providesidentifier> <componentinstantiationref refid="@NAME_OF_COMPONENT_IN_WAVEFORM@"/> </providesport> </connectinterface>

  4. 保存波形并安装到 SDRROOT

在第二步中,您实际要做的是指定波形取决于某个设备。依赖项由 usesdevice id 唯一标识。在这里,您应该将 @UUID@ 替换为在终端中运行 uuidgen 命令的输出。接下来,您必须确定波形依赖于哪个设备,这通过 FRONTEND 和 USRP 属性引用来完成。最后,您必须指定分配给设备的参数,以便它为您设置调谐器。如果您想接收数据,请将@TUNER_TYPE@ 替换为 RX_DIGITIZER,如果您想发送数据,请替换为 TX。分配 ID 可以保持原样,除非您打算在设备上进行多个分配。在这种情况下,您必须为每个分配有一个唯一的分配 ID。

在第三步中,您正在做的是将设备连接到波形中的组件。connectinterface id 应该与第二步中的分配 id 匹配,而 deviceusedbyapplication usesrefid 应该与第二步中的 usesdevice id 匹配。@INPUT_PORT_NAME@ 应与组件上的输入端口名称匹配,@NAME_OF_COMPONENT_IN_WAVEFORM@ 应与您要连接的组件的使用名称匹配。

于 2014-04-10T15:10:14.613 回答
0

USRP 设备是符合前端接口的设备,因此为了让数据流出 dataShort_out 端口,必须分配调谐器。当您执行此分配时,您将提供一个唯一的分配 ID。如果分配请求返回成功,您可以使用此分配 ID 作为连接 ID 到 dataShort_out 端口。有关前端接口的更多信息,请查看此处的文档

于 2014-03-12T19:32:00.893 回答