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.

[参考译文] TMS570LS0914:FreeRTOS 移植

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1111170/tms570ls0914-freertos-porting

器件型号:TMS570LS0914
主题中讨论的其他器件:HALCOGENTMS570LS1224

您好!

我们正在尝试将 Halcogen TMS570LS0714PGE_FreeRTOS 移植到 TMS570LS0914PZ。 我们将分步执行 spna237、但如果我们启动两个以上的任务、则会生成数据中止(可能是由堆栈溢出生成)、它会在函数 portSAVE_context 中发生:

R0损坏、其值为0x20202020。 如果我们启用 FreeRTOS 的 StackOverflow 挂钩、它也会被锁存。  

根据 DS、该微控制器具有1024 KB 的闪存和128KB 的 RAM、因此我们认为 Sys_link.cmd 应该是以下内容:

此外、所有代码都在另一个板(使用另一个 PN)中正常运行。

您能给我们一个问题吗?

Ty。

艾兹基贝尔

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

    尊敬的  Aizkibel:

    我认为链接器 cmd 文件没问题。  

    但您对 LS0914使用不同的封装(PZ)。 PZ 的 CPU 速度为100MHz、PGE 封装的 CPU 速度为160MHz。 您是否更改了 PLL 配置?

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

    QJ 您好、感谢您的提示、但我认为它配置得很好:

    Halcogen LS0914:

    Halcogen FreeRTOS LS0714 PGE:

    在 FreeRTOS 配置中、我已将 TI1CLK 更改为100M。

    艾兹基贝尔

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

    最后、我解决了以下问题:

    我按照堆栈溢出一直到根、以下函数:

    在"taskSelectHIGET_priority_task()"被执行之前、pxCurrentTCBConst 是正常的、并且在返回后被损坏

    在 FreeRTOS 论坛中查找此函数我了解到、如果任务没有使用足够的堆栈空间创建、则可能会生成故障... 现在我已经复制了两个任务的内存(从 configMINIMAL_STACK_SIZE 到 configMINIMAL_STACK_SIZE * 2)、并且它正在工作。 但是,我无法理解为什么相同的代码适用于 TMS570LS1224....  

    一如既往、感谢 QJ 的支持。


    艾兹基贝尔