jtag和swd区别,该用哪个?

举报
无际单片机编程 发表于 2022/05/11 23:19:39 2022/05/11
【摘要】 我刚开始学习单片机是STC最经典的STC89C52RC。 导致我后面很多51的产品应用都会选择STC,一方面是因为熟悉,一方面是使用确实很方便。 其中最让我满意的就是烧录,可以直接用串口就可以下载程序,一个USB转串口工具也就10几块。 很多别的国产单片机,都需要用专门的烧录器,一个几百上千的。 不同的单片机厂家各自为营,互不兼...

我刚开始学习单片机是STC最经典的STC89C52RC。

导致我后面很多51的产品应用都会选择STC,一方面是因为熟悉,一方面是使用确实很方便。

其中最让我满意的就是烧录,可以直接用串口就可以下载程序,一个USB转串口工具也就10几块。

很多别的国产单片机,都需要用专门的烧录器,一个几百上千的。

不同的单片机厂家各自为营,互不兼容,导致用他们的单片机就必须要买他们的烧录器。

这点其实很不好,把很多新手拒之门外了,不利于自身芯片推广,具体是否有别的苦衷就不知道了。

后面接触到了ARM内核的单片机,开发板很多都是使用类似JTAG烧录。

然后开发板上是一个20个引脚的座子。

后面,接触到STM32单片机,又从老工程师那里接触到SWD烧录。

JTAG和SWD其实都是一种标准的协议

标准是什么意思?就是符合某种内核的单片机,都可以使用这种协议来下载程序

比如JTAG和SWD,都支持下载ARM内核单片机的程序。

 

一、JTAG和SWD还有什么区别?

1.20PIN座子的引脚对比

JTAG:Joint Test Action Group,即联合测试行动小组。

JTAG引脚说明:

TDI(Test Data In):串行输入引脚

TDO(Test Data Out):串行输出引脚

TCK(Test Clock):时钟引脚

TMS(Test Mode Select):模式选择(控制信号)引脚

TRST (Test Reset):复位引脚

SWD:Serial Wire Debug,代表串行线调试

SWD是ARM设计的协议,主要针对他们内核的芯片进行程序调试和下载

SWD引脚说明:

SWDIO(Serial Wire Data Input Output):串行数据输入输出引脚

SWCLK(Serial Wire Clock):串行线时钟引脚

2.JTAG和SWD协议各自优缺点

JTAG优点:

a). 不限于ARM内核单片机,能支持更多单片机程序调试和下载。

b). 用途更广,用于编程,调试和生产测试.

JTAG缺点:占用引脚数比较多,比较占用板子尺寸。

SWD优点:

a).引脚数更少,有利于节约电路板尺寸。

b). SWD具有特殊功能,例如通过其I / O线打印调试信息。

c). 在高速大数据情况下,SWD整体性能比JTAG更好。

SWD缺点:只能用于ARM内核的单片机。

二、总结

一般我们在开发基于STM32的产品时,基本上使用SWD,也就是我们的ST-Link。

因为比较节约引脚,方便控制产品电路板尺寸,调试下载也很稳定。

至于20Pin那种大座子,估计只有在开发板上才会出现,主要是方便调试,不用单独引线之类的。

 

最后彩蛋时间!!!

最近很多小伙伴找我要一些单片机学习资料,然后我根据自己从业十年经验,熬夜肝了几个通宵,精心整理一份「单片机入门到高级教程+工具包」,全部无偿共享给大家!!!

 

除此以外,再含泪分享我压箱底的22个热门开源项目,包含源码+原理图+PCB+说明文档,让你迅速进阶成高手!

据说有小伙伴靠这份资料顺利进入BAT大厂,所以保存了一定要好好学习。

教程资料包和详细的学习路径可以看我下面这篇文章的开头。

单片机入门到高级开挂学习路径(附教程+工具)icon-default.png?t=M4ADhttps://blog.csdn.net/weixin_43982452/article/details/114134096

文章来源: blog.csdn.net,作者:无际单片机编程,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_43982452/article/details/124709142

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。