首先在 Segger 官网下载最新的 JFLASH驱动。然后更新 S32DS3.5的Segger驱动包,如下图所示。
其次,如果JLINK 工具固件版本比较低,需要进行固件更新。
由于 JLINK工具 V11的固件版本是2019年的版本,需要更新到最新的2023年版本。
更新 JLINK工具固件完成后,编译项目,下载发现出现如下提示:
Segger - Error while launching command: arm-none-eabi-gdb --version
默认目录:${jlink_path}/${jlink_gdbserver} 修改为Segger 安装目录如下:
C:Program FilesSEGGERJLinkJLinkGDBServerCL.exe
默认目录:${cross_prefix}gdb${cross_suffix},修改选择如下目录地址 C: xpS32DS.3.5S32DS oolsgdb-armarm32-eabiinarm-none-eabi-gdb.exe, 或者
C:NXPS32DS.3.5S32DSuild_toolsgcc_v9.2gcc-9.2-arm32-eabiinarm-none-eabi-gdb.exe,有的电脑 PC这个地方不修改也能编译调试正常。
添加到 Executable位置,如下图所示。
如果正在使用RAM目标应用程序(而不是FLASH目标),则在掉电或者复位后,二进制固件将从RAM中消失。启用此选项后,复位后将再次将二进制固件加载到RAM中。
调试的时候,出现如下提示:
WARNING: Failed to read memory @ address 0x20020000
Break at address "0x20020000" with no debug information available, or outside of program code
可能的原因是:在将startup_cm7.s更改为startup_cm 7.s(大写“s”)后,问题消失了。原因可能是gcc以不同的方式处理.s和.S。将startup_xx.s文件后缀更改为大写。尽管可以直接调用汇编程序,但汇编文件通常通过gcc传递。组件的情况: 文件的后缀(.s与.s)很重要。如果使用大写的程序集文件后缀(.S)调用gcc,则首先将其传递给预处理器,而小写文件后缀(.s)直接传递给汇编器。请注意,GCC处理后缀为“.s”和“-s”的文件。不同的是:预处理器在带有“.S”(大写)后缀的文件上运行,而不是带有“.s”后缀的。文件.s: 汇编程序代码。GCC运行预处理器这些文件以及以“.S”结尾的文件。文件.S: 必须预处理的汇编程序代码。
对于 S32K312 使用S32DS3.5 IDE 调试,需要更新Jlink驱动至少是 V7.6.2及以上版本。
参考文档:
Troubleshooting Tips: Failed Debugging with GDB | MCU on Eclipse
审核编辑 :李倩
-
驱动
+关注
关注
12文章
1826浏览量
85183 -
应用程序
+关注
关注
37文章
3244浏览量
57608 -
编译
+关注
关注
0文章
654浏览量
32810
原文标题:Segger - Error while launching command: arm-none-eabi-gdb --version
文章出处:【微信号:嵌入式 MCU,微信公众号:嵌入式 MCU】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论