ZHCAF42 March   2025 MSPM0G3519

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2迁移前准备工作
    1. 2.1 CCS 版本对比
    2. 2.2 迁移前准备工作
  6. 3将代码移植至 CCS
    1. 3.1 移植准备
    2. 3.2 设置 CCS 环境
    3. 3.3 将源代码和文件导入 CCS
    4. 3.4 处理器件专属代码
    5. 3.5 针对 CCS 调整代码
    6. 3.6 构建和调试
  7. 4迁移后优化
  8. 5总结
  9. 6参考资料

迁移前准备工作

在开始迁移之前,请熟悉 IAR Embedded Workbench (EW) 和 Code Composer Studio 在工具链、项目管理和生态系统集成方面的差异。下面简要列举了这些差异。

  1. 工具链和编译器:IAR 使用专有编译器,而 CCS 通常使用 TI 的编译器(基于 GCC 或 Clang)或其他受支持的编译器。
    表 2-2 工具链和编译器的差异
    IAR EW CCS
    使用 IAR 专有编译器(适用于 ARM 的 ICCARM)。 为 TI 器件使用 TI Arm Clang(基于 LLVM/Clang)。
    为 defines 使用 --debug、-OH、-D 等标志。 使用不同的标志(例如、-g 表示 debug、--define=name 表示宏)。
    严格遵守 IAR 特有语法(例如 #pragma vector)。 需要与 TI 兼容的语法(例如 __attribute__((interrupt)))。
  2. 工程结构:IAR 和 CCS 具有不同的项目文件结构与配置。
    表 2-3 项目结构差异
    IAR EW CCS
    专有项目格式(.ewp、.eww)。 基于 Eclipse 的项目(.cproject、.project)。
    通过 GUI 或 .icf 链接器文件管理设置。 使用链接器命令文件 (.cmd) 和 Eclipse 风格的配置菜单。
    插件生态系统有限。 可通过 Eclipse 插件进行扩展(例如,TI Resource Explorer、GIT 集成)。
  3. 调试工具及硬件支持:CCS 集成了 TI 专属调试工具,这些工具可能不同于 IAR 的调试环境。
    表 2-4 调试和硬件支持差异
    IAR EW CCS
    丰富的第三方调试探针。 支持 TI 调试探针(XDS110 等)和第三方调试探针
    需要手动设置 HAL。 预先集成的 TI 库(例如 TI-RTOS、FreeRTOS)。
    有限的 RTOS 集成。 原生支持 TI-RTOS 和实时调试工具。
  4. 生态系统与集成:CCS 可免费使用,并且支持可帮助用户设计项目的多种工具。
    表 2-5 生态系统与集成差异
    IAR EW CCS
    免费功能有限,许可证须付费。 提供免费套餐,可选择付费升级。
    极少的供应商专属工具。 与 TI 工具(例如 UniFlash、SysConfig)紧密集成。
    通过 IAR 论坛提供社区支持。 强大的 TI 社区(E2E 论坛、详细的应用手册)。
  5. 编译和优化:CCS 支持多种优化级别,以满足不同要求。
    表 2-6 构建和优化差异
    IAR EW CCS
    因高度优化的代码而著称。 通过 TI 特有调优来平衡优化。
    通过 GUI 自定义构建步骤。 使用 Eclipse 或 Makefile 灵活定制构建。
    通过 .icf 分配静态内存。 动态链接器配置(.cmd 文件)。