都是转载的文章,方法都是重复的,比较乱,随意看吧。

tiny6410:

首先要安装libusb-dev这个库。我是在ubuntu下做的。
那么就:sudo apt-get install libusb-dev

然后网上随处可以搜索到一个QQ2440的DNW的源码,下载回来后。修改一下就可以使用了。

使用lsusb查看一下USB的设备描述符(IDVENDOR,IDPRODUCT)

我这里是0×1234 和0×5345

修改的地方有以下2个地方:

1.将download address改为0×32000000

2.将endpoint改为0×02

把它保存为文件如:dnw2.c
接着编译: gcc dnw2.c -o dnw2 -lusb
编译完得到的dnw2就是usb下载的PC端了。
下载时用:dnw2 <filename>下载你的文件到板上。速度还可以


idea6410:

网上有篇帖子包含里linux下的dnw,我在用idea6410,编译dnw和secbulk后并不能正常使用

LINUX下的DNW程序下载

http://linux.chinaunix.net/bbs/viewthread.php?tid=1055992

 

secbulk设备未建立,手动建立/dev/secbulk0并不起作用,原因是secbulk probe会匹配id_table,这个是为QQ2440准备的,所以需要改id_table

static struct usb_device_id secbulk_table[]= {
        { USB_DEVICE(0x04e8, 0x1234)},
        { }
};

可以通过lsusb获得idProduct和idVendor,需要在插上板子,并准备下载时此时设备连上时lsusb,0x04e8:0x1234就是我需要的

[zhourr@localhost ~]$ lsusb
Bus 002 Device 005: ID 04e8:1234 Samsung Electronics Co., Ltd
Bus 002 Device 004: ID 064e:a116 Suyin Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 002: ID 093a:2510 Pixart Imaging, Inc.
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 0b05:1751 ASUSTek Computer, Inc.
Bus 005 Device 003: ID 147e:1000 Upek
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

 

希望这个工具广泛使用吧