0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深度解析STM32单片机JTAG的复用方法

2oON_changxuemc 来源:cg 2018-12-26 10:27 次阅读

先来copy下 JTAG、SW接口的定义

JTAG:JTAG(JointTest Action Group;联合测试工作组)是一种国际标准测试协议,主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSPFPGA器件等。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。

SWD:SW(Serial Wire Mode Interface),串行接口线模式。在串行线模式,只有针TCLK和TMS使用。TDO数据输出引脚是一个可选。

SWD下载调试 原理图:

从图中看到:板子使用SWD接口下载调试,即使用SWDIO、SWCLK(PA13、PA14);PB3–JTDO 默认功能为JTAG的,而这里用作其他的功能–普通I/O。

问题来了:

1、需要关掉PB3的JTAG功能,复用为其他功能。

2、SWD 和传统的调试方式区别。

STM32JTAG复用相关方法 :

直接上代码,如下:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,ENABLE);//改变指定管脚的映射GPIO_Remap_SWJ_JTAGDisableJTAG-DP失能+SW-DP使能GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);。..。...12345

但,当设置了以上语句后,当运行了这两个语句后,JTAG仿真就与目标失去去联系。

解决办法有:

1、设置启动模式为ISP模式(BOOT0=1、BOOT1=0)或设置启动模式为RAM运行模式(BOOT0=1、BOOT1=1)。 将开发板断电后重新上电,此时就因不是在用户程序模式,因此就不会执行禁用JTAG的语句,JTAG功能也就可以正常使用。

2、设置启动模式为ISP模式(BOOT0=1、BOOT1=0),用ISP程序将STM32的FLASH擦除,之后就可恢复JTAG功能。

3、如果你的仿真器支持SWD仿真模式,如IAR下用JLINK、MDK下用ULINK2。 直接将仿真器的模式设为SWD模,就可以不受这个禁止JTAG功能的影响了。

我的环境切合第三个解决方案,IAR设置如下:

SWD 和传统的调试方式区别 :

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

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

在大家板子的体积有限的时候推荐使用 SWD 模式, 它需要的引脚少, 当然需要的 PCB 空间就小啦! 比如你可以选择一个很小的 2.54 间距的 5 芯端子做仿真接口。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44525

    浏览量

    633345
  • JTAG
    +关注

    关注

    6

    文章

    398

    浏览量

    71612

原文标题:STM32单片机JTAG的复用方法解析

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关于STM32单片机复用问题,请大神赐教

    关于STM32单片机复用功能我有点疑问:什么时候用复用输出????什么时候开启复用时钟????谢谢!!!!
    发表于 08-13 10:22

    LM3S系列单片机JTAG口解锁应用笔记

    LM3S系列单片机JTAG口解锁应用笔记 介绍LM3S系列单片机JTAG口被设置为GPIO后,恢复JTAG功能的
    发表于 04-07 16:20 52次下载

    STM32单片机JTAG复用方法解析

    JTAGJTAG(Joint Test Action Group;联合测试工作组)是一种国际标准测试协议,主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。标准的
    发表于 12-24 14:09 6524次阅读

    51单片机STM32单片机有哪些区别

    大部分朋友可能都知道51单片机stm32单片机也知道一般入门会先学习51单片机在学习stm32单片机
    发表于 08-13 17:32 17次下载
    51<b class='flag-5'>单片机</b>和<b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>有哪些区别

    如何进行单片机的下载详细方法讲解

    及到的单片机有STC51、LPC11C14、 STM32F103C8T6等。这三种单片机都可以用ISP方式下载,LPC11C14可以用SW方式下载,STM32F103C8T6可以用
    发表于 08-07 17:33 1次下载
    如何进行<b class='flag-5'>单片机</b>的下载详细<b class='flag-5'>方法</b>讲解

    深度解析STM32单片机JTAG复用方法资料下载

    电子发烧友网为你提供深度解析STM32单片机JTAG复用
    发表于 04-17 08:49 5次下载
    <b class='flag-5'>深度</b><b class='flag-5'>解析</b><b class='flag-5'>STM32</b><b class='flag-5'>单片机</b><b class='flag-5'>JTAG</b>的<b class='flag-5'>复用</b><b class='flag-5'>方法</b>资料下载

    STM32单片机JTAG复用方法解析资料下载

    电子发烧友网为你提供STM32单片机JTAG复用方法解析资料下载的电子资料下载,更有其他相关的
    发表于 04-18 08:45 13次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b><b class='flag-5'>JTAG</b>的<b class='flag-5'>复用</b><b class='flag-5'>方法</b><b class='flag-5'>解析</b>资料下载

    stm32单片机的基本工作原理

    我们使用的大部分电器都使用了单片机,那么stm32单片机的基本工作原理是什么呢?下面小编就带大家了解一下stm32单片机的基本工作原理。
    的头像 发表于 08-19 11:06 2.8w次阅读

    单片机入门--常见单片机PIC\STM32

    单片机入门--常见单片机PIC\STM32
    发表于 11-13 14:36 43次下载
    <b class='flag-5'>单片机</b>入门--常见<b class='flag-5'>单片机</b>PIC\<b class='flag-5'>STM32</b>

    STM32单片机使用SEGGER J-Flash 烧录的方法

    STM32单片机使用SEGGER J-Flash 烧录的方法
    发表于 12-02 10:21 20次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>使用SEGGER J-Flash 烧录的<b class='flag-5'>方法</b>

    STM32F103单片机JTAG端口重映射

    STM32单片机复位后,JTAG口默认是被占用的。如果想将JTAG占用的几个IO口设置为普通IO口,就需要进行端口重映射。复位后端口默认功能可以在S
    发表于 12-04 15:36 10次下载
    <b class='flag-5'>STM32</b>F103<b class='flag-5'>单片机</b><b class='flag-5'>JTAG</b>端口重映射

    STM32单片机端口复用和端口重映射

    STM32单片机端口复用和端口重映射STM32单片机上有很多I/O口,也有很多的内置外设,比如I2C、ADC、DAC、USART等都属于内置
    发表于 12-28 19:23 8次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>端口<b class='flag-5'>复用</b>和端口重映射

    STM32单片机GPIO口简介

    本篇主要介绍STM32单片机的GPIO口基本概念和GPIO 寄存器的使用参考资料【51/STM32】详解单片机GPIO口输入输出的各种模式一、STM
    发表于 12-28 19:23 23次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>GPIO口简介

    STM32单片机的GPIO输入、输出模式与配置方法

    STM32 单片机是一款高性能、低功耗的 32 位微控制器,具有强大的计算能力、灵活的外设模块和实现微控制器应用所需的社区支持。在单片机应用中,GPIO 输入输出模式是必不可少的硬件接口之一。本文将介绍
    发表于 08-15 18:23 8109次阅读

    单片机解析g代码的方法

    的运动。 解析G代码是将其转化为单片机能够理解和执行的指令集。单片机解析G代码的方法主要包括以下几个方面:G代码的格式
    的头像 发表于 12-22 14:15 1678次阅读