打印
[STM32]

Corex-M JTAG/SWD/脱机编程必须参考的资料【原创】

[复制链接]
3015|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
turmary|  楼主 | 2016-5-15 12:58 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 turmary 于 2016-5-16 10:04 编辑

送给新手,老司机勿喷
1. 结构图

图1


2. 先从最外层说起,片外JTAG/SWD引脚,参考芯片Data Sheet, Reference Manual.
以STM32为例,RM0008 from st.com

调试章节

这时已经可以访问图1中,DP内的DPACC,APACC

3. DP分JTAG-DP/SW-DP/SWJ-DP
参考 IHI0031A_ARM_debug_interface_v5.pdf from arm.com

寄存器在Debug Port Registers章节

此时可以访问图1的AP Access和APSEL,下一层访问AP
AP Access一看就明白,指定读写/地址/数据,APSEL的设置参考DDI0314F_coresight_component_trm.pdf

4. AP 有AHB-AP/APB-AP/JTAG-AP等
参考IHI0031A_ARM_debug_interface_v5.pdf

ARM_debug_interface_v5中
AHB-AP/APB-AP都是MEM-AP的实例,面象对象的说法。
JTAG-AP就是JTAG-AP

以及DDI0314F_coresight_component_trm.pdf的Debug Access Port章节

此时可以访问AHB-AP, AHB-AP中又是地址+数据,见下图。

这里的地址已经连接到AHB总线矩阵,因些激动人心的时刻到了,
大部分4G地址空间的存储和外设都可以访问了。

5. 具体的Cortex-M3控制
参考Cortex-M3技术参考手册(Cortex-M3 Technical Reference Manual.pdf)

读写Cortex-M3 核心寄存器(R0-R12,SP,LR,PC等),启停CPU


访问存储及外设,设置Flash断点参考


6. 一些开源程序,从小的开始说
1> swddude
VC/MinGW编译,Windows上运行,通过FT232/FT2232连接Target,只
支持SWD方式,TARGET仅有LPC的两个Cortex芯片

2> CMSIS-DAP
ARM/MBED出品,源码
MDK编译,LPC/FRDM上运行

3> OpenOCD
功能强大,支持全面


相关帖子

沙发
dongshan| | 2016-5-15 14:01 | 只看该作者
说的很清楚,谢谢了。

使用特权

评论回复
板凳
范寿铭| | 2016-5-16 10:59 | 只看该作者
我自己搞的时候要是有这么份资料多好,已经搞出来半年多了

使用特权

评论回复
地板
turmary|  楼主 | 2016-5-16 11:36 | 只看该作者
范寿铭 发表于 2016-5-16 10:59
我自己搞的时候要是有这么份资料多好,已经搞出来半年多了
08年的时候我也这么想的,重在分享

使用特权

评论回复
5
shiyong1990| | 2016-5-19 17:40 | 只看该作者
范寿铭 发表于 2016-5-16 10:59
我自己搞的时候要是有这么份资料多好,已经搞出来半年多了

厉害。请教一下你是如何通过SWD协议把文件写到FLASH上的

使用特权

评论回复
6
范寿铭| | 2016-5-25 15:36 | 只看该作者
shiyong1990 发表于 2016-5-19 17:40
厉害。请教一下你是如何通过SWD协议把文件写到FLASH上的

我是通过用示波器抓U-LINK与芯片SWD接口通讯的波形,研究时序,配合ARM官网上的两篇相关资料理解DP-AP寄存器等等最后才弄出来的

使用特权

评论回复
7
shiyong1990| | 2016-5-25 16:07 | 只看该作者
范寿铭 发表于 2016-5-25 15:36
我是通过用示波器抓U-LINK与芯片SWD接口通讯的波形,研究时序,配合ARM官网上的两篇相关资料理解DP-AP寄 ...

刚刚调通直接擦写FLASH,原来可以通过CSW更改DRW访问大小,测试可以运行

使用特权

评论回复
8
LDTEST| | 2016-5-25 21:18 | 只看该作者
mark一下,好东西啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:tary was born in china

28

主题

295

帖子

0

粉丝