工具/软件:Code Composer Studio
我正在努力将 eCAN 集成到 Instaspin FOC 实验的修改版本实验5b 中。 我在与 can.h 头文件相同的位置添加了一个 CAN.c 文件(sw/drivers/ca/.....) /src)。 为了以最简单的形式对其进行测试、CAN.c 仅包含以下内容:
// //包含的文件 // #include "sw/drivers/ca/src/32b/F28x/f2805x/ca.h" //此文件中找到的函数的原型语句。 void CAN_init (void) { ECANaRegs.CANAA.ALL = 0; 返回; }
我也暂时简化了我的主方法,只包括对 CAN_init()的调用。 可以在 can.h 中定义 ECanaRegs、我可以右键单击->打开要在那里获取的声明。 我得到的错误告诉我、ECanaRegs 是一个未解析的符号(当我调用它们时、ECANaMbox 或影子寄存器也是如此)。 当我注释掉该定义时、我会得到一个不同的错误(ECanaRegs 未定义)、因此我知道它可以看到 can.h 文件。
在我从 C2000中有另一个包含相同定义的文件(f2805x_eCAN-h)之前、我已经从项目中完全删除了该文件。 从主方法调用这些结构时、我会遇到相同的"未解析符号"错误? 出什么问题了?
谢谢