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.

[参考译文] CCS/MOTORWARE:Motorware + controlSUITE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/789498/ccs-motorware-motorware-controlsuite

器件型号:MOTORWARE
Thread 中讨论的其他器件:controlSUITE

工具/软件:Code Composer Studio

我正在使用 proj_lab07a。(f28069m)

我将 添加一个 controlSUITE 示例代码。

我添加了以下代码。

void main (void)

   ///////////////////////////////////////////////////////////// 190403
   //步骤1. 初始化系统控制:
       // PLL、安全装置、启用外设时钟
       //此示例函数位于 F2806x_SYSCTRL.c 文件中。

       InitSysCtrl();

       //步骤2. 初始化 GPIO:
       //此示例函数位于 F2806x_GPIO.c 文件和中
       //说明了如何将 GPIO 设置为其默认状态。
       // InitGpio(); //针对此示例跳过
       //仅为 SPI-A 功能设置 GP I/O
       InitSpiGpio();
       InitMcbspaGpio();

       EALLOW;
       GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0;
       GpioCtrlRegs.GPADIR.bit.GPIO31 = 1;

       GpioCtrlRegs.GPBMUX1.bit.GPIO34 = 0;
       GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1;
       EDIS;

       //步骤3. 初始化 PIE 矢量表:
       //禁用并清除所有 CPU 中断
       Dint;
       IER = 0x0000;
       IFR = 0x0000;

       //将 PIE 控制寄存器初始化为默认状态:
       //此函数位于 F2806x_PIECTRL.c 文件中。
       InitPieCtrl();

       //使用指向 shell 中断的指针初始化 PIE 矢量表
       //服务例程(ISR)。
       //这将填充整个表,即使是中断也是如此
       //在本例中未使用。  这对于调试很有用。
       //可以在 F2806x_DefaultIsr.c 中找到 shell ISR 例程
       //此函数可在 F2806x_PieVect.c 中找到
       InitPieVectTable();
///////////////////////////////////////////////////////////////// 190403

 当我构建时、会出现如下错误:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您丢失了包含您尝试调用的 API 的位字段源文件。 如果您在工作区或搜索路径中没有源文件或标头(如果它是内联函数)、则 CCS 不知道 API 是什么或如何定义它。 例如、这些 API 在 F2806x_PIECTRL.c 和 F2806x_PieVect.c 等文件中定义。 这些文件位于 controlSUITE 中、位于以下位置:C:\ti\controlSUITE\device_support\f2806x\v151\F2806x_common\source

    我建议加载一个使用这些 API 的 controlSUITE 文件、并查看包含的源文件和标头包含路径。 确定在 Motorware 项目中调用 API 所需的文件后、您可以根据需要将其添加到 CCS 工作区、方法是选择"Add Files"。 从 CCS 工作区中的右键单击工程下拉菜单中选择

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

     我添加了文件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已经解决了上述所有问题。
    但又出现了另一个问题。
    controlSUITE 使用 UINT16。
    因此、与 motorware 的数据类型存在冲突。
    告诉我如何解决它。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您需要在项目中包含正确的"F2806x_Device.h"、其中包括"UINT16"或其他类型的定义。
    请发布错误消息、帮助我们了解您的问题以解决问题。 谢谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    一周以来,我们没有收到您的回复,我假设您能够解决您的问题。 如果不是、只需在下面发布回复(如果该线程由于超时而锁定、则创建新线程)。 谢谢。