各位大神:
一直在使用EIDE,昨天还能使用jlink V6.9正常仿真,今天重启电脑后,无法进入仿真,但烧录是正常的。
把配置重新设置了一次,没有找到问题的所在,特来请教各位大神。

1、当前EIDE版本为3.8.8,不确定是什么时候升级的;
2、今天之前,一直是可以仿真的,记忆中没有修改相关的配置;
2、平时vscode没有关闭,项目也没有关闭,今天因其它原因,重启了电脑;
3、eide中的烧录命令可以正确执行,也就是说,硬件和连接应该没有出问题;
相关的提示信息如下:
终端栏:
`[2022-08-24T04:59:51.002Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session connected. You can switch to "DEBUG CONSOLE" to see GDB interactions.
"C:/myprogram/jlink_V690/JLinkGDBServerCL.exe" -singlerun -nogui -if swd -port 50000 -swoport 50001 -telnetport 50002 -device AT32F403ACGT7
SEGGER J-Link GDB Server V6.90 Command Line Version

JLinkARM.dll V6.90 (DLL compiled Dec 11 2020 17:08:01)

Command line: -singlerun -nogui -if swd -port 50000 -swoport 50001 -telnetport 50002 -device AT32F403ACGT7
-----GDB Server start settings-----
GDBInit file: none
GDB Server Listening port: 50000
SWO raw output listening port: 50001
Terminal I/O port: 50002
Accept remote connection: localhost only
Generate logfile: off
Verify download: off
Init regs on start: off
Silent mode: off
Single run mode: on
Target connection timeout: 0 ms
------J-Link related settings------
J-Link Host interface: USB
J-Link script: none
J-Link settings file: none
------Target related settings------
Target device: AT32F403ACGT7
Target interface: SWD
Target interface speed: 4000kHz
Target endian: little

Connecting to J-Link...
J-Link is connected.
[2022-08-24T04:59:51.276Z] SERVER CONSOLE DEBUG: GDBServerConsole: onBackendConnect: gdb-server program client error Error: read ECONNRESET
[2022-08-24T04:59:51.280Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session closed
GDB server session ended. This terminal will be reused, waiting for next session to start...`

输出栏:
误: 任务“shell: build”既不指定命令,也不指定 dependsOn 属性。将忽略该任务。其定义是:
{
"type": "shell",
"id": "shell,\"unify_builder -p d:\\mydoc\\code\\embeddied\\at32f403a\\rtos\\bsp\\at32\\at32f403a-start\\build\\Debug\\builder.params\",",
"problemMatcher": [
"$gcc"
],
"label": "shell: build"
}
错误: 任务“shell: JLink”既不指定命令,也不指定 dependsOn 属性。将忽略该任务。其定义是:
{
"type": "shell",
"id": "shell,\"C:\\myprogram\\jlink_V690\\JLink.exe -ExitOnError 1 -AutoConnect 1 -Device AT32F403ACGT7 -If SWD -Speed 8000 -CommandFile d:\\mydoc\\code\\embeddied\\at32f403a\\rtos\\bsp\\at32\\at32f403a-start\\build\\Debug\\commands.jlink\",",
"problemMatcher": [
"$gcc"
],
"label": "shell: JLink"
}

  • admin replied to this.
  • wjsxgd

    原因

    WARNING: Cortex-Debug will deprecate use of GDB version 8 after July 2022. Please upgrade to version 9+

    Cortex-Debug 插件已经废弃了 GDB 8 及以下版本的调试器,eide 默认安装的 arm-none-eabi-gcc 是 9.3,其中的 gdb 版本是 8.3,因此在最新的 v1.6.0 中已经无法使用

    解决方法

    有两种:

    • 回退 Cortex-Debug 至 v1.5.1 及以下版本,禁止插件更新

    • 自行安装 arm-none-eabi-gcc 10+ 及以上版本的 gcc,并在 eide 中设置工具链路径,然后重启所有 vscode 实例

    wjsxgd

    原因

    WARNING: Cortex-Debug will deprecate use of GDB version 8 after July 2022. Please upgrade to version 9+

    Cortex-Debug 插件已经废弃了 GDB 8 及以下版本的调试器,eide 默认安装的 arm-none-eabi-gcc 是 9.3,其中的 gdb 版本是 8.3,因此在最新的 v1.6.0 中已经无法使用

    解决方法

    有两种:

    • 回退 Cortex-Debug 至 v1.5.1 及以下版本,禁止插件更新

    • 自行安装 arm-none-eabi-gcc 10+ 及以上版本的 gcc,并在 eide 中设置工具链路径,然后重启所有 vscode 实例

      admin
      两种方法都试过,都可以解决。非常感谢!

      5 months later

      admin 我也遇到了这个问题,然后我把EIED安装的gcc改成了我自己安装的gcc10.3版本,可是还是出现相同的问题,请问这该如何解决。ps:需要我重新开一个帖子吗?

        CY2022

        启动一次调试,贴出以下两个面板中的完整日志:

        • Terminal -> gdb-server

        • Debug Console

          admin


          第1张是Debug Console,第2张是Terminal,第3张是ARM_GCC版本

          admin 程序下载没问题,下进单片机里面也能正常运行显示想要的效果

            CY2022

            日志太少了,你可以按照这个打开详细日志:

            按照以下 issue 的说法,ECONNRESET 是 gdb 主动关闭了连接,而高版本的 gdb 可能需要 python 支持,很可能是 gdb 无法正常启动

            Marus/cortex-debug#711

            我建议你可以试试把 cortex-debug 降低到 1.5.1 以下,这样就能使用老的 gcc,因为本身高版本的 gcc 编译出的固件体积会增大,没必要用最新的

            目前我自己用的 v1.4.4 + JLink,没出现过这种问题

              admin



              我重新启用了EIDE下载的arm_gcc,然后将cortex-debug回退到1.4.4版本,但是还是出现了类似的问题,这次我按照你给的建议打开了详细日志,您今天没时间的话明天抽空帮我看看吧。谢谢!

              CY2022

              gdbsupport.init 文件是存在的,应该是你用了 中文的用户名 的问题

              由于编码问题,导致乱码,路径无法识别

                admin 您好,感谢您的帮助,您的说法是正确的,我修改了用户名为英文,然后代码调试一切正常了

                • LMHH replied to this.
                  2 years later

                  CY2022 你好,请问你是怎么修改用户文件夹名字为为英文的呢,修改的风险好像很大

                  Write a Reply...