Интерфейс fmcomms2 Интерфейс Redhawk SDR Устройство - PullRequest
0 голосов
/ 25 сентября 2018

Я скомпилировал "https://github.com/rodrigo455/AD936X_LIBIIO"(Master branch) в redhawk ide(Version:2.0.8 and Build id R201801102017) в Centos 7 после установки libiio и libad9361-iio в соответствии с инструкциями с успехом.Затем я устанавливаю устройство, выбирая и помещая его в папку Target SDR в перспективе Redhawk, и пытаюсь запустить устройство в «песочнице».Устройство запускается с журналированием, переведенным на уровень трассировки со следующим выводом журнала:

файл журнала:

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 () происходит такое поведение.

За пределами SDH Redhawk, когда я изменил ad9361_iiostream.c, чтобы определить поведение вышеупомянутой функции, она работает нормально.

Пожалуйста, помогите со следующим

  1. Почему такое поведение наблюдается особенно в redhawk ide
  2. Я что-то упустил.
  3. Функция getContext() модифицирована для подключения к ad9361 через внутреннюю сеть с жестко закодированным IP-адресом (настройка - ПК (Centos 7 Linux) на zedboard, на котором ad9361 fmcommsплата подключена).4.Использует libiio и libad9361-iio как зависимости пакета программ, чтобы решить эту проблему.5.все эти функции присутствуют в файле AD936X_LIBIIO.cpp в вышеупомянутой ссылке на github.

был бы признателен за любую помощь ...

1 Ответ

0 голосов
/ 08 октября 2018

Ой, извините за задержку

В основной ветке есть код, который был протестирован с использованием REDHAWK 2.1.3. Он не имеет обратной совместимости, поскольку новое поколение кода изменило реализацию базового класса.

Вы можете попробовать одно из следующих действий:

  • Повторно создать реализацию базового класса для вашей версии REDHAWK
  • Использовать версию для REDHAWK 2.0.6
  • Обновление до версии REDHAWK
...