linux下Dnw配置(mini2440)


Linux 下DNW的安装和问题解决

DNW通USB下载.bin 文件到开发板


1.源码下载

mini2440 提供了dnw的tool:http://www.friendlyarm.net/dl.php?file=usbpush.zip

下载解压后有三个文件夹,目前只关注dnw-linux

网上的dnw很多,对比源码,我发现友善提供的这个源码可以带地址参数,即下载数据到什么地址

2.安装与配置

参照:http://blog.chinaunix.net/uid-20587912-id-405183.html

           http://www.cnblogs.com/VRS_technology/archive/2010/07/28/1787414.html

           http://www.cnblogs.com/qiaoge/archive/2012/3/29.html

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

$sudo insmod ./secbulk.ko

安装步骤网上很多,这里就不详细说明了,只提供一些连接,他们都讲的很好。


3.问题解决

3.1 用#sudo dnw 命令下载文件时,提示can not open /dev/secbulk0

网上找了大概两种说法,是否有执行权限,是否加载成功


经过dmesg查看和权限检查,发现问题都不在这!根据提示信息,是否该检查一下是否有/dev/secbulk0 这个设备!!??

通过查看/dev/ 下的设备,发现我的电脑secbulk的从设备号是1。如下图


打开dnw.c源码 看见如图



修改从设备号为1后如下,


在这里我还修改了默认下载地址为0x3000 0000,友善提供的dnw是带地址参数。

经过这样的修改,然后重新编译dnw , 运行结果如下:



3.2#$sudo insmod ./secbulk.ko 为加载模块进内核
开机的时候不会自动加载,这样每次都要先加载才可以使用,此时将其加入开机脚本,
使其得到自动加载,编辑/etc/init.d/rc.local 在最后加上 insmod /所在路径/secbulk.ko。

gedit  /etc/init.d/rc.local
insmod/home/haozi/桌面/dnw_linux/secbulk/secbulk.ko

3.3#调用dnw时只能在当前目录使用./dnw执行,对此情况,将dnw添加到/usr/local/sbin中,这样可以在
任何目录,使用  sudo dnw filename来调用。



©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页