找回密码
 注册
关于网站域名变更的通知
查看: 287|回复: 1
打印 上一主题 下一主题

Linux环境下DNW工具的使用(OK6410)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-10-10 12:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

- U# h: c6 I6 W. q1 ~! w一直在Windows下开发,某些bug总是使我不能全心全意的信任Windows,从开发嵌入式开始,一直就想把开发环境转移到Linux环境下,特别是下载程序的时候,不过确实有Linux的开发环境,就拿下载程序来说,Linux下的minicom和dnw真的是很好用,同时也可以学习源代码。下面教你如何下载、安装、使用dnw。
7 I! x" K' i/ e  B" x: j* W; @, D: \. L' a
1. dnw由两部分构成:USB驱动和下载工具,USB驱动便是secbulk文件夹,下载工具是DNW文件夹# d8 i! ]5 Z; N
% G- K" Y. }* E1 O# _$ o4 s& o
2.  安装dnw3 f+ `1 O  T; R+ A  }& J
6 Y, k% c8 t0 w: U/ g
     解压缩,之后会看到dnw_linux文件夹,进入该文件夹% m+ F$ t3 X0 b* M' U

  j! y9 Y' M: D% o- ?     $ cd dnw_linux$ g6 [& U5 D, {# o) s
+ y2 O+ S3 A) j$ V: S
     $ ls( n: t( X( Z0 q; @8 k! ]9 D
  c% u7 z: B* s+ ~
     $ /dnw   /secbulk0 Z, u* g  ^, Q7 p4 x2 v

- M+ F* q  b1 b  P# G7 D' }
/ s! T" C- p8 j' ~3 w     2.1  首先修改、编译和安装驱动
: L+ g2 Z+ i* v# ~) v- O" L5 p4 x
     进入secbulk文件夹,输入编译命令,编译成模块。(我自己修改了Makefile,因此大家只需make就可编译,make clean 就可清除编译。修改后的Makefile如下:
" t) c$ q; @$ Z6 j4 |9 [" L
( k6 b& H9 m* G  @4 j3 H2 bobj-m := secbulk.o
5 H" _8 R% P& B0 OKDIR := /lib/modules/`uname -r`/build8 U& q6 V. i7 ?' o
PWD  := $(shell pwd)
9 g7 ?0 l1 j' j$ ~3 d( ~
+ R& e% B! \" w3 Q% m. _+ ]default:
, E& T9 ~( S5 n4 Y6 s+ k8 L        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules5 h* t# ~. [2 Q, y5 u2 f) t
clean:
8 q; J: B% @( ]% _        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean% o. l+ `5 @1 }6 [
        rm -RF *.order *.symvers7 K1 m1 e" @( ]& @; U" H
     在修改secbulk.c中代码,将0x5432改为0x04e8(不同的flash要在那个表单中加入一些设备相关的信息类似ID号,在程序加载的时候自动读取芯片内部ID和这个相比较,没有注册的设备是不会被系统支持的,可以通过lsusb获得idProduct和idVendor,需要在插上板子,并准备下载时此时设备连上时lsusb,0x04e8:0x1234),代码如下:
/ Y9 u3 U; |  r1 B/ n5 G2 ]6 L4 }* P  H% ?$ Q- n" W
static struct usb_device_id secbulk_table[]= {
: g; h% b0 Y  I% b  \        { USB_DEVICE(0x04e8, 0x1234)},
# I5 `% Z; C. q        { }
: e* @4 [9 g6 D# H4 q6 s};+ D- y/ i1 x/ F( ?: |8 o

7 h" j2 e, U9 M( `' x: ]; `    至此,代码修改完毕!
* n9 p% c) R- e
  {) c: T& P- b' I! E     $ make/ A  ]0 Q! {0 m$ I* y: F, w
0 [2 w/ @/ M' }. l# J  H/ x) |2 m
     之后在文件夹中会有secbulk.ko模块文件,如下图所示:
* b4 k3 k- @9 X3 Y9 o7 T
  r5 w4 Z3 r% J# J3 l      ! X- I4 l% J0 L7 f1 @
1 S6 f/ K4 C7 Y8 b( C( T( x. r
     加载该模块到内核(注意:需要root权限)
; T  V  I) l  X/ A& Z" y- P+ Z3 a; a' h' n% [
     $ sudo insmod secbulk.ko- Q. s% ^! s, P* e) I
游客,如果您要查看本帖隐藏内容请回复

+ T* H- j% J7 A4 m. E. ]/ i% b. {. c" f* J
" F4 V* U8 s+ _) i6 b: y

. S8 d% [7 H1 }/ H2 q* t' g1 N& i/ Z2 L* f+ c
* @% @+ C/ \8 x1 [0 t& |- R5 N* u+ `
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 02:01 , Processed in 0.171875 second(s), 27 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表