USRP相关报错解决办法

发布时间:2024年01月20日


前言

在进行 USRP 开发时遇到了一些报错,这里做个记录解决问题的方法。


一、本地环境

  • 电脑操作系统:Windows11
  • MATLAB 版本:MATLAB 2021a
  • USRP 型号:USRP-N320
  • USRP 固件版本:UHD_3.15.0.0-vendor

二、相关报错信息

报错1:

Checking radio connections…
---------- begin libuhd error output ----------
Exception caught in safe-call.
in __cdecl ctrl_iface_impl<0>::~ctrl_iface_impl(void)
at B:\3p\sources\UHD\lib\rfnoc\ctrl_iface.cpp:52
this->send_cmd_pkt(0, 0, true); -> EnvironmentError: IOError: Block ctrl (CE_01_Port_40) packet parse error - EnvironmentError: IOError: Expected packet index: 425 Received index: 426
---------- end libuhd error output ----------
discover radio!
警告: SerialNum 属性与 System object 的此配置无关。

位置:matlab.system.SystemProp/setProperties
位置: comm.internal/SDRuBase
位置: comm/SDRuTransmitter
位置: test (第 24 行)

报错2:

Checking radio connections…
---------- begin libuhd error output ----------
Exception caught in safe-call.
in __cdecl lmx2592_impl::~lmx2592_impl(void)
at B:\3p\sources\UHD\lib\usrp\common\lmx2592.cpp:155
_regs.powerdown = 1; commit(); -> EnvironmentError: IOError: Block ctrl (CE_01_Port_40) packet parse error - EnvironmentError: IOError: Expected packet index: 376 Received index: 375
---------- end libuhd error output ----------
警告: An error occurred: Could not execute UHD driver command in ‘createDriver_c’: Could not create a UHD driver using IP addr ‘192.168.10.2’. Attach a device at the
specified address, correct the specified address to match an already attached device, or continue to work in off-line mode.
Error from UHD: EnvironmentError: IOError: Block ctrl (CE_01_Port_40) packet parse error - EnvironmentError: IOError: Expected packet index: 375 Received index: 376.

位置:coder.internal.warning (第 8 行)
位置: reportSDRuStatus (第 104 行)
位置: findsdru (第 205 行)
位置: mytransmitter (第 127 行)
错误使用 mytransmitter (第 146 行)
no discover radio!

在这里插入图片描述

报错3:

错误使用 comm.SDRuTransmitter/stepImpl
Transmit unsuccessfully: Could not execute UHD driver command in ‘sendData_c’: EnvironmentError: IOError: Block ctrl (CE_01_Port_40) packet parse error -
EnvironmentError: IOError: Expected packet index: 451 Received index: 452

出错 test (第 35 行)
tx(modSignal);

错误 3 可以尝试释放资源,再次运行。

二、解决办法

1、更换电脑操作系统

实验室一台 Win10 台式电脑可以正常驱动 USRP 工作且不报错,我的电脑操作系统是 win11,因此怀疑是操作系统的原因,因此安装了个 win10 的虚拟机进行开发 USRP,果不其然,问题游刃而解

2、升级最新版固件

可以尝试一下将 MATLAB 升级到 2023b,然后也将 USRP 的固件烧录成和 MATLAB 对应的版本 UHD_4.2.0.0-vendor


我的qq:2442391036,欢迎交流!


文章来源:https://blog.csdn.net/qq_41839588/article/details/135620354
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。