tiny6410无法使用usb下载问题

开发板:友善之臂Tiny6410

superboot:http://download.csdn.net/detail/u012016202/8564895

主机操作系统:Debian 7

两点声明:

1. 配套光盘里的superboot-6410是烧不进去的,原因不明,用上面的链接中的那个可以。

2. 至今依旧没有解决minitools无法连上开发板的问题,笔者使用的是superboot中的下载运行功能,习惯终端操作,这样反而更方便些。


正文:

我使用的是dnw工具,这里记录下整个折腾流程吧,不愿意往下看的读者也可以直接在这里点击http://download.csdn.net/detail/u012016202/8564927下载源文件,编译运行即可,下文都是记录之用。

dnw工具网上能找到两个版本,dnw和dnw2,当然使用之前先得保证电脑上装有libusb,这里就不赘述了。dnw需要写一个模块,加载进内核方能使用,可我之前并不成功,提示没有secbulk0这个文件,ls一下/dev/,确实没有,当时没有细想,现在想想可能是没有未模块注册设备的原因吧,具体写驱动的过程去年操作系统课上机实验做过,现在忘了,有空得温习一遍。后来找到了dnw2,当时参考的这篇文章http://blog.chinaunix.net/uid-23086242-id-2552828.html,IDVENDOR,IDPRODUCT通过lsusb就能查到,对应更改即可,还有就是下载地址需要改成0x50000000(仅限tiny6410),编译通过,运行会报错:

[html]  view plain  copy
  1. usb_bulk_write():no such file or directory  
于是查了usb_bulk_write()函数相关,第二个参数ep是设备端点号,好吧,科普去,推荐一篇很好的帖子,十分十分感谢原作者:http://blog.csdn.net/gaojinshan/article/details/9787005,尽管收获颇多,仍然没有解决我想要的问题,再看看这篇帖子:http://blog.chinaunix.net/uid-20564848-id-73127.html,恩,0x02表示输出,0x81表示输入,到这就明朗了。源代码里的第二个参数是0x03,不知代表啥意思,总之改了就对了。至此,开发板可以接收消息了,不幸的是会出现data error的提示,依旧运行不了。
于是对照了之前下的dnw中的dnw_src目录下的dnw.c,发现dnw2中源代码作者没有写校验和的代码,于是照着添加进来,到这一步,再编译运行,就基本成功啦。

至此,就可以通过superboot中的下载运行功能直接跑裸机程序啦,十分方便,Minitools不用也罢。来张截图:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值