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

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

3天内不再提示

不同J-Link版本对于i.MXRT1170连接复位后处理行为

痞子衡嵌入式 来源:痞子衡嵌入式 2024-08-08 15:29 次阅读

大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是不同J-Link版本对于i.MXRT1170连接复位后处理行为

痞子衡之前写过一篇旧文 《i.MXRT1170上用J-Link连接复位后PC总是停在0x223104的原因》,这篇文章详细解释了 RT1170 BootROM 代码里软件实现的 Debug Mailbox 机制对 J-Link 调试体验的影响,文末还给了结论 J-Link 里只要执行 reset 后 PC 就必定会停在 0x223014,这句话其实不完全准确,因为底层 J-Link 脚本内容可以改变这个行为,这在不同 J-Link 版本的 DLL 处理里就有体现。今天痞子衡要聊得就是这个话题

一、不同J-Link版本关于RT1170更新

为了了解不同 J-Link 版本对于 RT1170 处理差异,痞子衡从 J-Link 历史版本记录 https://www.segger.com/downloads/jlink/ReleaseNotes_JLink.html 里抽取了从 V6.64 - V7.96i 所有关于 RT1170 更新如下,其中 V6.86、V6.94、V6.98c、V7.86 四个版本涉及 Debug 连接处理,但是没有说明进一步实现细节。

wKgZoma0c_SAXCb9AATkDG50Jgo556.jpg

二、J-Link V6.86f对于RT1170连接复位处理

从 J-Link 版本来看,V6.86 开始正式支持 RT1170 B0 Silicon(恩智浦最终发布的芯片版本),我们就从 V6.86 版本开始做测试。在测试之前,痞子衡在板载串行 NOR Flash 里烧录了一个链接在 0x30002000 的 XIP App 程序。然后使用 J-Link commander 操作如下:

wKgZoma0dBaAYraoAAP-FZaTIug197.png

上述测试结果表明:当芯片上电/复位能正常启动链接在 0x30002000 的 App 时,J-Link 下用默认 MIMXRT1176XXXA_M7 设备去连芯片复位后,PC 能停在 App 里,因为自带 DLL 里集成了 jlinkscript 处理,这在 dll 里搜索 "Valid application detected. Setting PC / SP manually." 信息可知。但是如果我们自己添加的 jlinkscript 不包含这样的处理(比如用超级下载算法 UFL),那么 PC 还是停在 0x223104。

wKgaoma0dCKAU6-iAADuRl5IYMY405.png

如果我们在板载串行 NOR Flash 里烧录了一个不是链接在 0x30002000 的 App,痞子衡烧录得是链接在 0x3000a000 处的 XIP App(总之保证 Flash 偏移 0x2000 处没有有效 App 中断向量表),再来做同样的测试(在芯片能正常启动 App 情况下),此时 PC 永远停在 0x223104,这说明 J-Link DLL 默认集成的 jlinkscript 永远是从 Flash 0x2000 偏移处取 App 信息去设置 PC、SP。

我们紧接着上面的测试,使用 mem32 命令读取 0x3000a000 处内容,发现是有效 App 数据,这说明 FlexSPI 外设被正常初始化了,此时手动设置 PC、SP 后可以跳转到 App 里,这意味着如果我们自定义 jlinkscript 里能够解析 IVT 去获取 App 信息,那么可以做到通用。

wKgZoma0dDCATc0kAAGfNOGDdrA809.png

三、不同J-Link版本对于RT1170连接复位处理

由于 V6.86 版本对于连接复位处理已经一定程度上满足实际需求,因此对比后续更高 J-Link 版本意义不太重要了,不过这里有一个差异不得不提。正常来说,在芯片上电/复位能正常启动链接在 0x30002000 的 App 情况下,reset 命令执行完后,PC 应该 halt 在 BootROM 里,需要继续使用 go 命令才能跳转进入 App,这在 V6.86 上确实如此。然后在 V7.94f 版本上测试来看,reset 之后,PC 已经 halt 在 App 里了。

wKgZoma0dEKAUwGeAAHd31Z7fVg267.png

至此,不同J-Link版本对于i.MXRT1170连接复位后处理行为痞子衡便介绍完毕了,掌声在哪里~~~

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

    关注

    450

    文章

    49544

    浏览量

    416652
  • PC
    PC
    +关注

    关注

    9

    文章

    2028

    浏览量

    153502
  • 调试
    +关注

    关注

    7

    文章

    551

    浏览量

    33746
  • J-Link
    +关注

    关注

    0

    文章

    83

    浏览量

    22040

原文标题:不同J-Link版本对于i.MXRT1170连接复位后处理行为

