usrp烧写固件支持gnuradio/labview

usrp烧写固件支持gnuradio/labview


Ettus和NI的usrp均可以支持labview和gnuradio平台,烧写不同的firmware和FPGA images即可。本文讲述的是如何烧写固件,使得usrp支持gnuradio软件平台。


本文不讲述如何安装gnuradio及UHD,讲述的是那些因固件原因仅仅能运行labview软件而不能运行gnuradio的usrp如何修改固件使得USRP支持gnuradio。烧写不同的固件即可以使得usrp支持labview/gnuradio。即您想使用哪种平台需要首先烧写哪种平台的固件。


说明一下,从NI公司买来的usrp一般默认是支持labview的,如产品NI-USRP-2920;从ettus公司或者国内代购嘉兆或者海曼等等,一般默认支持gnuradio。可以修改固件,使得其支持不同的平台。


正文如下:

1.从可以使用gnuradio的平台烧写成可以使用labview的平台

NI提供了NI-USRP Configuration Utility,可以从NI官网下载,在windows平台下即可以使用,比较简单,不再描述。下载下来软件修改固件就可以。


2.从可以使用labview的平台烧写成可以使用gnuradio的平台

gnuradio一般是在linux环境下使用的,因此下文介绍操作均在linux平台下进行,且设想事先装好gnuradio及uhd。

以Ettus公司的USRP N210为例,

1)首先我们知道需要修改firmware及fpga images.安装好之后,找到它们,

在/usr/local/share/uhd/imges/usrp_n210_fw.bin    

及/usr/local/share/uhd/images/usrp_n210_r4_fpga.bin

2)uhd下有命令可以使得我们修改固件,

cd  /usr/local/lib/uhd/utils/

在此目录下,ls

b2xx_fx3_utils            uhd-usrp.rules            usrp_burn_db_eeprom          usrp_n2xx_simple_net_burner
fx2_init_eeprom           usrp2_card_burner_gui.py  usrp_burn_mb_eeprom          usrp_x3xx_fpga_burner
query_gpsdo_sensors       usrp2_card_burner.py      usrp_n2xx_net_burner_gui.py
uhd_images_downloader.py  usrp2_recovery.py         usrp_n2xx_net_burner.py



3)我们使用usrp_n2xx_simple_net_burner来进行修改,

运行命令:

./usrp_n2xx_simple_net_burner --addr="192.168.10.3" --fw /usr/local/share/uhd/images/usrp_n210_fw.bin --fpga /usr/local/share/uhd/images/usrp_n210_r4_fpga.bin

(注:ip 地址以具体仪器为准,根目录下使用uhd_find_devices查看;另外,仪器的版本也不一定一样,我的是usrp n210 r4;原则就是寻找适合自己仪器的即可,都在/usr/local/share/uhd/imges/目录下了,自己寻找对应的即可


运行命令,终端显示:

linux; GNU C++ version 4.6.3; Boost_104800; UHD_003.007.001-84-gd99ce4ef


Searching for USRP N2XX with IP address 192.168.10.3.
Found n210_r4.


Searching for specified images.


Will burn the following images:
 * Firmware: /usr/local/share/uhd/images/usrp_n210_fw.bin
 * FPGA:     /usr/local/share/uhd/images/usrp_n210_r4_fpga.bin


Querying n210_r4 for flash information.
 * Flash size:  4194304
 * Sector size: 65536


Erasing FPGA image.
 * Successfully erased 1572864 bytes at 1572864.
Writing FPGA image (100%).
 * Successfully wrote 1311560 bytes.
Verifying FPGA image (100%).
 * Successful.


Erasing firmware image.
 * Successfully erased 31744 bytes at 3145728.
Writing firmware image (100%).
 * Successfully wrote 16383 bytes.
Verifying firmware image (100%).
 * Successful.


Image burning successful. Reset USRP (Y/n)? y




Resetting USRP.


成功。

终端下 运行 uhd_fft -a "addr=192.168.10.3"试试看可否正常运行了。




你可能感兴趣的:(usrp烧写固件支持gnuradio/labview)