Part Number:CC1311R3Other Parts Discussed in Thread: CC1311P3, SYSCONFIG
您好!
我的cc1311R3工程在 simplelink_cc13xx_cc26xx_sdk_7_10_02_23 中的rfPacketTx_LP_CC1311P3_nortos_ticlang例程修改而来,
在我添加SPI初始化代码后链接时报错,请问我还需要添加哪些文件?
错误截图如下:
SPI初始化代码如下:
链接设置如下:
谢谢!
Galaxy Yue:
你好,
错误 #10234-D:仍存在未解析的符号 是指从链接器收到构建错误
请参考FAQ的解决方案
https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/796036/faq-ccs-how-to-resolve-build-error-10234-d-unresolved-symbols-remain
也请查看一下这篇
https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/598134/ccs-10010-errors-encountered-during-linking-out-not-built-10234-d-unresolved-symbols-remain
,
tang y:
分别在SDK中的 rfPacketTx_LP_CC1311P3_nortos_ticlang 和 spiffsexternal_LP_CC1311P3_nortos_ticlang两个工程的mainThread函数中添加:
#include <ti/drivers/SPI.h>
SPI_init();
其中rfPacketTx_LP_CC1311P3_nortos_ticlang 工程编译报错,而spiffsexternal_LP_CC1311P3_nortos_ticlang编译通过,这是哪里的配置导致的呢?
,
Galaxy Yue:
为什么会发生这种情况
链接器获取编译器生成的目标文件并将它们组合成单个可执行程序。此过程的关键部分是将符号引用映射到其定义。例如,函数 myfunc() 可以在文件 A 中定义并在文件 B 中使用。链接器将引用连接到定义。该错误表明链接器无法找到定义;未向链接器提供包含符号定义的目标文件或库。
采取措施:
第一步是确定符号未定义的原因。如果您希望在项目中创建函数或变量,请确保为符号提供实际定义,并且包含该定义的文件是项目的一部分。否则,最可能的情况是您正在引用库提供的符号,但该库未被引用。确保使用“文件搜索路径”选项中的 –library 选项指定所需的库。
可能是不同工程之间的链接器映射到的不一样
,
tang y:
这几个帖子我都看过了,我不知道应该包含哪些文件,您那边是否可以试试,在rfPacketTx_LP_CC1311P3_nortos_ticlang例程中添加spi的初始化函数,看看是否也存在这个问题并且该怎么解决
,
Galaxy Yue:
不好意思,点错了
我会尝试的,需要一些时间,谢谢
,
tang y:
好的、谢谢
,
Galaxy Yue:
SPI模块应将其添加到rfPacketTx.syscfg中,如图所示:
,
Galaxy Yue:
只需将SPI模块添加到SysConfig中,您就会发现它确实可以编译。 我自己也尝试过。
它与 spiffsexternal 一起工作的原因是该模块已经初始化为通过 SPI 与外部 SPI 闪存进行通信。