工具/软件:
我的工程中有几个文件、需要包含 ti_drivers_config.h 文件。 当根据 MCU_PLUS_SDK_am261x_10_00_01_10\examples\drivers\mcan\canfd_loopback_interrupt\am261x-lp\r5fss0-0_freeRTOS 添加 CANFD 时、ti_drivers_config.h 中定义了两个符号 gCanfdObj 和 gCanfdHandle
这是 C/C++中的一个定义规则(ODR)违例、并且链接器恰好会抱怨 重新定义、因为现在、包含 ti_drivers_config.h 的每个文件都将定义这些符号。
因此、首先、我会认为这是生成的代码中的一个错误(基于 mcan_v0_hld.h.xdt)。
其次、 除了改用低级驱动程序(mcan.h)之外、是否有其他权变措施?
这是 ti_drivers_config.h 中生成的代码