在Linux中安装dnw

  因为我的电脑是win10的,搞了半天都装不了dnw,索性就想能不能在linux中直接安装呢。网上搜了一大堆教程,很乱,这里我做个整理吧。我的板子是s5pv210的,系统是ubuntu14.0的。

  1.首先下载usb驱动和下载工具,用的是点击打开链接提供的。我下载之后放到共享文件夹中,然后在虚拟机中解压。

  2.然后会发现有四个文件(如果有多个,请先make clean清除一下),可以先看一下readme,里面有讲的很清楚的过程。

  3.先进入secbulk_driver的usb驱动文件夹,先make clean清除一下,然后vim secbulk.c中修改一下其中的一段代码。

        #ifdef OK6410 
              #define         DOWNLOAD_USB_ID_MAJOR           0x04e8
             #define         DOWNLOAD_USB_ID_MINOR           0x1234
        #else                                           /* add your usb info if neccessary */
        #define         DOWNLOAD_USB_ID_MAJOR           0x04e8
              #define         DOWNLOAD_USB_ID_MINOR           0x1234
        #endif

      我们要改的是DOWNLOAD_USB_ID_MAJOR 和DOWNLOAD_USB_ID_MINOR 后面的值,此值是需要在命令行中输入lsusb可以得到的(不同的flash要在那个表单中加入一些设备相关的信息类似ID号,在程序加载的时候自动读取芯片内部ID和这个相比较,没有注册的设备是不会被系统支持的,可以通过lsusb获得idProduct和idVendor,需要在插上板子,并准备下载时此时设备连上时lsusb)

 4.保存退出。之后编译一下并加载内核模块:

     $make -C /lib/modules/`uname -r`/build M=`pwd` modules

5.我们把这个文件可以保存在一个比较方便的文件夹中,比如mkdir /root/mydriver

   然后把cp secbulk.ko /root/mydriver  

   用insmod命令加载模块 : insmod ./secbulk.ko

   加载后用dmesg命令可以看到模块已经成功加载
        [  238.007970] secbulk:secbulk loaded
        [  238.009101] usbcore: registered new interface driver secbulk

6.vim /etc/init.d/rc.local  在文件中加入insmod /root/mydriver/secbulk.ko一行

   这是因为开机的时候不会自动加载,这样每次都要先加载才可以使用,很麻烦,此时将其加入开机脚本,
使其得到自动加载(注意有的时候是/etc/rc.local,还有/root/mydriver是我们自己刚才自己添加的)

7.我们再进入dnw_src的文件夹中,同样先make clean 清除一下。然后vim dnw.c,修改dnw.c中的前面

     const char* dev = "/dev/secbulk0";

      static long DOWNLOAD_ADDR = 0xd0020010;这个是你的程序的下载地址,自行修改。

     保存退出,make编译一下。将生成的可执行文件copy到/usr/local/bin目录$ cp dnw /usr/local/bin

      这样这样就可以在shell下面直接使用dnw命令了

8.这样我们就已经设置完成了。这个时候我们打开按下板子开关,连接好usb下载线,然后输入

   $dnw -f filename 你自己的文件名,发现下载成功。


  注意:有时候由于内核的升级,运行时会提醒Can not open /dev/secbulk0的错误,此时需要重新到secbulk目录执行$make -C /lib/modules/`uname -r`/build M=`pwd` modules,然后加载模块$sudo insmod ./secbulk.ko即可!

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值