This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP432 调试器:CCS1271 XDS110 上传失败、但 CCS11 上传工作正常 — 同一台计算机

Guru**** 2561930 points
Other Parts Discussed in Thread: UNIFLASH

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1568673/msp432-debuggers-ccs1271-xds110-upload-fails-but-ccs11-upload-works-fine---same-computer

部件号:MSP432-调试器
Thread 中讨论的其他器件:UNIFLASH

工具/软件:

在 CCS12 的最新更新 (12.8.1.00005) 后、将新的可执行文件上传到 MSP432 失败。 但是、重新引导计算机到 openSUSE Leap 15.4 与 CCS11 使上载工作正常、相同的计算机、相同的 USB 电缆、相同的 MSP432。

此计算机上的主操作系统是 openSUSE Tumbleweed、它具有当前的 6.16.7 内核。 CCS12 于 2024 年 7 月安装、并运行良好。 我还保留了带有 Linux 5.14.21 内核的 openSUSE 15.4 安装、该内核位于单独的硬盘驱动器上。 Tumbleweed 上的 CCS12 最近有一系列更新,使版本达到 12.8.1.00005。 以下更新、尝试通过 USB 上传到 MSP 失败、对话框中显示以下错误:

初始化仿真器时出错:
(错误–260 @ 0x0)
尝试连接到 XDS110 失败。
原因可能是以下一个或多个:未连接 XDS110、无效
固件更新、无效的 XDS110 序列号或 USB 有故障
自动协商。 可以使用更新固件和序列号
可以在.../ccs_base/common/uscif/xds110 中找到 xdsdfu 实用程序
安装的工程目录。 查看 XDS110SupportReadMe.pdf
将文件提交到此处以获取说明。
(仿真包 20.0.0.3178)

因此、我按照说明刷新最新固件:

17:28 向导:.../common/uscif/xds110 #./xdsdfu -e

USB 设备固件升级实用程序
版权所有 (c) 2008-2019 Texas Instruments Incorporated。 保留所有权利。

扫描 USB 总线以查找支持的 XDS110 器件...


<<<< Device 0 >>>

VID:0x0451 PID:0xbef3
器件名称:采用 CMSIS-DAP 进行 XDS110 嵌入
版本:3.0.0.20
制造商:Texas Instruments
序列号:M4321005
模式:运行时
配置:标准

找到 1 个器件。
17:28 向导:.../common/uscif/xds110 #./xdsdfu -m

USB 设备固件升级实用程序
版权所有 (c) 2008-2019 Texas Instruments Incorporated。 保留所有权利。

扫描 USB 总线以查找支持的 XDS110 器件...


<<<< Device 0 >>>

VID:0x0451 PID:0xbef3
器件名称:采用 CMSIS-DAP 进行 XDS110 嵌入
版本:3.0.0.20
制造商:Texas Instruments
序列号:M4321005
模式:运行时
配置:标准

将器件切换到 DFU 模式。
17:35 向导:.../common/uscif/xds110 #./xdsdfu -f firmware_3.0.0.32.bin -r

USB 设备固件升级实用程序
版权所有 (c) 2008-2019 Texas Instruments Incorporated。 保留所有权利。

扫描 USB 总线以查找支持的 XDS110 器件...

正在将 firmware_3.0.0.32.bin 下载到器件...

完成没问题。

18:48 向导:.../common/uscif/xds110 #./xdsdfu -e

USB 设备固件升级实用程序
版权所有 (c) 2008-2019 Texas Instruments Incorporated。 保留所有权利。

扫描 USB 总线以查找支持的 XDS110 器件...


<<<< Device 0 >>>

VID:0x0451 PID:0xbef3
器件名称:采用 CMSIS-DAP 进行 XDS110 嵌入
版本:3.0.0.32
制造商:Texas Instruments
序列号:M4321005
模式:运行时
配置:标准

找到 1 个器件。

但是、尝试从 CCS12 加载新的可执行文件失败、并出现同样的错误。 然后、我重新启动计算机、将其重新安装到 openSUSE Leap 15.4 中、并安装 CCS11、以验证上载是否可以继续使用更新到 MSP 上的新固件。 它可以正常工作并加载新的可执行文件、完全没有任何问题。

