主题中讨论的其他器件:C2000WARE
我根据通用电机控制实验创建了一个定制项目。
我将通用电机控制实验中的文件复制到定制项目中、以便我可以在该项目中进行修改。 这些是自定义工程中文件的本地副本、不再链接到原始工程中 C:\ti\c2000\C2000Ware_MotorControl_SDK_4_02_00_00\solutions\universal_motorcontrol_lab 处的原始文件
我已更新自定义工程、包括自定义工程内本地路径的搜索路径(不再指向原始工程)
例如、我 在自定义项目中修改了 MOTOR_Vars_t、以添加几个数据字段。 工程构建没有错误、我在访问这些数据字段时没有看到编译器错误。
不过、当运行自定义项目时、 仍然引用原始 MOTOR_Vars_t 结构、因此数据访问将发生偏移。 例如、如果原始结构可能是:
typedef 结构{
oldmember1,
旧成员2
}example_struct_t
新结构可能会被添加到
typedef 结构{
oldmember1,
新成员、
旧成员2
}example_struct_t
如果我尝试在中访问 newmember、编译器不会发出投诉。 但在运行时,如果我尝试访问 newmember ,数据读取是 oldmember2。
这就是 通用电机控制项目中的 MOTOR_Vars_t 所发生的情况。 运行时不使用 自定义项目中更新的 MOTOR_Vars_t 结构。
作为测试、我删除了自定义项目中的.settings 文件夹。 打开工程时、CCS 创建了一个新的.settings 目录、并使用来自原始工程的设置进行填充。 因此、从自定义项目到原始项目之间仍然存在一些链接。
我的总体目标是、自定义项目应将定制/本地 MOTOR_Vars_t 用于运行时、而不是使用 原始项目中的 MOTOR_Vars_t。 有什么关于如何断开此链接并使自定义项目正常运行的建议吗?
谢谢!
谢谢!