SWD两线仿真.doc

上传人:b****2 文档编号:1257606 上传时间:2022-10-19 格式:DOC 页数:6 大小:1.03MB
下载 相关 举报
SWD两线仿真.doc_第1页
第1页 / 共6页
SWD两线仿真.doc_第2页
第2页 / 共6页
SWD两线仿真.doc_第3页
第3页 / 共6页
SWD两线仿真.doc_第4页
第4页 / 共6页
SWD两线仿真.doc_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

SWD两线仿真.doc

《SWD两线仿真.doc》由会员分享,可在线阅读,更多相关《SWD两线仿真.doc(6页珍藏版)》请在冰豆网上搜索。

SWD两线仿真.doc

MDK3.50下用J-Link的SWD(两线)仿真的教程

其实在调试仿真的时候用J-LINK的Cortex-M3方式已经足够,并且在MDK下他的功能已经做得非常的好,用标准20脚的JTAG下载,速度是非常的快,一般初学者都是这样做的。

但是SWD方式似乎速度更快、更加方便、简捷、,对于项目中对板子空间要求严格、I/O口资源紧张的用户来说更加的有利,正常的JTAG需要20管脚,而J-Link的SWD只需要2根线(PA13/JTMS/SWDIO、PA14/JTCK/SWCLK)就够了(加上电源线也就4根),这样就节省了3个I/O口(PA15/JTDI、PB3/JTDO、PB4/JNTRST)为其它所用,并且可节省一部分板子的空间(只需4个口就可以了)。

下面我说一下SWD两线仿真的一些步骤、注意事项及需要注意的问题。

首先说一下接口的连接:

将JLINK的1、7、9、20分别与自己的开发板上JTAG的VCC、JTMS、JTCK、GND用杜邦线相连即可!

1)SWD仿真模式概念简述

先所说SWD和传统的调试方式有什么不一样:

首先给大家介绍下经验之谈:

(一):

SWD模式比JTAG在高速模式下面更加可靠.在大数据量的情况下面JTAG下载程序会失败,但是SWD发生的几率会小很多.基本使用JTAG仿真模式的情况下是可以直接使用SWD模式的,只要你的仿真器支持.所以推荐大家使用这个模式.

(二):

在大家GPIO刚好缺一个的时候,可以使用SWD仿真,这种模式支持更少的引脚.

(三):

在大家板子的体积有限的时候推荐使用SWD模式,他需要的引脚少,当然需要的PCB空间就小啦.

比如:

你可以选择一个很小的2.54间距的5芯端子做仿真接口.

(2)仿真器对SWD模式支持情况

再说说市面上的常用仿真器对SWD仿真的支持情况.

(1)JLINKV6支持SWD仿真模式.速度较慢.

(2)JLINKV7比较好的支持SWD仿真模式,速度有了明显的提高.速度是JLINKV6的6倍.

(3)JLINKV8非常好的支持SWD仿真模式,速度可以到10M.

(4)ULINK1不支持SWD模式

(5)盗版ULINK2非常好的支持SWD模式.速度可以达到10M.

(6)正版ULINK2非常好的支持SWD模式.速度可以达到10M.

再所说硬件上的不同:

(1)JLINKV6需要的硬件接口为:

GND,RST,SWDIO,SWDCLK

(2)JLINKV7需要的硬件接口为:

GND,RST,SWDIO,SWDCLK

(3)JLINKV8需要的硬件接口为:

VCC,GND,RST,SWDIO,SWDCLK

(4)ULINK1不支持SWD模式

(5)盗版ULINK2需要的硬件接口为:

GND,RST,SWDIO,SWDCLK

(6)正版ULINK2需要的硬件接口为:

GND,RST,SWDIO,SWDCLK

由此可以看到只有JLINKV8需要5个引脚.那么给大家介绍下为什么有了VCC这个引脚时候有好处,我的个人理解:

我认为有这个引脚是最合适的,仿真器对目标板子的仿真需要用到RST引脚,其实使用仿真器内部的VCC做这个功能其实并不是非常美妙.因此JLINKV8选择了只和目标板共GND,但是不共VCC.因此我觉得这种模式最合理,当然通常情况下仿真器和目标板共GND和VCC是没有错的。

以上的是网友的一些说法,我用JLINKV6时用三根线就可以了,就是PA13/JTMS/SWDIO、PA14/JTCK/SWCLK以及VCC,地线没接也是可以的,至于RST没接也没有发现什么问题!

3)在MDK中SWD模式设置

打开工程Option设置:

按照上图设置成SWD模式,速度按照你自己的需求来设置,如果你的板子供电系统不是特别稳定,纹波比较大或者仿真线比较长可以设置成500K或者1M,如果环境很好当然可以选择10M,当然速度会飞起来,但是我在实验的时候,最高也就是2M再高就会出错,大家可以试试2M以上的。

在配置的时候注意选择左下方的那个USB模式,因为有的时候默认是TCP模式,这个时候我们忽略这个设置后会仿真常常连接不上的。

下面说一下用J-FLASHARM程序的SWD模式为STM32编程

先是准备工作,

①准备好你要下载的目标程序*.HEX文件,如果你用MDK编译的话,打开设置,在Option/output下的CreateHEXfile前打钩,如下图:

设置完后编译找出hex文件所在目录,为下一步做铺垫。

②硬件连线和上面的接线一样,即将JLINK的1、7、9、20分别与自己的开发板上JTAG的VCC、JTMS、JTCK、GND用杜邦线相连即可!

③配置:

打开J-FLASHARM程序,打开菜单:

Options->Projectsetting...

在TargetInterface选项中,将设置为SWD模式。

④、选择文件,点击File/Open打开你要编程的目标文件(第①步你准备的HEX文件)。

⑤、连接到目标板:

点击Target/Connect连接到目标板。

然后后你就可以用Traget下的编程、擦写等功能了,与JTAG模式是一样的。

也是非常的方便的哦!

如下图:

至此这篇教程就讲到这了,如有不足的地方请指点!

谢谢!

王云飞

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1