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.

[参考译文] TMS320F28069M:将 MotorWare 移植到 C2000Ware

Guru**** 2524550 points
Other Parts Discussed in Thread: C2000WARE, MOTORWARE, CONTROLSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/738763/tms320f28069m-porting-motorware-to-c2000ware

器件型号:TMS320F28069M
主题中讨论的其他器件:C2000WAREMOTORWAREcontrolSUITE

您好!

在将 Lab05d 移植到 C2000Ware 时、我偶然发现了以下问题:


#148声明与"uint16 RamfuncsLoadEnd"(在"D:\ti\C2000Ware_1_00_04_00_Software\device_support\f2806x\conus\include\f2806x_GlobalPrototypes.h"的第317行中声明)不兼容   proj_lab05d.c   /proj_lab05d+   代码行149    

#148声明与"uint16 RamfuncsLoadStart"(在"D:\ti\C2000Ware_1_00_04_00_Software\device_support\f2806x\conus\include\f2806x_GlobalPrototypes.h"的第316行中声明)不兼容   proj_lab05d.c   /proj_lab05d   行149+c+问题    

#148声明与"uint16 RamfuncsRunStart"(在"D:\ti\C2000Ware_1_00_04_00_Software\device_support\f2806x\conus\include\f2806x_GlobalPrototypes.h"的第318行中声明)不兼容   proj_lab05d.c   /proj_lab05d   行149/C++   问题

想知道如何解决这个问题。

谢谢、

制造商

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以参阅基于实验示例项目的闪存、而不是 RAM 配置、这3个符号在.cmd 文件中定义、并在头文件或 proj_labxx.c 文件中进行了说明(motorWare 使用此文件)。
    无需将 motorWare 移植到 C2000Ware、如果您想使用 motorWare 中的一些现有外设示例、只需添加 controlSUITE 或 C2000Ware 中的一些文件即可。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    两种不同的寄存器布局之间的 ISR 存在冲突、因此必须将 Motorware 移植到 C2000Ware、这是另一种使用 C2000ware 开发的应用程序、两者都需要协同工作。 尤其是、ADC 有点问题。

    我们看了其他示例。 无法真正找到问题的真正原因。 会花费更多的时间。

    谢谢、

    制造商
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很好。 您可以移植基于 MotorWare 的 controlSUITE 或 C2000Ware 中的文件、只需根据所需的位字段结构添加器件或应用功能、这些功能应该更容易实现。 如果您有任何疑问、请告诉我。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 lab05d 中注释以下内容似乎是有效的、因为其他所有内容似乎都已到位。


    //#ifdef 闪存
    //用于在闪存中运行后台,在 RAM 中运行 ISR
    //extern uint16_t * RamfuncsLoadStart、* RamfuncsLoadEnd、* RamfuncsRunStart;
    //#endif

    之后:Build Configuration -> Set Active -> Flash

    看起来是按预期构建的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我对 Motorware 管理两个构建配置的方式略有困惑、一个用于 RAM、另一个用于闪存。
    当我为 C2000ware 编写应用程序时、需要使用 DMA、因此必须使用 DMARAML8并对 F28069_ram_lnk.cmd 进行适当的更改。 从 RAM 中可以很好地工作。
    也就是说、在 lab05d 构建中、它对闪存构建使用 F28069.cmd。 我从未对此做过任何更改、但 RAML8似乎在其中定义。
    但是、尽管如此、应用程序目前还是从闪存引导。 不过、我需要从 XDS100上断开 TRST。
    现在看起来很棒。

    也就是说、使用 Motorware 进行构建配置管理看起来不错。 我希望其他正在使用的项目也能轻松做到这一点。
    在 CCS 项目配置中添加一个配置是否简单?

    谢谢、
    制造商