主题中讨论的其他器件:C2000WARE
我从现有工程复制了一个新工程。 如果没有连接调试器、新项目不会从闪存中运行。 我现在重点介绍的一个不同之处是、旧项目具有映射文件中显示的"codestart"符号。 新项目缺少 codestart。
如何正确配置项目设置等、以便在未连接调试器的情况下从闪存启动?
有关到目前为止我所了解的内容的一些背景:
对于新工程、我使用的是 c2000ware\device_support\f2802x\common\ccs\Debug\driverlib.lib
使用 nm2000来显示符号表、此 driverlib.lib 副本具有 codestart 符号。 正如我说过的、它没有显示在项目的映射文件中。
旧工程和新工程之间的工程配置相同。 我可能缺少某些设置。
(由于我没有旧工程的所有构建文件、因此无法构建它。 被告知它是独立运行的)
在示例项目 example_f2802xLEDBlink 中、我看到一个用于指定入口点的设置、其中该示例项目将该设置为 CODE_START。 我在项目中进行了相同设置、然后出现错误:
说明资源路径位置类型
未解析的符号_c_int00、首次在 C:/ti/c2000/C2000Ware_MotorControl_SDK_4_02_00_00/c2000ware/device_support/f2802x/common/ccs/Debug/driverlib.lib 中引用 TitanCube _Ctrl_PC C/C++问题
我看到 Example_F2802xLEDBlink 在 链接器"文件搜索路径"下包含"rts2800_ml.lib"
我添加了 "rts2800_ml.lib"。 那么我收到一条警告:
说明资源路径位置类型
指定了"_c_int00"以外的入口点符号:"code_start" TitanCube 控制器_PC C/C++问题
新项目使用调试器运行、而现在没有调试器运行。
如果我现在删除"code_start"、警告将消失、但项目不再从闪存运行。
因此、将 CODE_START 重新添加到链接器设置中、我似乎有了解决方案、但为什么我会得到警告呢? 这样做的"正确方式"是什么?
谢谢!