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.

[参考译文] TMS320F280049:闪存的 ERAD 示例注意事项

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1128588/tms320f280049-erad-example-considerations-on-flash

器件型号:TMS320F280049
主题中讨论的其他器件:C2000WARE

尊敬的香榭丽舍

我向我们的客户提出这一问题。

用户在 TI 示例“ERAD_ex6_hwbp_stack_overflow”中报告,发现在 下面的构建配置中使用 RAM 时,寄存器看起来是正确的。  




但在构建配置中使用闪存时、它们看起来是错误的。  




请您确认吗?

使用 ERAD 时是否有任何考虑因素?

例如、用户需要先将某些特定代码从闪存移动到 RAM?

如果是、他们需要移动哪些代码?

通过使用另一个示例“ERAD_EX8_hwbp_threshold_detection”,他们发现症状 相似  

请您澄清一下吗?

黄维恩

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

    您好!

    CCS 还使用 ERAD 来插入硬件断点。 在闪存配置中、所有断点都将使用硬件断点、C28x 内核支持2个硬件断点。 对于其他断点、CCS 配置 ERAD 模块并将调试器配置为 ERAD 模块所有者

    此致、

    Veena

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

    尊敬的 Veena

    您的意思是、如果用户想要使用闪存配置、他们应该只使用2个硬件断点、因为这些示例使用了另一个 ERAD 断点?

    我们的理解是否正确?

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

    是的、没错。 对于应用调试、可使用 RAM 配置。 它允许使用不需要任何硬件资源的软件断点

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

    尊敬的 Veena:

    用户表示问题仍然存在、即使他们只使用一个硬件断点或不使用硬件断点。  
    调试寄存器(存储器映射)值不正确。

    你还有其他意见吗?

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

    您好、Wayne、

    即使用户不添加断点、CCS 默认也会在 main 的开头使用一个断点、用于单步执行。 根据我的理解、前2个断点将使用 C28x 内核断点插入、只有附加断点将使用 ERAD。

    此致、

    Veena

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

    尊敬的 Veena:

    我仍然很困惑。

    即使用户使用1个硬件断点并且发现 ERAD 寄存器值不正确、用户也会在闪存构建配置方面遇到问题。

    您可以说 CCS 默认使用1x 硬件断点。

    似乎只有2个硬件断点。 为什么这些 ERAD 寄存器值不正确?

    这是否意味着通过使用闪存模式和 CCS、他们无法使用任何观察窗口来查看 CCS 上的 ERAD 寄存器?

    它们应该只使用独立模式(不带 CCS)进行 ERAD 调试、例如通过 UART 等通信端口输出 ERAD 寄存器值?

    韦恩

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

    尊敬的 Veena:

    我尝试使用 C2000ware v4.01来查看用户的问题、但无法重现此问题。

    也就是说、我看到的 ERAD 寄存器在构建配置中与 F280049LP_RAM 和 F280049LP_flashs 模式相同。

    但是、我发现 c2000ware v4.01中的示例是"ERAD_ex3_stack_overflow_detect.c"、而不是用户使用的"ERAD_ex6_hwbp_stack_overflow"。

    因此、我想知道这个示例(这些示例)在 c2000ware 的过去版本中是否有任何重大更改/更新?

    如果是、主要更新是什么以及为什么是?

    韦恩

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

    当 ERAD 驱动程序不可用时、C2000ware 3.4版本中提供了 ERAD_ex6_hwbp_stack_overflow。 在4.00中、我们添加了 ERAD 驱动程序、并更新了使用驱动程序函数的更多示例

    CCS 版本是否有差异?

    此致、

    Veena

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

    尊敬的 Veena

    用户使用了编译器 V18.12.2.LTS 的 C2000ware V2.01。

    我使用了编译器 V22.6.0.LTS 的最新 C2000ware V4.01。

    用户将尝试使用最新的 C2000ware v4.01并尝试对此进行澄清。

    同时、用户要求在 C2000ware V2.01至 V4.01之间提供此示例的修订历史记录

    这 适用于汽车 OEM、除非他们有合理的理由、否则他们不容易更新基础库/驱动程序。

    您是否会向我们展示并将此示例的修订历史记录脱机发送给我?

    韦恩

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

    您好、Wayne、

    CCS 版本会影响这些 ERAD 断点行为、这比编译器要多。 CCS 调试模块可配置 ERAD 以插入断点。

    C2000ware 发行说明捕获了该发行版中包含的所有增强功能和错误修复的详细信息

    此致、

    Veena

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

    尊敬的 Veena:

    您是指此链接中 C2000ware 的发行说明吗?

    https://software-dl.ti.com/C2000/c2000_apps_public_sw/c2000ware/4_01_00_00/release_notes.html

    它没有提到像 ERAD 这样的单个示例是如何更新的。

    或者、您意味着其他什么吗?

    请您明确地向我们展示一下吗?

    韦恩

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

    您好、Wayne、

    还有一个包含详细信息的发行说明 pdf 文件。 此更改在 新示例下捕获。 使用直接寄存器访问的现有示例被新示例取代

    "ERAD 新示例- F28004x、F2838x 和 F28002x 上的非侵入式诊断"

    这还列出了已知问题和限制。

    "F2838x ERAD 示例由于已知问题 DBGTRC-6023"、未使用闪存构建配置进行验证

    此致、

    Veena

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

    尊敬的 Veena:

    我明白了。

    它似乎与 CCS 相关。 升级到 CCS 12.0后、用户发现它可以正常工作。

    感谢您的支持。

    黄维恩