前言
我们在调试IMXRT1176代码过程中,偶尔会出现因误操作,程序一执行后就出现卡死的现象。在这种情况下,IMXRT1176重新上电后,导致仿真器无法连接IMXRT1176。本文档描述的是解决此问题的操作方法。
一、原因分析
IMXRT1176上电在XIP执行方式下,一般是NORFLASH执行,先检测NORFLASH,初始化NORFLASH,然后跳转到用户代码,如果用户代码异常,则直接出现卡死,整个过程时间很短。用户拿仿真器还来不及连接到IMXRT1176的情况下,IMXRT176就已经卡死了,从而造成仿真器始终连接不到IMXRT1176上。
二、解决思路
在IMXRT1176上电启动后,让IMXRT1176无法检测到NORFALSH,无法跳转到用户代码执行,这样IMXRT1176就不会出现卡死,仿真器就可以连接上IMXRT1176了。
三、操作步骤
我这里IMXRT1176电路板上的NORFLASH芯片型号是IS25WP128,其引脚图如下所示。
图1 IS25WP128芯片引脚
- 先将IMXRT1176电路板处于断点状态,然后将仿真器一端连接到IMXRT1176电路板上,另一端连接到电脑上。
- 用镊子将IS25WP128芯片的引脚1CE#和引脚8VCC短接,CE#引脚处于高电平状态,处于非选中状态。然后对电路板上电。
- 等待一段时间后,镊子就可以拿开。
- 打开JLINK仿真软件的J-FLASH,点击Target下的connect按钮,就可以连接到电路板上了。
图2 J-FLASH连接界面
5.然后点击Target/Manul Programing/Erase Chip,将NORFALSH的整个芯片数据擦除。
图3 J-FLASH擦除界面
通过以上步骤,IMXRT1176电路板重新上电后,仿真器就可以正常连接到IMXRT1176上了。