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.

[参考译文] LP-MSPM0G3519:eraseLoadFlashSize 和 eraseLoadFlashStart 定义作为 Clang 编译器的 FLS 模块的一部分丢失

Guru**** 2448780 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1500518/lp-mspm0g3519-eraseloadflashsize-and-eraseloadflashstart-definition-is-missed-as-part-of-fls-module-for-clang-compiler

器件型号:LP-MSPM0G3519

工具/软件:

您好团队:

我们使用的是 MCAL:MCAL MSPM0_00.02.04.00软件包

SDK: mspm0_sdk_2_04_00_06版本

在 FLS 模块中、  缺少 eraseLoadFlashSize 和 eraseLoadFlashStart 的定义、我们收到编译错误

如果定义了 CLANG、则为#
extern uint32_t eraseLoadFlashSize;
extern uint32_t eraseLoadFlashStart;
#else
Uint32 eraseLoadFlashSize =(Uint32)((Uint32 *)__section_size (".eraseLoadSram");
const uint32_t * eraseLoadFlashStart =((const uint32_t *)_section_begin (".eraseLoadSram"));
#endif

能否提供您的反馈

谢谢你。

此致、

Pradeep R

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

    您好 Pradeep、

    这是 AUTOSAR 4.3.1的标准类型吗?

    也许我们在 FLS 静态代码中使用了不同类型的名称,验证了 FLS 的例子。

    B.R.

    Sal

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

    您好 Sal、

    您能告诉我们在 FLS 示例中是如何处理的吗

    因为我们没有得到确切的定义

    此致、

    Pradeep R

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

    您好 Pradeep、

    我没有测试环境 、我看到几个客户使用的 FLS 示例运行良好。

    我将请我的团队中的专家帮助评论它的工作原理。  

    顺便说一下、下面是 AutoSar 的标准类型吗? 如果是、我还会转发给 MCAL 团队了解。

    #if defined clang
    extern uint32_t eraseLoadFlashSize;
    extern uint32_t eraseLoadFlashStart;
    #else
    Uint32 eraseLoadFlashSize =(Uint32)((Uint32 *)__section_size (".eraseLoadSram");
    const uint32_t * eraseLoadFlashStart =((const uint32_t *)_section_begin (".eraseLoadSram"));
    #endif

    B.R.

    Sal

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

    您好 Sal、

    我们正在定义宏 CLANG、因此只能这样  

    extern uint32_t eraseLoadFlashSize;
    extern uint32_t eraseLoadFlashStart;

    代码将被声明

    即使我们测试了您的 FLS 示例、我们也注意到在链接器文件中添加了以下行

    .eraseLoadSram :palign(8) load > flash size (eraseLoadFlashSize) start(eraseLoadFlashStart)

    我想知道它是否是在链接期间处理的

    此致、

    Pradeep R

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

    您好 Pradeep、

    我使用 MCAL 2.04.0版本的 FLS 示例进行了测试、该示例可以使用 TICLANG 编译器很好地编译。

    请查看中 FLS 驱动程序用户指南的指南 /mcal_docs/output/imports/user_guide/MSPM0G351x/modules/fls_user_guide.html。

     需要在.cmd 文件中添加".eraseLoadSram:palign (8) load > flash size (eraseLoadFlashSize) start (eraseLoadFlashStart)"、才能使闪存执行代码在 SRAM 中运行。

    此致、

    Penfei