Part Number:TMS320F28377DOther Parts Discussed in Thread:CONTROLSUITE, C2000WARE
我在使用28377D,需要对flash进行操作,加载了并关联了“F021_API_F2837xD_FPU32.lib”这个库。但是编译的时候会提示"unresolved symbol Fapi_checkFsmForReady()”等告警。我的CCS版本是10.2.0,编译官方的demo代码是可以通过的。按照我的理解是没有有效的加载库函数。在项目里尝试过c2000 linker里面添加所在库的路径,也试过把项目放在和官方demo一样的文件夹以及和demo一样的添加配置,但是都会产生一样的提示。
不知道是哪里设置或者配置有问题,恳请知情人回复,谢谢!
user1088122:
我用的28069,库名字和路径如图,可以使用
,
Hawk Xiao:
我这边demo也可以,我把demo的文件组织方式换了,工程见附件,源文件为C:\ti\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Dual\flash_programming。更换组织方式后就无别解析到库函数了。
cpu01.zip
,
Green Deng:
正常情况确实只要工程中加入库,并且链接到库路径就可以了,因为你的工程是自己创建的,有没有测试过在官方提供的空例程中尝试添加api库?测试一下是否是你的工程设置有没有问题?
C:\ti\c2000\C2000Ware_3_04_00_00\device_support\f2837xd\examples\cpu1\empty_project
,
Hawk Xiao:
3276.cpu01.zip
我的工程不是新建的,是在demo的基础上改的,文件关联方式有变化,文件见附件。我用demo改一个还是有一样的错误。工程设置我没有额外修改。
,
Green Deng:
你好,这个问题我已经咨询其他工程师了,还请等待回复
另外你也可以先参考一下这份flashAPI使用指南,看看有没有什么地方遗漏的:C:\ti\c2000\C2000Ware_3_04_00_00\libraries\flash_api\f2837xd\docs
,
Hawk Xiao:
好的,谢谢!
,
Green Deng:
有没有在.c文件的开头添加#include F021_F2837xD_C28x.h?
另外,在工程设置的Include Options里面也要添加flashAPI的路径。
可以试一下上述两项措施后看看是否有效
,
Hawk Xiao:
都加载了的。
,
Green Deng:
还有一个问题就是Flash API 是否有从 Flash 复制到 RAM运行?
,
Hawk Xiao:
上传的这个版本屏蔽了CODE_SECTION,但是取消屏蔽也会有相同的错误告警。本身就是从demo基础上更改的,不同之处就是使用了C++语言,然后把文件的关联方式改变了。我用纯C++的工程也是有一样的问题。
,
Hawk Xiao:
找到原因了,因为用的是C++工程,需要在F021.h里面加入对C++的声明。
extern "C" {#endif
#ifdef __cplusplus}#endif
,
Green Deng:
额,你是怎么找到这个问题的。。。