开贴记录SWD 脱机烧录器开发过程,请各路大神指教

2019-12-09 19:23发布

参考 CMISI_DAP,BlackMagic代码。
预备下周末结案,目前方案:
1:Host用STM32F427,跑RTEMS系统, IO口模拟SWD时序。
2:flash的操作函数,由Host通过SWD下载入target ram执行。(CMISI_DAP采用这种方式)
     不知道jlink的flash操作是不是一样的原理。他要适用这么多芯片,那得有准备多少这样的小程序啊。。。
3:USB用的虚拟串口,用ST官方提供的驱动,上位机编程简单。tafget本身程序.bin文件由上位机通过虚拟串口传入。
     此虚拟串口的波特率,奇偶,起停位设置均形同虚设。

目前状态:
SWD时序基本调试通过,读写target ID/reg已经正常,暂时未经过高强度测试。。
正在弄flash操作。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
94条回答
abbott.yang
1楼-- · 2019-12-15 04:04
shangdawei 发表于 2015-8-22 09:50
>> 正好是56个时钟 ?

我用的V8,用jflash,点connect的时候,是56个时钟!
项目目前还是一周前差不多。我在外面,其他的同事在做其他功能部分。
让大家失望了。。。。。。。。
shangdawei
2楼-- · 2019-12-15 09:31
abbott.yang 发表于 2015-8-28 19:54
我用的V8,用jflash,点connect的时候,是56个时钟!
项目目前还是一周前差不多。我在外面,其他的同事在 ...

看来V9和V8的实现方法是不一样的。
shangdawei
3楼-- · 2019-12-15 14:31
https://www.xiaopingtou.cn/data/attach/1912/o41zs14ci97vseqiu7q8w2xd418awss9.jpg 本帖最后由 shangdawei 于 2015-8-28 21:27 编辑

KT-link Interface

271837287509070.png (99.27 KB, 下载次数: 0)

下载附件

KT-link Interface

2015-8-28 20:18 上传




shangdawei
4楼-- · 2019-12-15 18:01
 精彩回答 2  元偷偷看……
hanshiruo
5楼-- · 2019-12-15 21:34
半仙 发表于 2015-8-28 18:39
最近正好有需求,持续关注楼主进展

我有SWD脱机下载器成品,如果需要可以联系我
abbott.yang
6楼-- · 2019-12-16 00:07
shangdawei 发表于 2015-8-28 18:07
目前进度如何?是否打算开源呢?

读各种ID,寄存器,读写RAM,读Flash都没问题了。
写Flash还是写不进去。。。虽然SWD给出的ACK是正确的,但是写完再读出来还是写之前的,擦除再写也一样,在查原因,写动作没有任何作用,尝试是否和flash锁定有关系。
寄存器有的写不进去,xpr,pc,lr写不进去。也是swd提示ACK_OK,读出来还是和写进去之前一样,原因待查。
等做完,确认各种动作都正常就开源吧,不过因为职业原因,只会给出SWD的操作函数源代码。这其实没多大意义,参考CMSIS—DAP和ARM以及CortexM3文档,应该难度不大的。
要的发消息给我吧,留下信箱,我还是新手上路,消息,加好友都不行,杯具了!!!

一周热门 更多>