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.

[参考译文] CCS/CCSTUDIO-TM4X:XDS200仅擦除必要页面

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/900795/ccs-ccstudio-tm4x-xds200-erase-only-necessary-pages

器件型号:CCSTUDIO-TM4X

工具/软件:Code Composer Studio

您好!

我使用 Code Composer Studio v9.2进行使用调试探针 XDS200的 Tiva TM4C123开发。

在我们的项目中、我们有两个代码分区、一个引导加载程序和应用程序、每个分区位于一个单独的 CCS 项目中、因此两个.out 文件不在编译中。 我的目的是通过调试接口在目标上加载每个.out、但加载一个擦除闪存中的另一个时、我遇到了困难。

我在 Project properties -> Debug -> Flash settings 中选中了"Erase only necessary pages "选项、但它没有改变任何内容。 我还使用十六进制实用程序生成了十六进制文件、并检查了两个二进制文件是否都位于不同的闪存扇区。 当然、我还尝试使用指定的选项和要擦除的存储器范围、因为在另一个帖子中、对于 CCS v7而言、这种问题是一种权变措施、但也不起作用。

是否有方法使其正常工作?

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

    您好!

    假设这两个程序的页面完全不同、这应该适用于您的用例。 我使用我的 CCS 9.2.0设置并使用 Tiva 目标(尽管是不同的器件)尝试了它、它工作正常。 您能否共享*。out 文件? 如果不想公开共享、您可以通过私人邮件发送。

    谢谢

    Ki

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

    当我尝试向您发送包含附件的私人消息时、我收到一条错误消息。 我还有其他方法可以将它们传输给您吗?

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

    您能否与我开始私人谈话进行讨论?

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

    感谢您的测试案例。 当我将"程序加载设置"更改为"仅限必要页面"时、它将按我的预期工作。 例如、当我首次加载 透析 ValvesLoaderBootloader.out、然后加 载透析 ValvesLoader.out 时、第一个程序(透析 ValvesLoaderBootloader.out)仍然存在。 加载 DialysateValvesLoader.out 后、我通过检查地址0x1D00来确认了这一点。 如果"Erase Method"被设定为"Use the Erase Option Specified below (使用下面指定的擦除选项)"(选中了"Entire Flash")、那么我会看到0x1D00上的内容被擦除。

    您能否尝试启动 一个无项目调试会话 并为启动本身设置闪存属性? 确保应用了"记住我的设置"选项。

    尝试在无工程调试会话中加载输出文件、并查看整个闪存是否继续被擦除。

    谢谢

    Ki

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

    感谢你的答复。 当我阅读您的帖子时、我想我从未看到过"记住我的设置"按钮、这是我无法助您一臂之力的。 所以我发现我一定是在错误的菜单中。 实际上、当我从 Project properties -> Debug -> Flash settings 中更改选项时、它不起作用:


    但是、我从另一个位置找到了完全相同的选项:Project properties -> Run/Debug Settings -> TM4C123GH6PZ.CCXML -> Edit -> Target -> Flash Settings。 将其更改为仅擦除必要的页面并重新启动调试会话确实有效!



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

    很高兴听到您解决了问题、并感谢您的更新。 我还很抱歉不得不处理调试配置的复杂性。 在首次启动工程的调试会话时会生成工程调试配置。 它将检查项目调试属性、并使用该信息生成调试配置。 将其视为一种缓存文件。 后续启动将使用该缓存启动项目的调试会话。 现在,如果修改项目调试属性,则会重新生成调试配置*should *。 但在您的案例中似乎没有发生这种情况(尽管在我的案例中确实发生了这种情况)。 该功能有时可能会有点不稳定、因此我们有时建议清除调试配置以确保重新生成这些配置(请参阅 :https://software-dl.ti.com/ccs/esd/documents/users_guide/ccs_troubleshooting.html#delete-the-debug-launch-configuration 9.7.3和9.7.4)。

     因此:

    [引用 user="Matthieu Tardivon"]。 实际上、当我从 Project properties -> Debug -> Flash settings [/quot]中更改选项时、

    这个*应该*已经成功了。 我不知道为什么没有。 配置文件可能有问题。

    在调试会话期间更改调试器选项并使用"记住我的设置"按钮时、这会将更改直接写入调试配置"缓存"文件。 因此、这是一种更可靠的调试设置更改方法的原因。

    [引用 USER="Matthieu TardiVON">项目属性->运行/调试设置-> TM4C123GH6PZ.ccxml->编辑->目标->闪存设置。 将其更改为仅擦除必要页面并重新启动调试会话确实有效!

    您在上面所做的基本上是相同的操作-直接修改调试配置文件。

    无论如何,我希望这有助于对正在进行的活动稍作说明。

    谢谢

    Ki

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

    确实如此! 感谢您的参与和支持!