内容介绍
UHD为Ettus USRP的设备驱动程序,绝大部分的应用软件,比如GNU Radio、LabView、openBTS、openAirInterface和Matlab都是通过调用UHD提供的API接口对USRP设备进行控制。
UHD的编程语言为C++,并且提供C和python语言接口。
UHD支持多种操作系统:Linux (比如Fedora、 Ubuntu、 Redhat、Debian、Mint和OpenSuse)、Windows系统和Mac OS X系统。
RFNoC版本(https://www.ettus.com.cn/SDR/6.html),可以方便我们在FPGA中进行程序开发。目前最新的UHD版本包括RFNoC。
UHD固件和FPGA镜像是烧写到USRP中的程序,版本需要与UHD版本兼容。
以下几种情况下,UHD有可能检测到版本不兼容,需要重新烧写UHD固件和FPGA镜像:
1. 用户切换UHD版本后;
2. 设备出厂时的固件和镜像版本低于用户安装的最新UHD版本;
3. LabView和Matlab对USRP的支持包一年只更新约2次,且更新步伐不一致,支持包底层使用的UHD版本有可能不同;
检测固件和镜像与UHD版本兼容的方法:
确保设备和计算机联通后,运行uhd_usrp_probe命令,如果版本兼容,将会打印出设备的详细信息;
如果显示信息类似于
则说明版本不兼容,需要下载相应的固件和镜像到计算机,然后烧写固件和镜像到USRP设备。
2种方法下载固件和镜像:
1. 使用UHD自带工具下载:
sudo uhd_images_downloader
2. 从本网站下载,然后解压到指定的路径下。一般情况下,Linux系统需要解压到以下路径:
/usr/local/share/uhd/images
解压后的文件大约是这样的:
烧写镜像和固件的方法:
uhd_image_loader --args=addr=192.168.10.2,type=x300
--args后带的参数需要根据实际情况调整,X310、X300、N210和N200可以使用设备的IP地址来设置(addr=192.168.10.2),所有设备都可以使用设备的序列号来设置(serial=11111111)。设备的IP地址和serial可以用uhd_find_divices来查找。
X系列和N系列设备烧写完毕后重启设备即可使用,而B系列和E系列无需重启设备就可正常使用。
软件下载
该资料涉及到的产品