ZHCU861A March   2021  – August 2022 TM4C1230C3PM , TM4C1230D5PM , TM4C1230E6PM , TM4C1230H6PM , TM4C1231C3PM , TM4C1231D5PM , TM4C1231D5PZ , TM4C1231E6PM , TM4C1231E6PZ , TM4C1231H6PGE , TM4C1231H6PM , TM4C1231H6PZ , TM4C1232C3PM , TM4C1232D5PM , TM4C1232E6PM , TM4C1232H6PM , TM4C1233C3PM , TM4C1233D5PM , TM4C1233D5PZ , TM4C1233E6PM , TM4C1233E6PZ , TM4C1233H6PGE , TM4C1233H6PM , TM4C1233H6PZ , TM4C1236D5PM , TM4C1236E6PM , TM4C1236H6PM , TM4C1237D5PM , TM4C1237D5PZ , TM4C1237E6PM , TM4C1237E6PZ , TM4C1237H6PGE , TM4C1237H6PM , TM4C1237H6PZ , TM4C123AE6PM , TM4C123AH6PM , TM4C123BE6PM , TM4C123BE6PZ , TM4C123BH6PGE , TM4C123BH6PM , TM4C123BH6PZ , TM4C123FE6PM , TM4C123FH6PM , TM4C123GE6PM , TM4C123GE6PZ , TM4C123GH6PGE , TM4C123GH6PM , TM4C123GH6PZ , TM4C123GH6ZXR , TM4C1290NCPDT , TM4C1290NCZAD , TM4C1292NCPDT , TM4C1292NCZAD , TM4C1294KCPDT , TM4C1294NCPDT , TM4C1294NCZAD , TM4C1297NCZAD , TM4C1299KCZAD , TM4C1299NCZAD , TM4C129CNCPDT , TM4C129CNCZAD , TM4C129DNCPDT , TM4C129DNCZAD , TM4C129EKCPDT , TM4C129ENCPDT , TM4C129ENCZAD , TM4C129LNCZAD , TM4C129XKCZAD , TM4C129XNCZAD

 

  1.   请先阅读
    1.     关于本手册
    2.     术语表
    3.     德州仪器 (TI) 提供的相关文档
    4.     支持资源
    5.     商标
  2. 1TivaWare SDK 简介
    1. 1.1 TivaWare SDK 文件夹细目分类
  3. 2TivaWare 示例工程
    1. 2.1 TivaWare 开发板示例
    2. 2.2 TivaWare 外设示例
    3. 2.3 如何将示例工程导入 CCS
  4. 3在 Code Composer Studio 中将文件和库关联到 TivaWare 工程中
    1. 3.1 在 CCS 中链接文件
    2. 3.2 在 CCS 中链接库
  5. 4如何调试 TivaWare 库
    1. 4.1 如何引导 Code Composer Studio 找到源文件
    2. 4.2 如何重新构建 TivaWare 库
  6. 5如何将 TivaWare 添加到现有 CCS 工程中
    1. 5.1 路径变量
    2. 5.2 包含路径
    3. 5.3 预定义变量
    4. 5.4 库链接
  7. 6TivaWare 引导加载程序
    1. 6.1 在 Code Composer Studio 中修改要用于引导加载的 TivaWare 工程
    2. 6.2 如何使用 LM 闪存编程器引导加载
  8. 7软件最佳做法
    1. 7.1 栈/堆设置和栈溢出
    2. 7.2 中断服务例程
      1. 7.2.1 最佳做法
      2. 7.2.2 TivaWare 矢量表和 IntDefaultHandler
    3. 7.3 TivaWare 硬件头文件
    4. 7.4 ROM 和 MAP TivaWare 前缀
  9. 8TM4C 资源
  10. 9修订历史记录

TivaWare 硬件头文件

合并示例或尝试将新功能添加到现有工程中之后,编译代码时发生的常见问题是出现诸如“未解析符号”错误等构建错误,如 Topic Link Label4.1所述。导致出现构建错误的情况有很多,该节仅介绍了一些基于 TivaWare API 的基本错误。在使用难以跟踪的基于硬件的声明时,也可能出现此类问题。

TM4C 硬件访问宏、寄存器偏移和硬件位字段的声明在一系列硬件头文件中提供。这些文件位于 TivaWare SDK 的 inc 文件夹中,文件名以“hw_”前缀开头。然后,TivaWare API 使用这些声明在寄存器编程级控制 MCU。尽管 TivaWare 为每种外设提供一系列 API,但在有些情况下,比如要优化进程速度或者在 API 未提供正确设置时,可能需要一些寄存器级编程调用。

大多数硬件头文件是特定于外设的,并包含与特定外设的寄存器相关的信息(偏移和位字段)。在接收信息(如需要解析的外设状态标志)时,应用中偶尔需要这些文件。如果添加了附加代码,并且未解析符号似乎是特定外设中的定义,请检查工程中是否包含外设的硬件头文件,或在 TivaWare 中搜索 inc 文件夹,以查看哪些文件包含该定义。

除了外设特定文件,有四个附加硬件头文件可提供更多通用声明:

必须在每个 TivaWare 工程中使用 hw_memmap.h 文件,因为它为访问的所有外设提供存储器基地址。这是唯一一个必需强制使用的硬件文件。

为了在 NVIC 矢量表中启用外设 ISR,hw_ints.h 文件包含所需的定义。使用 ISR 的任何 TivaWare 工程都需要此文件,最好始终包含此文件。

hw_nvic.h 文件为关于 NVIC 的一切提供定义。它包含在每个 TivaWare 工程的 startup_ccs 文件中,但如果应用程序代码需要使用任意 NVIC 特定定义(如使用引导加载程序应用时),那么还必须在应用程序文件中包含它。

hw_types.h 文件提供用于直接修改寄存器的宏命令。只有在应用程序代码中直接修改寄存器时,才需要使用此文件。