在ubuntu下使用指令烧写固件到usrp N210
来源:互联网 发布:数据挖掘相关研究生 编辑:程序博客网 时间:2024/04/28 00:21
usrp在windows下用labview可以进行开发,在ubuntu下用的则是gnuradio。
在windows界面下,labview有配套的NI-Driver能够直接把固件烧进usrp,在此不在赘述。主要来说在ubuntu下怎么用指令烧写固件。
首先要确定在ubuntu下已经安装好了UHD+GNU radio,然后确定使用uhd_find_devices
能够发现设备,记住显示的address,接下来会用到,不过一般情况下默认的是192.168.10.2。第三步是要确定images是否完整,一般情况下images需要从官网下载,具体地址是ettus官网images下载地址 ,下载后解压到任意目录都可以,但是前提是你自己要记得解压到了哪里, 然后要找到uhd提供的utils,我的utils文件夹目录如下/uhd/host/utils
,这是因为我直接把uhd装到了根目录下,在utils文件夹中使用ls命令查看包含文件,得到结果如下:
b2xx_fx3_utils.cpp octoclock_burn_eeprom.cpp uhd_image_loader.cpp usrp_burn_mb_eeprom.cppb2xx_side_channel.py octoclock_firmware_burner.cpp uhd_images_downloader.py.in usrp_cal_utils.hppCMakeLists.txt query_gpsdo_sensors.cpp uhd_usrp_probe.cpp usrp_e3x0_network_mode.cppconverter_benchmark.cpp uhd_cal_rx_iq_balance.cpp uhd-usrp.rules usrp_n2xx_net_burner_gui.pyconverter_benchmark.py uhd_cal_tx_dc_offset.cpp usrp2_card_burner_gui.py usrp_n2xx_net_burner.pyFastSendDatagramThreshold.reg uhd_cal_tx_iq_balance.cpp usrp2_card_burner.py usrp_n2xx_simple_net_burner.cppfx2_init_eeprom.cpp uhd_config_info.cpp usrp2_recovery.py usrp_x3xx_fpga_burner.cpplatency uhd_find_devices.cpp usrp_burn_db_eeprom.cpp
需要特别指出的是,只有.py结尾的文件才可以直接用./命令运行,我使用了usrp_n2xx_net_burner.py来烧写固件,具体的指令如下
./usrp_n2xx_net_burner.py --addr="192.168.10.2" --fw /usr/share/gnuradio/images/usrp_n210_fw.bin --fpga /usr/share/gnuradio/images/usrp_n210_r4_fpga.bin
请注意空格,否则系统会报错。
烧写成功后的提示如下:
USRP-N2XX found.************************************************************************************************WARNING: This utility will be removed in an upcoming version of UHD. In the future, use this command:uhd_image_loader --args="type=usrp2,addr=192.168.10.2" \ --fw-path="/usr/share/gnuradio/images/usrp_n210_fw.bin" \ --fpga-path="/usr/share/gnuradio/images/usrp_n210_r4_fpga.bin"************************************************************************************************Hardware type: n210_r4Flash size: 4194304Sector size: 65536Begin FPGA write: this should take about 1 minute...Erasing 1572864 bytes at 1572864Writing imageVerifying dataRead back 1299084 bytesSuccess.Time elapsed: 50.462293 secondsBegin firmware write: this should take about 1 second...Erasing 31744 bytes at 3145728Writing imageVerifying dataRead back 16383 bytesSuccess.Time elapsed: 1.096099 seconds
好了,现在可以开始学习例程啦!
额,最终发现,用这个方法烧进去的固件不可用,usrp并不能自动识别,不过好在,有了之前无数次失败的经验,终于解决了这个问题。
在ubuntu下有一个命令真的是特别好用,就是locate。我使用了locate uhd_images_downloader.py
命令来查找这个文件,找到后按照所示目录进入文件夹,文件夹里的内容有这些:
fx2_init_eeprom uhd-usrp.rules usrp2_recovery.py usrp_n2xx_net_burner_gui.pyquery_gpsdo_sensors usrp2_card_burner_gui.py usrp_burn_db_eeprom usrp_n2xx_net_burner.pyuhd_images_downloader.py usrp2_card_burner.py usrp_burn_mb_eeprom usrp_n2xx_simple_net_burner
运行./uhd_images_downloader.py后就可以开始下载所需要的iamges,接下来运行./usrp_n2xx_net_burner_gui.py,能够看到引导界面,找到所需要的文件,选定设备后点击最下面的按钮,burn images开始烧写镜像。
- 在ubuntu下使用指令烧写固件到usrp N210
- usrp N210 牛刀小试
- USRP N210 led 指示灯意义
- usrp N210 uhd_fft 例程运行
- Ubuntu14.04下GNU Radio的安装以及USRP N210配置
- USRP N210在OAI平台上应用需要考虑的问题
- Ubuntu下编译USRP FPGA工程方法
- USRP N210实现的整个属性树结构
- USRP N210可以send发送数据,但USRP射频端不工作
- 在Ubuntu下硬盘操作指令
- github 在ubuntu 使用-常用指令
- 在ubuntu下安装VMware Tools,以及相关指令记录
- 在ubuntu下纯指令方式搭建php开发环境
- 在ubuntu下使用qq
- 在Ubuntu下使用记录
- 在Ubuntu下使用adb
- 在ubuntu下使用vncserver
- bochs在ubuntu下使用
- RandomAccessFile随机访问分割文件
- Cocos2d-x3.8.1制作飞翔的小鸟(下)
- LeetCode之Two Sum
- [leetcode][easy]292. Nim Game
- 如何在React中使用数据动态生成DOM标签
- 在ubuntu下使用指令烧写固件到usrp N210
- HDU1020
- 几种常用的Ajax技术
- javaweb工作笔记
- CAS取消https方法配置
- JavaScript-
- Http和Socket连接区别
- mysql授权登录和导入大文件
- 那些相见恨晚的android studio快捷键