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.

[参考译文] MSPM0G3507:LFU 引导加载程序演示无法正常工作

Guru**** 2433180 points
Other Parts Discussed in Thread: MSPM0G3507, LAUNCHXL-F2800157

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1544354/mspm0g3507-lfu-bootloader-demo-not-working

器件型号:MSPM0G3507
主题中讨论的其他器件: LAUNCHXL-F2800157

工具/软件:

您好、Im 尝试运行   PDF 中 MSPM0 实时固件更新 (LFU) 引导加载程序实现的演示示示例。

首先、我认为 PDF 中给出的演示文件已经过时了、所以我甚至加载 GUI 都遇到了问题、但一旦我终于找到了、我就开始构建引导加载程序、代码出错很多(考虑到它是一个演示,这很疯狂)

在尝试查找论坛或任何其他有类似问题的迹象后、我最终找到了一个论坛、该论坛具有使用 LFU 的演示文件的更新版本(如果您想引用它们,请查看此处)


一旦我将其加载到 CCS 并尝试编译引导加载程序工程、它就成功了、起初没有错误、但一旦我尝试开始调试、由于在初始编译之前没有创建.out 文件、因此失败。 然后我再次开始构建、然后主源代码中弹出带有以下消息的错误:


< 不兼容的函数指针类型使用类型为“void (const TickType_t)“的表达式初始化“void (* const)(又名“void (const unsigned int)“)[-Wincompative-function-pointer-types] >

此误差来自这个 vTaskDelay 函数

旧的演示文件中也显示了同样的错误

有没有人知道为什么它不能正常工作? 我的想法已经耗尽,它一直令人沮丧。 我应该使用较旧的编译器还是其他编译器? 任何建议都会有所帮助!

作为参考、我使用 MSPM0G3507。

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

    明白。

    您能告诉我您正在使用的 CCS、syscfg 和 MSPM0 SDK 版本吗?

    然后我将尝试此演示、看看我是否可以向您提供一些反馈。

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

    是的、当然、我使用了、

    CCS 中完成 20.2.0
    MSPM0 SDK 版本  2.05.01.00
    SYSCFG 版本 1.24.0

    我注意到、在演示工程中、从不同版本的 SDK 和 syscfg 创建了许多不同的文件、这可能是为什么它无法正常工作?

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

    ~您似乎正在使用最新的 CCS 和 SDK、我先来看一下。

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

    我想我已经弄清楚了,对于任何其他有问题的人,我刚刚在 vTaskdelay 函数前面添加了“( void (*)(void))“并且它是有效的,所以这就是代码现在的样子。


    {
      (void (*)(void))vTaskDelay,
    };

    已刷写引导加载程序、现在可与 GUI 配合使用、感谢您给予及时响应!

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

    我想问您是否知道此 LFU 引导加载程序演示是否可与另一个 TI 微控制器(不是 MSPM0)配合使用、具体而言 、如果我重新配置 UART 引脚以匹配 此电路板上使用的引脚、您认为它是否可以与 LAUNCHXL-F2800157 搭配使用?

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

    从我的角度来看、LFU 演示本身不会直接适用于 F2800157。

    但您可以按照其软件结构将其迁移到 F2800157。

    如果您需要 F2800157 侧的任何建议、请向此器件 E2E 论坛提交另一个 E2E 请求单、因为我只支持 MSPM0。

    我想我想我已经弄清楚了、对于任何其他有问题的人、我刚刚在 vTaskdelay 函数前面添加了“(void (*)(void))“并且它是有效的、所以这就是代码现在的样子、

    感谢您的反馈。 这是一个任务延迟函数。

    我将从我这边检查编译器、如果有任何问题、我将报告它进行修复。

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

    另外、您可以尝试以下操作:

    void (* const shared_functions[])()  __attribute((used)) __attribute__((section (".shared_area"))) =
    {
     vTaskDelay,
    };