我从github存储库(https://github.com/RedhawkSDR/USRP_UHD)安装了最新版本的Redhawk(v1.9.0)和USRP_UHD,但我不知道如何构建USRP源/接收器。 某些存储库中是否已有这些组件? 如果没有,有人可以帮我构建这些源/接收器吗?
提前致谢,
胭脂红
答案 0 :(得分:2)
正如John C所说,为了控制USRP_UHD设备,您必须在其中一个调谐器上执行分配。在RedHawk 1.9中,执行此操作的步骤如下:
在连接部分下方(</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>
在“连接”部分中,(在<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>
保存波形并将其安装在SDRROOT
在第二步中,您实际要做的是指定波形取决于某个设备。依赖关系由usesdevice id唯一标识。在这里,您应该将@UUID @替换为在终端中运行uuidgen命令的输出。接下来,您必须确定波形所依赖的设备,这是通过FRONTEND和USRP属性引用来完成的。最后,您必须指定设备分配的参数,以便为您设置调谐器。如果您想接收数据,请将@ TUNER_TYPE @替换为RX_DIGITIZER;如果您想传输数据,请将TX替换为TX。除非您打算在设备上进行多次分配,否则分配ID可以保持原样。在这种情况下,每个分配必须具有唯一的分配ID。其余的参数是相当自我解释的,但应注意,center_frequency参数应以Hz为单位,sample_rate参数是复杂的采样率。
在第三步中,您要做的是将设备连接到波形中的组件。 connectinterface id应与第二步中的分配id匹配,deviceusedbyapplication usesrefid应与第二步中的usesdevice id匹配。 @ INPUT_PORT_NAME @应与组件上输入端口的名称匹配,@ NAME_OF_COMPONENT_IN_WAVEFORM @应与要连接的组件的用法名匹配。
答案 1 :(得分:0)
USRP设备是符合前端接口的设备,因此为了使数据流出dataShort_out端口,必须分配调谐器。执行此分配时,您将提供唯一的分配ID。如果分配请求返回成功,则可以使用此分配ID作为dataShort_out端口的连接ID。有关前端接口的详细信息,请查看文档here