文章出处:【微信号:pzh_mcu,微信公众号:痞子衡嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    i.MXRT1170 的时钟架构

    目前 i.MXRT1xxx 系列主要分为 i.MX RT10xx 和 i.MXRT11xx 两大分支。这两个分支的时钟系统设计是有一些差异的,不过总体来说,架构差别不大,我们以如下 i.MXR
    发表于 07-08 17:05 954次阅读

    介绍一下i.MXRT1170上用于保护片内OCRAM1,2的MECC64功能

    今天痞子衡给大家分享的是i.MXRT1170 MECC64功能特点及其保护片内OCRAM1,2之道。
    的头像 发表于 12-29 16:11 870次阅读
    介绍一下<b class='flag-5'>i.MXRT1170</b>上用于保护片内OCRAM1,2的MECC64功能

    i.MXRT1170的相关资料分享

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MX RT1xxx系列MCU的划时代新品i.MXRT1170。  自2017年开始,每年的6月25日恩智浦都会在北京举行
    发表于 11-04 08:38

    MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项。  痞子衡前段时间写过一篇小文《为i.MXRT
    发表于 11-04 09:02

    i.MXRT设计更新Segger J-Link Flash下载算法文件

    给大家分享的是为i.MXRT设计更新Segger J-Link Flash下载算法文件。  想要在Flash中调试,基本是离不开Flash下载算法的,毕竟要先将代码烧写进Flash,然后才能调试
    发表于 12-15 06:11

    i.MXRT1170 eFuse空间访问可靠性的保护策略是什么

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MXRT1170的eFuse空间访问可靠性保护策略。  关于i.MXRT系列的eFuse/OTP,痞子衡之前在介绍
    发表于 12-20 07:56

    s32k144evb如何与i.MXRT通信?

    的计划是使用 S32k144EVB 作为 VCU。将从 BMS 和电机控制器接收 CAN 详细信息到 VCU,然后处理并发送到 i.MXRT1170,并将其推送到提到的 LCD 显示器中。我只想确认这是否可能。
    发表于 03-29 07:49

    J-Link工具下i.MXRT的串行NOR Flash下载算法设计

    Release Note 上看,痞子衡目前的 J-Link 版本不支持全部 i.MXRT 型号,那么如果想要支持新芯片(比如 i.MXRT1170),是不是一定要重新安装最新
    的头像 发表于 12-08 10:07 930次阅读

    J-LinkJ-Trace用户指南免费下载

    J-Link/J-Trace有不同的版本,每个版本都是为不同的目的/目标设备设计的。目前,J-Link/
    发表于 03-03 08:00 14次下载
    <b class='flag-5'>J-Link</b>和<b class='flag-5'>J</b>-Trace用户指南免费下载

    教你轻松J-Link不能连接目标MCU的问题

    J-Link是嵌入式软件、硬件工程师最常用的工具之一,但是,在使用这个工具时,也会遇到各种各样的问题。 今天来给大家讲讲最常见的一个问题:J-Link不能连接目标MCU。 J-Link
    的头像 发表于 06-30 11:18 5554次阅读
    教你轻松<b class='flag-5'>J-Link</b>不能<b class='flag-5'>连接</b>目标MCU的问题

    如何处理J-Link不能连接目标MCU的问题?

    J-Link是嵌入式软件、硬件工程师最常用的工具之一,但是,在使用这个工具时,也会遇到各种各样的问题。今天来给大家讲讲最常见的一个问题:J-Link不能连接目标MCU。J-Link
    发表于 10-29 10:21 8次下载
    如何<b class='flag-5'>处理</b><b class='flag-5'>J-Link</b>不能<b class='flag-5'>连接</b>目标MCU的问题?

    痞子衡嵌入式:MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项(i.MXRT500为例)...

      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项。  痞子衡前段时间写过一篇小文《为i.MXRT
    发表于 10-29 10:36 0次下载
    痞子衡嵌入式:MCUXpresso IDE下使用<b class='flag-5'>J-Link</b>下载算法在Flash调试注意事项(<b class='flag-5'>i.MXRT</b>500为例)...

    基于J-Link Remote Server软件的远程调试方法

    SEGGER提供了一个J-Link Remote Server软件,可以使得在任何地方连接J-Link调试应用。J-Link Remote Server提供了图形界面和命令行的
    的头像 发表于 06-14 08:56 1883次阅读

    J-Link中的JTAG接口的正确使用注意事项

    所有标记为NC的针脚均未连接J-Link内部。这里可以应用任何信号;J-Link将忽略这种信号。引脚4、6、8、10、12、14、16、18、20是连接
    的头像 发表于 09-23 09:57 2819次阅读
    <b class='flag-5'>J-Link</b>中的JTAG接口的正确使用注意事项

    J-Link连接MCU失败解决办法

    J-Link连接MCU失败解决办法
    的头像 发表于 10-18 17:43 898次阅读
    <b class='flag-5'>J-Link</b><b class='flag-5'>连接</b>MCU失败解决办法