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.
大家好、
感谢您发表文章、介绍如何在 CCS V12.2中使用 CCS V3.3旧工程以及包含在 C:/ti 目录中的 XDAIS 文件夹更新。
这已经解决了我使用旧类型 DSP 的问题、使我的程序生成和生成.out 文件。 现在、我有以下问题:
您好、Venkatesh、
[引用 userid="548043" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1192934/tms320f2811-tms320f2811 ]通过升级到 CCS V12.2下的新 DSP 器件来查找开发相同程序。 如何迁移?[/quot]请查看此链接、了解如何将旧版 CCS 工程迁移到基于 Eclipse 的 CCS。
https://www.ti.com/lit/pdf/spracr4
[引用 userid="548043" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1192934/tms320f2811-tms320f2811 ]目前、我在 CCS V3.3中开发的现有程序包含多个.c 文件、但它在 BINARIES 文件夹下生成一个.out 文件。 作为 CCS 的新工具、如何使用多个.c 文件开发 CCS 程序、以便所有合并的.c 文件执行都将反映在单个.out 文件中?复制项目中的所有.c 文件。 默认情况下、它将在工程文件夹中编译所有.c 文件。 如果工程文件夹中有任何.c 文件、但您不想编译、请选择该文件、右键单击并选择"从编译中排除"。
[引用 userid="548043" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1192934/tms320f2811-tms320f2811 ]我们的原理图中不包含调试探针、然后介绍了如何在没有调试探针的情况下进行编程、因为我学习了使用调试探针进行 DSP 编程(将 LAUNCHXL-F280049C 与 XDS 110调试探针结合使用)您需要将 JTAG 信号带到接头、然后使用外部调试器进行连接。 有关详细信息、请参阅 controlCARD 原理图。
[引用 userid="548043" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1192934/tms320f2811-tms320f2811 "]是的、请遵循迁移指南和 CCS 用户指南。
https://software-dl.ti.com/ccs/esd/documents/users_guide/index_getting-started.html
CCS 将自动完成链接。
此致、Santosh
您好、Santosh、
感谢您的快速回复。
请指明回复的控制卡原理图。
[引用 userid="35062" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1192934/tms320f2811-tms320f2811/4495808 #4495808"]有关详细信息、请参阅 controlCARD 原理图。此致、
Venkatesh
Venkatesh、
如果这是新设计、我强烈建议您从第3代系列中选择器件。 这些器件对 IP 具有更丰富的支持、改进了外设、价格更便宜、并且更好地支持工具链。 请查看 C2000产品系列并相应地选择器件。
https://www.ti.com/microcontrollers-mcus-processors/c2000-real-time-control-mcus/overview.html
接头本身位于扩展坞上、但信号是来自 controlCARD 的路由器。 您可以为您的器件选择 controlCARD、然后选择相应的兼容集线站。 这些原理图在 C2000Ware SDK 中提供。
此致、Santosh
您好、Santosh、
完成建议的文档、尤其是下面的链接
software-dl.ti.com/.../ccs_legacy-project-import.html
建议的摘要如下:
如上例所示、旧版导入向导远不完美。 在某些情况下、从头开始创建新的 CCS Eclipse 工程实际上更容易、而不必手动清理导入向导尝试迁移的结果。 无论在哪种情况 下、强烈建议执行迁移的人员既要精通原始项目、又要精通 CCSv3.3和新的 CCS Eclipse 环境。 拥有所有这些专业知识的人员将能够确保以最少的麻烦/工作量成功迁移项目。
基于上述标准、并在考虑"传统导入向导远不完美"时了解 V3.3和 V12.2等。 在某些情况下、从头开始创建新的 CCS Eclipse 项目实际上更容易"、
期待使用适合我的旧 DSP TMS320F2810功能的新 DSP 器件 TMS329F28377S 从头开始创建新的 CCS Eclipse 项目。
现在、我的查询是:
如何通过组合.c、.h、.pp 文件并创建一个新的.out 作为一个公共文件来计算项目文件夹的比率、该文件将组合多个.c 文件的所有算法、这些算法可以复制到一个新的项目文件夹中?
如何开始接受培训、学习如何使用新的 CCS V12.2从旧 DSP 迁移到新 DSP? 准备好学习并投入所需时间。
您好、Santosh、
下面是在实验 LAUNCHXL-F280049C 时获得的经验/观察结果
上面的表示为了构建和运行一个项目、我只需要一个包含 void main (void)指令的.c 文件
plz 指导我在何处以及如何使用多个.c 文件构建工程。
或
这个 CCS V12.2是否只接受单个.c 文件?
Venkatesh、
我对您遇到的问题感到非常惊讶。 在我们进一步探讨之前、您能否从控制台窗口向我发送生成日志?
此致、Santosh
Santosh、
从目录 C:\Users\\workspace_v12\.metadata\.plugins\org.eclipse.cdt.dsf.ui 复制的控制台窗口的 PFA 生成日志
Santosh、
PFA 迁移到 CCS V12.1后旧工程的 Project Explorer 屏幕截图。 此外、plz 建议使用其他文件 DSP281x_Adc.h 等许多文件。 我认为这些都是 TI 提供的文件。 但是、现在在 CCS V12中、在学习了许多视频或教程或用户指南等之后、没有提到要在 Project Explorer 中导入和合并的这些文件。 此外、在 C2000 ware 下的 LAUNCHXL-F280049C 文件夹中提供的示例中找不到这些文件。 在学习过程中、作为初学者会感到困惑。 我的问题可能看起来很愚蠢、但作为一个新手、请原谅我。
Venkatesh、
您似乎正在为两个不同的器件混合文件。 你不能这么做。 寄存器定义和存储器映射、IP 类型不同。 这不奏效。
在 C2000Ware SDK 中、有两种编程方式。
请注意、它是指同一器件。 您不能混合使用这些器件、否则由于我之前提到的原因、您将会遇到很多问题。
基于位字段的方法使您可以访问每个寄存器的位级控制。 但是、首选基于 DriverLib 的方法。 它是一组 API、您只需调用 API 即可。 driverlib/示例说明了 API 的使用。
现在回到如何将旧示例移植到更新的器件。 请检查 driverlib 文件夹中的示例。 应该有一个使用 DriverLib 的相应示例。 请参阅该示例、您只需将.c 文件放入您的项目中、它就会生成。
希望它能帮助您取得进展。
此致、Santosh
Santosh、
这是一个快速反馈、无需对所有细节进行详细阐述(作为初学者)。
从 C2000器件中找到 DAC 项目"buffdac_ex1_enable.c"。 由于连接到 LAUNCHXL_F280049C launchad 后、工程编译成功。
但是、在从旧工程 dac.c 复制文件后、在复制相关的.h 文件后、程序要求这样的.h 文件丢失。 已将这些文件复制到器件文件夹中。
来自控制台窗口的 PFA 生成日志、有许多错误。 再次感到困惑、似乎不太容易 从旧 CCS 迁移到新 CCS。
plz 引导我成为新的初学者、让我了解 everything.e2e.ti.com/.../ex2_5F00_buffdac_5F00_ex1_5F00_enable.build.log
Venkatesh、
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第48行:警告#48-D:宏"EINT"的不兼容重新定义(在"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpu.h"的第75行声明)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第49行:警告#48-D:宏"DINT"的不兼容重新定义(在"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpcpu.h"的第82行声明)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第50行:警告#48-D:宏"ERTM"的不兼容重新定义(声明在"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpu.h"的第89行)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第51行:警告#48-D:宏"DRTM"的不兼容重新定义(在"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpcpu.h"的第96行声明)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第52行:警告#48-D:宏"EALLOW"的不兼容重新定义(声明位于"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpcpu.h"的第104行)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第53行:警告#48-D:宏"EDIS"的不兼容重新定义(在"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cpu.h"的第115行声明)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h、第54行:警告#48-D:宏"ESTOP0"的重新定义不兼容(声明位于"C:\ti\c2000\C2000Ware_4_02_00_00\driverlib\f28004x\driverlib\cPU .h"的第125行)
"C:/Users/vtkon/workspace_v12a/ex2_buffdac_ex1_enable/device/DSP281x_Device.h "、
看起来您没有彻底阅读我的上一篇文章。 您已从旧设备复制文件。 您无法混合来自两个不同设备的特定于设备的文件。 您需要对 f28004x 使用特定于器件的文件。
C:/ti/c2000/C2000Ware_4_02_00_00/device_support/f28004x/headers/include/f28004x_device.h
您为什么需要包含此内容? 您没找到 DriverLib 函数吗?
此致、Santosh
Santosh、
在项目目录中执行"Add Files" f28004x_device.h 后、PFA LOG_Build frpm 控制台窗口
e2e.ti.com/.../ex3_5F00_buffdac_5F00_ex1_5F00_enable.build.log
下面是 Project Explorer 的相关屏幕截图
Venkatesh、
您仍在使用旧设备中的文件。 您将需要手动将其移植到函数中。 查看函数、然后检查相应的 DriverLib API。 您无法直接 复制这些旧设备文件。 这是您需要完成的操作。
此致、Santosh
Santosh、
仍然是初学者(我可能会花更多的时间、但学习正在改进)、添加用于从 C:\ti\c2000Ware_4_02_00\device_support\f28004x\headers\include 和 C:\ti\c2000Ware_4_02_00\device_00\f28004x\common 和 c2000Ware\f2800_4\common \f28004x\s\c2000Ware\common 和 c2000Ware\common_00_support\f2800_4\f00_\con_support\f28004x\common 和 c2000Ware\common 文件
现在、我会得到大部分误差、如所示
"./buffdac_ex1_enable.c"、第110行:错误#20:标识符"upsinging_ratio"未定义
"./buffdac_ex1_enable.c"、第130行:错误#20:标识符"GpioMuxRegs"未定义
"./buffdac_ex1_enable.c"、第133行:错误#20:标识符"SysCtrlRegs"未定义
"./buffdac_ex1_enable.c"、第135行:错误#20:标识符"PieVectTable"未定义
"./buffdac_ex1_enable.c"、第141行:错误#20:标识符"McbspaRegs"未定义
"./buffdac_ex1_enable.c"、第192行:错误#20:标识符"PieCtrlRegs"未定义
"./buffdac_ex1_enable.c"、第192行:错误#20:标识符"M_int4"未定义
"./buffdac_ex1_enable.c"、第194行:错误#20:标识符"M_INT2"未定义
"./buffdac_ex1_enable.c"、第223行:错误#20:标识符"McbspaRegs"未定义
"./buffdac_ex1_enable.c"、第232行:错误#20:标识符"EvaRegs"未定义
"./buffdac_ex1_enable.c"、第236行:错误#20:标识符"GpioDataRegs"未定义
"./buffdac_ex1_enable.c"、第240行:错误#20:标识符"EvaRegs"未定义
"./buffdac_ex1_enable.c"、第246行:错误#20:标识符"Bit7"未定义
"./buffdac_ex1_enable.c"、第249行:错误#20:标识符"PieCtrlRegs"未定义
"./buffdac_ex1_enable.c"、第249行:错误#20:标识符"PIEACK_group2"未定义
"./buffdac_ex1_enable.c"、第257行:错误#20:标识符"EvaRegs"未定义
大部分都是与雷斯有关的… 这些是在我的旧 dac.c 中定义的、并且逐步函数被复制到新的"buffdac_ex1_enable.c"中
在我的旧项目中、'SP281x_ev.h'文件"struct eva_regs"的定义如所示、如所附的屏幕截图所示。
现在,查询...... 如何在新项目中定义这些包含多个错误的寄存器? 定义位置? 流程是什么? (我知道在学习后、我可以获得大量的文档读数和经验、但在这个阶段、它可能看起来很愚蠢、但我需要您的指导才能更有效地学习、Plz 帮助和支持。 我们会朝着正确的方向解决问题。 非常感谢您向像我这样的初学者提供系统帮助。
现在、我已经得到了有关 DSP281x_的上一个问题的答案。。。 文件包含在我的旧项目中。 现在、我知道如何在特定器件的项目目录中添加此类文件。 很棒的结构和帮助 非常感谢!!
e2e.ti.com/.../4338.ex3_5F00_buffdac_5F00_ex1_5F00_enable.build.log
Venkatesh、
请导入基于位域的示例、然后检查代码如何使用寄存器和位。 如果您仔细查看该示例、您应该能够了解如何将寄存器包含在项目中。
我以前曾提到过,但我想 再次重申。
最好先了解 DriverLib 示例。 从最接近您的最终应用的示例开始、添加一个函数(您可以添加新的 C 文件)。 您可以查看 IP 的头文件、如(DAC、ADC、epmw)。 不要只复制头文件和 c 文件、然后构建。 只需包含#include
,一切都应该在路径中。您可以查看此页面以了解我们拥有的文档。
此致、
桑托什
Santosh、
很抱歉、我父亲已过期、我正在休假、所以没有向您提供反馈。
我将研究所有与你分享的材料,并返回给你,以解决任何困难。
请多多包涵。
此致、
Venkatesh
Venkatesh、
我对这一损失感到非常抱歉,为他的安息祈祷。 请照顾您的家人。
我将关闭此主题、当您浏览所有详细信息并提出进一步的问题时、请创建新主题、我们将确保您获得在项目中取得进展所需的帮助。
此致、Santosh
Santosh、
感谢您的善意考虑。
Venkatesh