因此、在 CCS11 和 CCS12 与 openSUSE Leap 15.4 和 Tumbleweed 之间的某个地方、有些东西打破了 CCS12 上载到 MSP 的能力。 我需要 CCS12 才能工作、因为每次我需要将新程序上载到 MSP 时都无法重新启动。 我很乐意帮助您进行故障诊断、并提供您诊断问题时可能需要查看的任何内容。 我只需要您的帮助来确定这是什么(日志,驱动程序文件等...)

我在/opt/ti 上安装了 CCS12:

$ ls -al /opt/ti
共计 20 人
2024 年 7 月 18 日,大卫.
dr-xr-xr-x 10 根 4096 Nov 24 2024 ..
drwxr-xr-x 4 David David 4096 Jul 28 15:43 ccs1271.
drwxr-xr-x 8 David David 4096 2024 年 7 月 18 日 simplelink_msp432p4_SDK_3_40_01_02
drwxr-xr-x 10 David David 4096 2024 年 7 月 18 日 xdctools_3_60_02_34_core

在一年多前安装了 CCS12 时、此包装箱上曾经上传过的 CCS12。 我并不是一直使用 CCS、而且可能会在两次使用之间相隔几个月、所以我不确定究竟发生了什么更改才会破坏上载、但我知道、几周前启动 CCS12 时、下载并应用了许多更新、自那时起上传便无法正常工作。 它必须是简单的东西,但什么?

