历史上的今天
今天是:2024年09月22日(星期日)
2021年09月22日 | tiny6410无法使用usb下载问题
2021-09-22 来源:eefocus
开发板:友善之臂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),编译通过,运行会报错:
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不用也罢。来张截图:

上一篇:ARM协处理器CP15介绍
史海拾趣
|
我的笔记本通过无线上网,想在虚拟机XP里面用vxworks6.6的workbench,这个是朋友的朋友公司用的,必须不能上网,一上网的话就全完了。这种情况下,怎么设置才能实现这个目的。 目前我的想法是,虚拟机和主机用桥接方式,桥接强制设为有线物理网卡 ...… 查看全部问答> |
|
我现在在wince下用程序调用了蒙恬输入法,可是调起后会在右下角显示一个箭头,并不是直接在屏幕上显示输入的那个操作界面,怎样才能通过代码实现让蒙恬输入法的操作界面显示出来呢?… 查看全部问答> |
|
钴酸锂电池-锰酸锂电池-三元镍钴材料电池-磷酸铁锂电池-和锂聚合物电池,他们有什么区别? 钴酸锂电池-锰酸锂电池-三元镍钴材料电池-磷酸铁锂电池-和锂聚合物电池,他们有什么区别? 究竟哪种能量密度最高? … 查看全部问答> |
|
定时器PWM输出软仿正常,下载到硬件却无输出,求助!!!!!!!!!!! 附上程序, 求指点!!!!!!!!!!!!! #include \"breath.h\" uint8_t Index_Wave[]={1,1,2,2,3,4,6,8,10,14,19,25,33,44,59, 80,107,143,191,143,107,80,59,44,33,25,19,14,10,8,6,4,3,2,2,1,1}; static void TIM3_GPIO_Init(void ...… 查看全部问答> |




