本帖最后由 sanjue 于 2018-9-16 16:41 编辑
一只想做一个基于STM32的SWD离线下载器,奈何网上没有一个基于STM32的开源的(主要原因是自己菜)。
坛子里面有许多人做出来的,我曾经发私信问过好几个坛友,希望能够咨询一下,不过没有一个人回复我...尴尬........
看过基于STM32F103的daplink(就是那个支持拖拽下载的)的源代码,也看过cmsis daplink,程序太复杂了,初学者很难剥离出需要的代码来修改为离线下载器。
自己之前也大致研究过这个,也只能是做到读取DP,AP,读取寄存器的程序,今天逛github,发现了一个驱动代码,于是我结合以前我写的代码,也移植了
一些别人的代码,勉强调通了SWD程序下载。
程序是基于STM32c8t6小板做的,还没有做外界FLASH或EEPROM来存程序,只是将一个简单的程序转换为数组,存入单片机的中的。
这个其实算不上离线下载器,但是改动一下,作为一个乞丐版的离线下载器还是可以的。
只对STM32F103RCT6进行了测试,目标程序运行正常。
最后贴上MDK工程
同时希望有兴趣的坛友可以继续完善一下,如果您改进了这个程序,恰巧您高兴,可以贴出源代码到这个帖子,或许能够做成第一个开源的离线下载器。
如果没人后续改进,我自己也会慢慢抽时间改进。。这个过程可能很长。。
(修改:添加了图片,改动文字)
更新一些自己收集的SWD资料,我贴一个 {MOD}地址吧,我网络好像有问题,上传不了大的文件
链接:
https://pan.baidu.com/s/1yZ3mPvbIUZMwV83TYl05kw 密码:3cqx
(修改:增加了一些文档资料)
拜读了坛友另外一篇帖子的程序https://www.amobbs.com/forum.php ... ;extra=#pid10400714
这个驱动代码来自于注明的开源项目,稳定度有保证,所以后续会在这个工程之上完善功能。
贴上我修改之后的github地址
https://github.com/jiaosanjue/swd_offlie_downloader
仅仅对DAP驱动的IO控制部分进行了重新移植,方便自由定义端口
删除了部分JTAG等相关的驱动代码,让程序看起来不那么臃肿,方便我这种新手阅读修改。
(修改:修改错别字)
一周热门 更多>