ubuntu 下使用usb2ram替代windows下的DNW软件

今天心血来潮,对学习嵌入式linux以来一直没有解决的几个问题进行了一下探索,其实都是在网上找答案,然后自己用开发板去验证它

一个问题是:可不可以在linux下面有这样一个软件,就像在windows下的DNW软件一样,可以下载各种镜像到开发板上,从而可以避免在windows和linux系统之间的切换,那可是一件很让人讨厌的事情。

首先在网上搜了一下,还真有这样的软件,看样子还是得什么都要自己动手去探索才行,要不然的话一直会是个谜

下面是我的解决过程,写给自己看的,也希望给有需要的朋友一点帮助,大家可以共同进步

usb2ram软件下载地址:

http://forum.ubuntu.org.cn/viewtopic.php?f=97&t=107504

 

下载下来的压缩包中解压后是有一个可执行文件的,但是这个可执行文件一般不能执行,需要在自己的系统上重新编译才能用

首先要修改Makefile文件,在第一行之后添加如下这行,用以设定编译器:

CC=gcc

修改之后的Makefile文件如下:

 

#!/usr/bin/make
CC=gcc
LDFLAGS=-lusb -lm

all: usb2ram

clean:
    -rm -f *.o usb2ram

usb2ram: usb2ram.o
    $(CC) $(LDFLAGS) -o $@ $<

boot_usb.o: boot_usb.c
    $(CC) $(CFLAGS) -o $@ -c $<

.PHONEY: all clean

 

编译前先清除无用的文件,以确保后面能够正常编译,这时执行一下命令:

make clean

 

再次编译前要确保有libusb 和libusb-dev两个库,我是看的网上文章的提示。若是没有,编译时就会提示:

cc -lusb -lm -o usb2ram usb2ram.o
/usr/bin/ld: cannot find -lusb
collect2: ld returned 1 exit status
make: *** [usb2ram] 错误 1

于是我就输入命令: sudo apt-get install libusb libusb-dev  进行两个库的安装

这时又有提示:

正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
E: 无法找到软件包 libusb

说是找不到libusb,这时我就输入如下命令:

sudo apt-get install libusb-dev

只安装libusb-dev这个库,这个库可以找的到,安装好之后再make,就成功生成了usb2ram可执行文件

 

下面讲讲它的用法:

我用的是TQ2440的开发板,首先确保norflash里面有bootloader,这时选择从norflash启动,

出现如下菜单界面:

#####    Boot for Nand Flash Main Menu  #####                                  
[1] Download u-boot to Nand Flash                                              
[2] Download Eboot                                                             
[3] Download Linux Kernel                                                      
[4] Download WinCE NK.bin                                                      
[5] Download CRAMFS image                                                      
[6] Download YAFFS image                                                       
[7] Download to SDRAM & Run                                                    
[8] Boot the system                                                            
[9] Format the Nand Flash                                                      
[0] Set the boot parameters                                                    
[a] Download User Program                                                      
[b] Download LOGO Picture (.bmp) to Nand  Flash                                
[l] Set LCD Parameters                                                         
[r] Reboot u-boot                                                              
[q] quit from menu                                                             
Enter your selection:1

在这里我选择的是1:下载uboot到nandflash

这时终端提示:

USB host is connected. Waiting a download.

表示你现在可以使用usb2ram软件下载镜像文件了

这时启动另外一个终端,进入usb2ram可执行文件所在的目录,输入一下命令:

 sudo ./usb2ram 30000000 /home/deng/ARM/images/u-boot_W35.bin

这个命令的形式是:sudo ./usb2ram  地址  文件

一开始在命令之前没有加sudo,提示如下错误:

Unable to claim usb interface 1 of device: could not claim interface 0: Operation not permitted
加上之后就好了

现在切换到由nandflash启动,启动时按住空格建进入下载模式,这时跟norflash启动效果一样,说明uboot已经下载到了nandflash中

也可以用同样的方法将其他的镜像下载只开发板

 

我是菜鸟一个,如有不正确的地方,还请各位大牛指正

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值