fmcomms2前端接口Redhawk SDR设备

时间:2018-09-25 04:29:21

标签: c++ redhawksdr

在成功安装了"https://github.com/rodrigo455/AD936X_LIBIIO"(Master branch)redhawk ide(Version:2.0.8 and Build id R201801102017)之后,我已经在Centos 7的libiio中编译了libad9361-iio。然后,我通过在Redhawk透视图中的Target SDR位置中拖放来安装设备,并尝试在Sandbox中启动设备。启动设备后,日志记录已转换为跟踪级别,并显示以下日志输出:

日志文件:

2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'dataShortTX_in'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'dataShortTX_in'
2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'TX1A_0'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'TX1A_0'
2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'TX1B_1'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'TX1B_1'
2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'TX2A_2'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'TX2A_2'
2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'TX2B_3'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'TX2B_3'
2018-09-25 09:26:27 TRACE PortSupplier_impl:42 - Adding port 'dataShortRX_out'
2018-09-25 09:26:27 TRACE PortSupplier_impl:46 - Activating port 'dataShortRX_out'
2018-09-25 09:26:27 TRACE AD936X_LIBIIO_i:87 - virtual void AD936X_LIBIIO_i::construct()
2018-09-25 09:26:27 TRACE PropertySet_impl:125 - Setting 0 exec parameters
2018-09-25 09:26:27 TRACE PropertySet_impl:143 - Done setting exec parameters
2018-09-25 09:26:27 TRACE Resource:65 - narrow to Registrar object:IOR:000000000000001949444C3A43462F4465766963654D616E616765723A312E30000000000000000100000000000000BC000102000000000E3139322E3136382E3132322E3100B0F10000001D3139333637393336312F060336001F114716100630463814141B484C1B000000000000040000000300000018000000000000000E3230312E3132332E38312E323100B0F10000000300000018000000000000000E3230312E3132332E38312E323100B0F10000000000000008000000004A4143000000000100000024000000000501000100000002000100010001000F00010109000000020501000100010100
2018-09-25 09:26:27 TRACE Resource:85 - Resolve DeviceManager...
2018-09-25 09:26:27 TRACE Resource:89 - Resolving DomainManager from DeviceManager...
2018-09-25 09:26:27 DEBUG Device:1184 - Getting EventManager.... DEV-ID:DCE:601ee5cd-3686-4aeb-a54c-f424c173e600
2018-09-25 09:26:27 DEBUG redhawk::events::Manager:536 - Resolve Device and Domain Managers...
2018-09-25 09:26:27 WARN  redhawk::events::Manager:509 - Resource (DCE:601ee5cd-3686-4aeb-a54c-f424c173e600) does not provide EventChannelManager access, Event channel management is not allowed
2018-09-25 09:26:27 WARN  Device_impl:1195 - Unable to connect to Domain's IDM Channel,  DEV-ID:DCE:601ee5cd-3686-4aeb-a54c-f424c173e600
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: fir_filter_control
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: target_device
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: buffer_size
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: FRONTEND::tuner_status
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: connectionTable
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: receive_chain
2018-09-25 09:26:27 TRACE PropertySet_impl:164 - Constructor property: transmit_chain
2018-09-25 09:26:27 TRACE AD936X_LIBIIO_i:1229 - void AD936X_LIBIIO_i::initAD936x()
2018-09-25 09:26:27 TRACE AD936X_LIBIIO_i:1324 - void AD936X_LIBIIO_i::initAD936x()KAUSHAL IS IN initAD936x() before loadCurrentConfig
2018-09-25 09:26:27 TRACE AD936X_LIBIIO_i:1781 - void AD936X_LIBIIO_i::loadCurrentConfig()KAUSHAL IS IN loadCurrentConfig()
2018-09-25 09:26:27 TRACE AD936X_LIBIIO_i:1787 - void AD936X_LIBIIO_i::loadCurrentConfig()KAUSHAL IS IN loadCurrentConfig() before updateReceiveFrequency
The IDE detected that the process Terminated with exit code SIGSEGV (11)

在执行loadCurrentConfig()函数的updateReceiveFrequency()函数中,设备以分段错误退出。通过放置LOG_TRACE()进行进一步的探测,我发现在执行iio_channel_attr_read_double()函数的过程中会发生这种情况。

在Redhawk SDR外部,当我修改ad9361_iiostream.c以确定上述功能的行为时,它工作正常。

请帮助关注

  1. 为什么这种现象在Redhawk ide中尤其如此
    1. 我错过了什么吗?
    2. 修改了getContext()函数,以使用硬编码IP地址通过网络后端连接到ad9361(设置为PC(Centos 7 Linux)到连接ad9361 fmcomms板的zedboard)。 4.将使用libiio和libad9361-iio作为软件包依赖项可以解决此问题。 5.所有这些功能都存在于上述github链接的AD936X_LIBIIO.cpp文件中。

感谢您的帮助...

1 个答案:

答案 0 :(得分:0)

哦..很抱歉耽误时间

master分支具有使用REDHAWK 2.1.3测试的代码 它不向后兼容,因为新的代码生成修改了基类的实现。

您可以尝试以下方法之一:

  • 再次为您的REDHAWK版本重新生成基类实现
  • 将发布版本用于REDHAWK 2.0.6
  • 更新您的REDHAWK版本