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.

[参考译文] TMS320F28P550SJ:dual_axis_servo_drive_FCL_QEP 生成步骤3编译错误

Guru**** 2466550 points
Other Parts Discussed in Thread: LAUNCHXL-F28P55X

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1485674/tms320f28p550sj-dual_axis_servo_drive_fcl_qep-build-step-3-compile-errors

器件型号:TMS320F28P550SJ
Thread 中讨论的其他器件:LAUNCHXL-F28P55X

工具与软件:

使用电机控制 SDK 工程示例 dual_axis_servo_drive_FCL_QEP。  使用 LAUNCHxl-F28P55x 处理器板在自定义驱动器上运行。   我已经构建并测试了构建步骤1和2 -并且使两个电机都开环旋转。  在构建步骤3中、我看到一些基本的编译错误、这让我怀疑我没有所有正确的代码、库或版本?

在第1288行(构建步骤3)附近的 dual_axis_servo_drive.c 中、有几行使用 motorVars[1].state -该结构没有名为"state"的成员。

这是代码库中的错误吗、或者我是否没有库/SDK 与项目进行 vrsion 同步?  如何确保我使用的是所有正确的组件?

谢谢

if (motorVars[1].runMotor == MOTOR_STOP)

  motorVars[1].ptrFCL->lsw = ENC_alignment;
 motorVars[1].pi_id.ref = 0;
 motorVars[1].IdREF = 0;
 FCL_resetController (&motorVars[1]);

 motorVars[1].state |= 0x8000;   <<<<<<<<<<<<<<<<<<<<<<<<<< 此行
}
否则 if (motorVars[1].ptrFCL->lsw == ENC_alignment)

 //校准电流
 motorVars[1].idref = motorVars[1].idREF_start;//0.1;

  motorVars[1].state |= 0x0001;

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

    在线的 LAUNCHXL F28P55X 项目示例是否存在问题?   我可以下载或启动其他示例、但这个始终会失败。  (正在寻找最新版本以查看上面的错误是否已修复)。

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

    Paul、你好!

    motorVars 中的"State"未使用、并且示例代码未删除构建级别3中的语句、您可以对其进行注释并继续测试。

    谢谢!

    嘉兴市