让我知道我还能提供什么、我很乐意这样做。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

     我会将您的问题转发给 CCS 专家以征求意见。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、David:

    您能否尝试在 Leap on to Tumbleweed 上安装相同的 CCS 11、看看它是否在该环境中工作?

    请注意、openSUSE 不是正式支持的 Linux 环境、因此我们可以为此环境提供的支持级别将受到限制。

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    可以。 我可以在 Tumbleweed 上安装 CCS11。 自 CCS6 以来、我一直在 openSUSE 上使用 CCS? 绝不会有任何问题。 此外、是否有办法将我的旧账户与此账户关联? 由于我一年没有登录、我的账户已关闭、现在我的所有问题历史记录都已消失。 用户名是相同的'hwdev'旧帐户是'rankinlawfirm.com 我必须创建的新帐户是'3111skyline.com '(两个都解析为相同的 IP )。 我尝试用旧的名字注册一个新的帐户,似乎成功了 — 但登录总是失败。 旧帐户详细说明了 openSUSE 作为操作系统的所有使用情况、没有任何问题。

    谢谢、我会将 CCS11 放到 Tumbleweed 上并汇报。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的,坏消息 CCS11 安装失败,带有错误对话框:

    ccs_error:无法安装可执行文件/tmp/ccs_5ecd75b0-5691-4545-596b-796baaf97925/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin:运行/tmp/ccs_5ecd75b0-5691-4545-596b-796baaf97925/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin --前缀“/opt/ti/ccs1120/ccs -- eclipseprefix “/opt/ti/ccs1120/ccs/eclipse -- mode unattended -- installer-log “/opt/ti/ccs1120/ccs/install_logs/20250923201553 -- CCS true 时出错:子进程异常退出。
    是否要重试?

    从命令行检查也失败,但确实提供了更多的信息(从开始禁用 SELinux ),例如

    20:28 wizard:/tmp #/tmp/ccs_5ecd75b0-5691-4545-596b-796baaf97925/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin -- prefix “/opt/ti/ccs1120/ccs --- eclipseprefix “/opt/ti/ccs1120/ccs/eclipse -- mode unattended -- installer-log “/opt/ti/ccs1120/ccs/install_logs/20250923201553 -- CCS true
    无法初始化安装程序。
    /tmp 是否可写?
    是否已启用 SELinux? 您可能需要暂时禁用它
    详情请见下文
    docs.fedoraproject.org/.../index.html
    20:29 wizard:/tmp # sestatus
    SELinux 状态:已禁用

    所以我坚持认为这一点。 CCS12 执行除上传到 MSP 之外的所有操作(可以进行编译等)。 CCS11 不会安装。 我还没有尝试过 CCS20、但如果有选择、我可能更愿意尝试 VSCode 扩展。 这也可能是一个问题、具体取决于扩展端点的设置方式。 我使用 VSCodium(VSCode 减去 MS 遥测)。 从 3 月开始? 4 月? MS 开始拒绝对正式 VSCode 版本以外的任何内容进行扩展。 这取决于 TI 嵌入式扩展是否受到影响、将决定是否可以安装它。

    我确实注意到 VSCode 扩展使用 openocd 来处理与电路板的通信(类似于我用于 Pico 电路板的通信)。 我已经安装了 openocd。 是否有一个器件文件可以与 openocd 一起用于从命令行直接上传到 MSP? 如果是、我可以重新安装 CCS12、它会执行我需要的所有操作、然后手动上传到 MSP。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我建议使用 CCS 20、而不是 TI VS Code 扩展。 扩展在功能和器件支持方面都非常有限。  

    如果您确实要探索扩展、它会与您需要的所有内容捆绑在一起、包括 openocd 的一个版本。 我们建议您使用此版本、因为它已通过扩展的测试。 如果您想手动运行,那么您可以直接使用 gdb+openocd 在扩展名之外执行此操作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、谢谢。 我要试试 CCS20。 我的最终偏好就是从命令行执行所有操作。 从我查找有关从命令行处理所有内容的文档到现在已经有 4-5 年了、当时它是 uniflash。 我还将再次搜索 openocd 与 MSP 配合使用。 如果你有一个收藏的链接,我就拿它。 我将返回报告结果。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我没有收藏的链接、但应该有一些信息、尤其是 MSP。 我记得在那里的几个指南,我第一次尝试了 GDB+openOCD CLI。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢! 这看起来就像这样、CCS20 由于同样的原因无法安装。 我怀疑 Tumbleweed 是一个滚动版本,是远远的(内核和软件包版本明智)什么甚至 CCS20 是为. 例如、作为依赖项、我必须安装 CCS20 安装程序请求的旧 python3.9 基址。 没关系、但 python3.13 是最新版本。 有两个较早版本的 libnsl (1.0)、其中安装了 libnsl (2.0)、而 libtinfo 则不再安装。

    错误对话框抱怨 Blackhawk 组件:

    ccs_error:无法安装可执行文件/tmp/ccs_968318ca-2644-4f95-50c8-b61bce2a2a58/BLACKHAWK_EMUPACK/bh_emupack_setup64_9.0.0.002.bin:运行/tmp/ccs_968318ca-2644-4f95-50c8-b61bce2a2a58/BLACKHAWK_EMUPACK/bh_emupack_setup64_9.0.0.002.bin --前缀“/opt/ti/ccs2030/ccs -- eclipseprefix “/opt/ti/ccs2030/ccs/eclipse -- mode unattended -- installer-log “/opt/ti/ccs2030/ccs/install_logs/20250925192824:子进程异常退出。
    是否要重试?

    SELinux 已被禁用、因此 CCS 现在只是 openSUSE Tumbleweed 上的不可执行操作、直到 CCS 依赖项跟上当前的软件包版本。

    我会看看是否可以使 openocd 发挥作用。 我已经安装了 arm-none-eabi 编译器和 gdb 以及 openocd。 上传时唯一缺少的是 msp432 的设备文件。 不过、如果未安装 CCS、我就无法获得所需的板级文件、接头等。 (现在我希望我不会卸载 12.8.00005,它可以正常生成文件,但我怀疑它也不会再安装)

    如果其他人能想到另一个银弹来尝试,我很高兴尝试它。 CCS11 和 CCS20 失败安装的错误日志都是在此电子邮件下提交的、作为中止安装过程的一部分。

    CCS12 也不再安装--我已经在 openSUSE 常规邮件列表中报告了这一点、并将查看是否有新的安全措施阻止从/tmp 完成安装。 此 Tumbleweed 安装有 apparmor、因此可能有一些新的“功能“阻止安装。 反馈。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    例如、作为依赖项、我必须安装 CCS20 安装程序请求的旧 python3.9 基址。 [/报价]

    如果不使用毫米波器件、可以忽略这种依赖关系。

    [报价 userid=“671558" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1568673/msp432-debuggers-ccs1271-xds110-upload-fails-but-ccs11-upload-works-fine---same-computer/6046866

    错误对话框抱怨 Blackhawk 组件:

    ccs_error:无法安装可执行文件/tmp/ccs_968318ca-2644-4f95-50c8-b61bce2a2a58/BLACKHAWK_EMUPACK/bh_emupack_setup64_9.0.0.002.bin:运行/tmp/ccs_968318ca-2644-4f95-50c8-b61bce2a2a58/BLACKHAWK_EMUPACK/bh_emupack_setup64_9.0.0.002.bin --前缀“/opt/ti/ccs2030/ccs -- eclipseprefix “/opt/ti/ccs2030/ccs/eclipse -- mode unattended -- installer-log “/opt/ti/ccs2030/ccs/install_logs/20250925192824:子进程异常退出。
    是否要重试?

    [/报价]

    这看起来与下面报告的问题有关。 或许建议的解决方法可以提供一些提示来帮助:

     关于:CCSTUDIO:CCS 20.1 安装问题:Blackhawk 中断安装 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    【已删除】
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哇! 我会被阻止-- CCS20 安装在创建 start_udev 文件后完成(这意味着 CCS12 和 CCS11 的安装也很可能成功)。 该问题应在安装程序中修复、start_udev 文件不再存在。

    我将获得 CCS20 中配置的内容(通常需要一段时间来搜索所有对话框)、并构建一个测试可执行文件、看看我是否可以上载到 MSP。  

    感谢您 Ki 找到该链接。 我们可以将它添加到列表中、以便 openSUSE Tumbleweed 使用:)

    ========================

    好的 CCS20 是 VSCode — 所以现在我有 2 个版本的 VSCode 在我的计算机上。 但无论如何、我都无法编译 CCS20 来编译我的工程。 我尝试“Project->Properties",“,然后、然后选择 clangd 编译器、而不是不再使用的旧 CCS 2.6 LTS 编译器。 对话框不允许我保存配置。 错误为:

    [0]*****为项目“TIMER_A_Blink_rate_nortos_ccs"****“****创建纯净配置“Debug"</s>“

    [1]/opt/ti/ccs2030/ccs/utils/bin/gmake -k -j 4 clean -O

    [2]rm -rf “timer_a_blink_rate_nortos_ccs.out"</s>“
    [3] rm -rf “system_msp432p401r.obj ““timer_a_blink.obj ““ccs/startup_msp432p401r_ccs.obj"</s>“
    [4] rm -rf “system_msp432p401r.d""timer_a_blink.d"“"timer_a_blink.d""ccs/startup_msp432p401r_ccs.d"“"ccs/startup_msp432p401r_ccs.d"</s>“ ““
    [5]完成清洁

    [6]*****构建完成****
    [7]发生生成文件错误。
    [8]该工程是使用当前未安装的编译器版本创建的 — 20.2.6.LTS [MSP432]。
    [9]构建已停止。

    如何更新编译器、以便工作区中的现有工程使用该编译器?

    另外、我尝试使用 udev_start 修复重新安装 12.8、但失败了。 安装日志末尾的完整输出为:

    正在提取压缩文件/opt/ti/ccs1271/ccs/ccs_base/.metadata/.tirex/mspm0-device-support.package.tirex.json
    [21:08:04] CCS_INFO:安装 zip 文件 MSPM0 mspm0_device_support_linux_1.09.01.01.zip 完成
    正在创建目录/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED
    正在创建目录/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/features
    解压缩文件
    正在解包/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin
    正在解包/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/content.xml
    正在解包/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/artifacts.xml
    正在解包/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/features/com.ti.cgt.dmed.linux_1.1.6.jar
    [21:08:04] CCS_INFO:正在安装 dMED
    执行 chmod -R 755 “/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin
    脚本退出代码:0

    脚本输出:


    脚本 stderr:


    [21:08:05] showprogress = false
    [21:08:05] CCS_INFO:正在安装/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86
    .bin
    [21:08:05] CCS_INFO:实际可执行文件/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_instal
    ler_x86.bin
    正在执行/tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86.bin --前缀“/opt/ti
    /ccs1271/ccs“--eclipseprefix /opt/ti/ccs1271/ccs/eclipse --mode unattended --installer-log “/opt/ti/ccs1271/ccs/ins
    tall_logs/20250927210234“-- CCS true
    脚本退出代码:1.

    脚本输出:
    无法初始化安装程序。
    /tmp 是否可写?
    是否已启用 SELinux? 您可能需要暂时禁用它
    详情请见下文
    docs.fedoraproject.org/.../index.html

    脚本 stderr:
    子进程异常退出

    CCS20 似乎没有用于 MSP432P401R 的编译器?? 我尝试选择 TI Clang v4.0.3.LTS、但对话框[Save and Close]不会执行任何操作、也不会执行保存或关闭操作。

    想法?

    =======================

    我已重新安装 12.7.1.00001。 在此处找到变通办法(这也适用于 ccs11): https://aur.archlinux.org/packages/ccstudio 未发生 12.8.00005 的更新(dMED 变通办法的结果?) 但是我可以构建并上传到 MSP432P401R 就可以了——我在所有文件更新后都做不到。

    我将看到是否可以将更新设置为 12.8、并查看上传功能是否开始失败。 我从未构建 CCS20。 它终于自动重新配置了我的工程、我能够将编译器切换到 CLANG、但即使安装了 simplelink 独立软件包、它仍然无法找到所需的文件(我添加了包含路径,但确实在失败点构建)。 稍后介绍。

    =======================

    我讨厌这种情况,但我认为我有一个基本的理解。 我让 12.7.1 完全更新为 12.8.1.00005。 生成并加载可执行文件! 因此,这留下了两个怀疑,因为有两个修改需要安装和第二次我必须再次应用更新后:

    1.替换 /tmp/ccs_062723ed-8162-4277-618c-0e2e60f90ba1/DMED/ti_cgt_dmed_1.1.6_linux_installer_x86
    带有简短脚本的.bin、仅返回成功;

    2.在 ccs1271/ccs/ccs_base/common/bin/libMiniDump.so 上设置 execstack -c

    我需要进一步研究、但如果 在将可执行文件加载到 MSP 期间使用 libMiniDump.so — 那么这可能是问题所在。 从 glibc-2.41 周围开始、执行位从分配给栈使用的页面中删除。  https://www.phoronix.com/news/Glibc-WA-Steam-Exec-Stack 将影响  libMiniDump.so 执行堆栈代码的能力。 Tumbleweed 当前使用 glibc 2.42、而 2025 年 1 月/2 月的 glibc 2.4.1 更新将在我安装 CCS12 与开始此论坛问题之间的中间时间完成。

    那么、12.8 处理上述修改后、我是否需要卸载 CCS20? 我无法让它在我的工作区中构建工程、项目的自动管理似乎会扰乱现有工程的工程配置(我的工作区中大约有 40 个)。 那么最好卸载 CCS20 吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如何更新编译器、以便我工作区中的现有工程可以使用它?

    检出:  

    https://www.ti.com/video/6369988068112

    另请参阅:

    https://dev.ti.com/tirex/content/code_composer_studio%E2%84%A2_academy_2_20_22_00/_build_code_composer_studio%E2%84%A2_academy_2_20_22_00/source/gs/migration/sub-migration/m1-general_and_ide.html#compiler

    您可以从以下位置获取旧的 TI ARM 专有编译器:

    https://www.ti.com/tool/download/ARM-CGT

    如果您已经在同一台计算机上有 CCS 12、则只需将 CCS 20.x 指向 CCS 12.x 中的位置、即可“发现“它。

    那么 12.8 处理上述修改后、我需要卸载 CCS20 吗? 我无法让它在我的工作区中构建工程、项目的自动管理似乎会扰乱现有工程的工程配置(我的工作区中大约有 40 个)。 那么最好卸载 CCS20 吗?

    我想由你决定。 不再支持 CCS 12.x、因此我们建议迁移到 CCS 20.x 您似乎缺少 CCS 20.x 的旧 ARM 编译器、因此、解决该问题后、您应该能够在 CCS 20.x 中进行构建  

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢你 Ki! 我已将此标记为解决问题。 当发行版更新到该版本时、glibc 2.41 可执行堆栈更改可能会吸引许多人。 对于 CCS20、当 start_udev 同样被删除时、Blackhawk start_udev 问题也会捕获许多。 我将查看是否可以找到用于现有 VSCode 安装的 CCS 插件。 在$HOME 中安装多个版本的 VSCode 后、配置覆盖的风险太大了。

    我将把 CCS20 指向 CCS18、了解 MSP432 的专有编译器。 如果我能解决 VFP 问题,我可以只使用 gcc-arm-none-eabi 来处理所有这一切,这将是理想的。 这适用于另一个线程。 再次感谢您的帮助!