查看: 1348|回复: 2

[经验分享] 如何避免JTAG引脚复用后调试失败

[复制链接]
  • TA的每日心情
    开心
    前天 15:27
  • 签到天数: 1336 天

    [LV.10]以坛为家III

    88

    主题

    4293

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    9054
    最后登录
    2024-5-2
    发表于 2021-11-16 11:08:25 | 显示全部楼层 |阅读模式
    如何避免JTAG引脚复用后调试失败
        JTAG(Joint Test Action Group;联合测试行动小组)是一种国际标准测试协议。JTAG主要用于芯片内部测试,在线烧录,在线调试等功能。通过内核的TAP接口可以实时访问到内核寄存器、RAM内容、FLASH内容等。在嵌入式开发过程中,极大方便工程师们的软件开发、硬件调试等工作。

    lpclink2.png
        因为其功能非常强大,所以在芯片的设计中将JTAG引脚的功能设置为默认功能,即上电启动后的默认功能。但在一些应用里面,由于器件资源的有限性,导致我们不得不复用JTAG引脚来满足我们项目的设计需求——虽然,这并不是一个非常好方案。JTAG标准也提供了仅使用两个引脚就可以实现的方案SWD模式,但有时候仍然需要复用引脚。这时,在线调试、在线烧录就无法同时进行了。所以,这也导致由于JTAG引脚被复用,我们的芯片也无法使用JTAG方式再次进行调试或烧录。如果这时,我们没有采取适当的预防措施,这枚芯片就遗憾地成为“砖”了。
        分析之后,我们发现失败原因都是在程序启动运行后将JTAG引脚设置为其它功能。接下来,我在这里介绍几种避免JTAG引脚复用后,无法再次调试的预防措施,供大家参考。
        方法一:ISP模式
        在LPC系列下多数型号的MCU均提供了ISP模式烧写固件的方式。ISP模式工作在用户程序启动之前,如果我们通过ISP模式,重新下载一份未配置JTAG引脚的固件,那么再次启动时,JTAG引脚也就恢复正常了。
        方法二:bootload方式
        bootload方式其实和ISP模式的原理一样,都是工作在用户程序启动之前。而此时更新了用户程序,再次启动后,JTAG引脚恢复。不过,这里的bootloader又提高了用户程序开发的技术门槛。
        方法三:按键方式
        此方式即在用户程序启动后,检测某个引脚的状态,当为jtag状态后,程序进入等待状态,不再继续执行复用JTAG引脚的程序,等待JTAG的连接。由于此时JTAG引脚未被设置,所以IDE软件可以通过JTAG在线调试、在线烧录等操作。
        扩展一下,并不是需要在系统里面专门设置一个按键来实现此操作。可以是某个引脚的复用,通过跳线来实现等。
        方法四:延迟方式
        此方式即在用户程序启动后,先空闲几秒钟的时间,等待JTAG的连接,之后再进入正常的程序运行。
        以上4种方式针对不同的应用场景而设计,总之,在JTAG引脚被复用之前给自己留一些“后门”,毕竟JTAG调试还是非常好用的。



    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 1481 天

    [LV.10]以坛为家III

    203

    主题

    2万

    帖子

    64

    超级版主

    Rank: 8Rank: 8

    积分
    92877
    最后登录
    2024-4-30
    发表于 2021-11-16 11:42:28 | 显示全部楼层
    感谢分享~~~ TS1 - 副本 (4).jpg TS1 - 副本 (2).jpg TS1 - 副本 (3).jpg TS1 - 副本 (6).jpg TS1 - 副本 (5).jpg TS1 - 副本 (7).jpg TS1 - 副本 (8).jpg TS1 - 副本 (9).jpg TS1 - 副本 (10).jpg TS1.jpg
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3303

    主题

    6550

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32055
    最后登录
    2024-4-30
    发表于 2021-11-16 16:13:27 | 显示全部楼层
    签到签到
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-5-3 12:05 , Processed in 0.125540 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表