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.

[参考译文] TMS320F280039:带有 SysConfig 的 VCRC 在标头中显示一些冲突

Guru**** 2394305 points
Other Parts Discussed in Thread: C2000WARE, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1347458/tms320f280039-vcrc-with-sysconfig-shows-some-clashes-in-headers

器件型号:TMS320F280039
主题中讨论的其他器件:C2000WARESysConfig

注意:我运行的是 CCS 12.7和 C2000Ware 5.02、但对于 CCS 12.5 / C2000Ware 5.01、仍然适用以下原则

从 C2000Ware 导入空工程并简单地从 SysConfig 添加 VCRC 实例、会在 C2000Ware 中的两个文件中生成#define Clash:

"c:\ti\cc2000\C2000Ware_5_02_00_00\libraries\DSP\VCU\c28\include\vcu2\vcu2_types.h"、第78行:警告#48-D:不兼容宏"true"的重新定义(在"C:\ti\c2000\C2000\C2000Ware_5_02_00_00\driverlib\f283x\driverobj.h"的第131行声明) 
"c:\ti\cc2000\C2000Ware_5_02_00_00\libraries\DSP\VCU\c28\include\vcu2\vcu2_types.h"、第79行:警告#48-D:宏"false"的重新定义不兼容(在"C:\ti\c2000\C2000\C2000Ware_5_02_00_00\driverlib\f283x\driverlib\driverobj.h"的第134行声明)

这两个文件都在 C2000Ware 分发中、因此编辑它们非常不合适。
选择复制工作区中的所有内容后、我至少应该已经在本地工作了 份数 从图书馆:这不是更好的选择吗?

但是、"C:\ti\c2000\C2000Ware_5_02_00_00\libraries\DSP\VCU\c28\examples\CRC\"中的 VCRC 示例是可行的(并且完整)、但仍然没有使用 SysConfig。
最后一个问题似乎是令人头痛的原因、因为在所附的屏幕截图中您可以看到的错误- SysConfig 生成的源代码强制
CRC 检查被声明为`extern void * name;`、那么使用的名称不能是函数地址、合理的变量地址等。


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

    尊敬的 Luca:

    感谢您提供有关警告的反馈、这似乎是因为在 C2000Ware 5.02中、这一真/假定义新添加到了 driverlib 中 、这是旧 vcrc 代码的重新定义。 我会将此问题上报给 driverlib 团队。 由于这两个定义是相同的、不会违反 ODR、因此您现在可以安全地忽略此警告。

    我同意我们的 SysConfig VCRC 模块存在缺陷、值得注意的是、它 需要一个"消息缓冲器变量"并需要 一个通用指针。 如果使用非 ethless、则可以将缓冲区指定为 通用 void 指针、并将指针名称作为消息缓冲区变量传递。 例如:

    float gMsgBuffer[256];
    void* gMsgPtr = &gMsgBuffer;

    如果您还想在 C2000Ware 5.02中查看一些 VCRC syscfg 示例、尽管是针对不同的器件、请查看 C2000Ware_5_02_00_00\driverlib\f28p55x\examples\dsp 文件夹。 如果您有其他问题、敬请告知。

    此致!

    王森