JLink中文网站 > 新手入门 > J-Link怎么设置下载后自动运行 J-Link程序下载完成后没有启动如何调整
教程中心分类
J-Link怎么设置下载后自动运行 J-Link程序下载完成后没有启动如何调整
发布时间:2026/09/29 15:41:54

  固件显示“下载成功”,只说明文件已写入并完成相应校验,不代表目标CPU已开始执行。调试工具可能让核心停在复位入口,也可能在入口断点处暂停。设置自动运行前,先在当前板卡上验证“下载、复位、继续执行”这一顺序,再将它写入固定流程。

  一、J-Link怎么设置下载后自动运行

 

  1、在Commander中手动验证

 

  J-Link Commander可用LoadFile下载、r复位、g继续执行。下载BIN文件时需要指定目标地址;ELF、HEX文件通常使用文件中记录的地址。

 

  ①打开【J-Link Commander】,选择目标芯片、接口和速度,输入connect,按【Enter】。

 

  ②下载BIN时输入LoadFile<固件路径>;下载ELF或HEX时输入LoadFile<固件路径>,按【Enter】。

 

  ③确认下载输出没有错误后,依次输入r、g,每条命令后按【Enter】。

 

  ④输入IsHalted,按【Enter】,查看核心是否正在运行。

 

  2、用命令文件实现自动运行

 

  手动操作有效后,可以把相同命令写入J-Link Command File。下次执行该文件,就能按既定顺序完成下载和启动。

 

  ①在【文本编辑器】中新建文件,逐行写入Device<芯片型号>、SelectInterface SWD、Speed 1000、connect;使用JTAG时修改接口命令。

 

  ②继续逐行写入LoadFile<固件路径><地址>、r、g、exit;使用ELF或HEX时省略下载地址。

 

  ③将文件保存为.jlink文件,在【终端】输入JLink.exe-CommandFile<文件路径>,按【Enter】查看执行结果。

 

  3、在J-Flash中启用启动选项

 

  若使用具备相应授权的J-Flash生产编程流程,可启用下载后的启动动作。该选项默认关闭。采用Flasher设备执行生产编程时,还需按目标配置连接复位引脚。

 

  ①打开项目,依次点击【Options】→【Project settings...】→【Production】。

 

  ②确认【Program】和【Verify】已选中,再勾选【Start application】。

 

  ③核对目标芯片、Flash bank和复位接线,保存项目。

 

  ④依次点击【Target】→【Production Programming】,查看完成后的状态。

 

  二、J-Link程序下载完成后没有启动如何调整

 

  1、确认CPU是否仍被暂停

 

  下载完成后若没有预期输出,先读核心状态。若它仍处于暂停状态,补上继续执行动作,并检查命令文件的顺序。

 

  ①在【J-Link Commander】输入IsHalted,按【Enter】。

 

  ②若显示暂停,输入g,按【Enter】,再次读取状态。

 

  ③打开.jlink文件,确认g位于LoadFile和r之后。

  2、核对下载地址与固件文件

 

  BIN文件不包含装载地址。地址写错时,下载过程可能完成,但复位后芯片不会从该位置启动。对ELF、HEX文件,则应核对构建产物是否来自当前工程。

 

  ①查看下载输出中的写入地址,对照芯片内存表和工程链接文件。

 

  ②下载BIN时,重新输入LoadFile<固件路径><正确起始地址>。

 

  ③下载ELF或HEX时,核对文件路径与构建时间,再执行下载。

 

  ④若目标是Cortex-M,输入Mem32<向量表起始地址>2,检查初始栈指针和复位入口。

 

  3、检查复位方式与启动模式

 

  如果输入g后能运行,一执行r却无法启动,应检查芯片的启动配置与复位流程。部分设备需要先经过ROM引导程序,再进入用户固件。

 

  ①在【J-Link Commander】输入Device<芯片完整型号>,核对所选器件。

 

  ②输入RSetType,按【Enter】,查看可用的复位类型。

 

  ③按芯片手册核对启动引脚或启动配置,再执行r、g复查。

 

  4、排除断点影响

 

  程序刚开始执行又停住时,可能命中了入口断点。先看调试器显示的停机位置,再决定是否调整断点。

 

  ①在调试器的【Breakpoints】窗口查看已启用断点。

 

  ②暂时停用不需要的入口断点,点击【Continue】,观察程序是否继续执行。

 

  5、检查程序是否在启动阶段出错

 

  核心显示正在运行,却看不到LED、串口等预期现象,不一定是启动命令未生效。程序也可能进入异常处理、等待外设,或很快转入低功耗。

 

  ①在【J-Link Commander】输入halt,按【Enter】,再输入Regs查看PC、SP。

 

  ②对照链接文件,检查PC当前位于启动代码、异常处理还是主程序区域。

 

  ③在程序入口设置断点,执行r、g,检查能否到达入口。

 

  三、怎样确认自动运行已生效

 

  1、验证脱离调试器后的启动结果

 

  连接J-Link时能运行,还要检查目标板独立上电后能否启动。两种状态的结果一致,才能确认程序没有依赖调试会话中的额外动作。

 

  ①运行.jlink文件,检查下载、校验和g的执行输出。

 

  ②退出【J-Link Commander】,断开调试连接,给目标板重新上电。

 

  ③观察程序约定的指示灯、串口输出或其他运行现象。

 

  2、保存可复用的下载流程

 

  如果目标板需要特定的复位顺序,应将其与固件版本一同记录,避免下次换设备或电脑时漏掉启动命令。

 

  ①保存.jlink文件,记录芯片型号、Flash地址和接口设置。

 

  ②记录复位后是否需要执行g,以及独立上电的测试结果。

  总结

 

  下载后自动运行是否设置完成,最终要看固件在脱离调试器后能否自行启动。保留两项结果很有用:工具显示的下载与运行状态,以及目标板重新上电后的实际表现。这样既能检查命令顺序,也能发现程序是否依赖调试时的额外初始化。希望本文能帮助大家排查J-Link下载完成后程序未启动的问题;如有J-Link相关需求,欢迎联系我们咨询。

读者也访问过这里:
176 5129 0128