快速入门篇 2
第1章 如何点亮一个LED 2
1.1 总体流程 2
1.2 安装及配置CGT工具 11
1.2.1 安装 12
1.2.2 系统环境变量配置 13
1.3 编写源文件 16
1.4 编写CMD文件 18
1.4.1 基本原理 18
1.4.2 C6748 CMD文件 21
1.5 编译 24
1.6 生成AIS文件 28
1.6.1 AIS文件 28
1.6.2 使用AISgen生成AIS文件 30
1.6.3 使用HexAIS生成AIS文件 42
1.7 烧写 46
第2章 Makefile文件 50
2.1 概述 50
2.2 配置环境变量 52
2.3 使用Makefile生成DSP应用程序 54
2.4 使用Makefile生成DSP静态库 59
第3章 CCS集成开发环境 67
3.1 为什么要使用集成开发环境 67
3.1.1 创建普通CCS工程 68
3.1.2 工程导入/导出 77
3.1.3 更改编译选项 81
3.1.4 更改链接选项 85
3.1.5 生成可执行文件 86
3.1.6 创建CCS静态库工程 88
3.1.7 工作集 89
3.2 CCS调试 92
3.2.1 建立仿真器与开发板连接 93
3.2.2 GEL文件 101
3.2.3 调试工程 104
3.2.4 加载程序或符号 106
3.2.5 查看变量、表达式及寄存器值 107
3.2.6 查看、导入/导出内存数据 110
3.2.7 设置/配置断点 114
3.2.8 单步调试 117
3.2.9 软件仿真模式 117
3.2.10 图形分析 119
3.2.11 图像分析 121
3.2.12 串口终端 124
3.2.13 测量代码执行时间 126
3.3 版本管理 127
3.3.1 Git概述 127
3.3.2 CCS Git插件使用 127
硬件概述篇 146
第4章 硬件设计 146
4.1 核心板硬件设计 146
4.2 底板硬件设计 152
C674x详解篇 186
第5章 中断 186
5.1 C674x中断控制器 186
5.2 中断向量表 188
5.3 事件 189
5.4 配置中断 192
5.5 中断相关寄存器 198
第6章 缓存 200
6.1 原理 200
6.2 C674x缓存架构 202
6.3 缓存配置 204
6.4 缓存一致性问题 208
外设开发篇 211
第7章 外设驱动库 211
7.1 StarterWare概述 211
7.2 目录结构 212
7.3 上位机需求 215
7.4 USB协议栈 216
7.5 网络协议栈 217
7.6 在RTOS(SYS/BIOS)中集成StarterWare驱动库 219
7.6.1 迁移StarterWare程序到SYS/BIOS的注意事项 219
7.6.2 GPIO_KEY例程从StarterWare到SYS/BIOS 221
第8章 GPIO 227
8.1 GPIO结构 227
8.2 引脚复用 228
8.3 GPIO使用方法 231
8.4 实例分析 232
第9章 UART 238
9.1 概述 238
9.2 串口结构 239
9.3 串口波特率产生 241
9.4 串口使用方法 242
9.5 串口EDMA事件支持 243
9.6 实例分析 243
第10章 EDMA3 250
10.1 概述 250
10.2 EDMA3结构 251
10.3 EDMA3传输类型 254
10.3.1 EDMA3传输数据块的定义 254
10.3.2 A同步传输 255
10.3.3 AB同步传输 256
10.3.4 A同步传输与AB同步传输的区别 257
10.4 EDMA3触发方式 258
10.5 参数RAM(PaRAM) 260
10.5.1 PaRAM的内容 260
10.5.2 PaRAM的更新 267
10.5.3 连接传输 269
10.6 事件、通道与PaRAM之间的映射关系 272
10.7 事件队列 273
10.8 EDMA3通道控制器区域与中断 273
10.8.1 EDMA3通道控制器区域 273
10.8.2 EDMA3中断 275
10.9 实例分析 277
第11章 EMIFA 288
11.1 EMIFA结构 288
11.2 EMIFA时钟控制 291
11.3 SDRAM控制器 291
11.3.1 SDRAM寻址 292
11.3.2 SDRAM常见命令 292
11.3.3 SDRAM读操作 294
11.3.4 SDRAM写操作 294
11.3.5 逻辑地址与EMIFA引脚之间的映射 295
11.4 异步控制器 296
11.4.1 EMIFA异步接口与异步设备的连接方式 296
11.4.2 EMIFA异步接口读操作 297
11.4.3 EMIFA异步接口写操作 299
11.5 EMIFA地址映射 300
11.6 实例分析 301
第12章 uPP 311
12.1 uPP结构 311
12.2 传输协议分析 312
12.3 实例分析 314
第13章 PRU 328
13.1 PRU结构 328
13.2 PRU内存映射 329
13.2.1 本地地址空间映射 329
13.2.2 全局地址空间映射 330
13.3 控制/状态寄存器 331
13.4 PRU中断控制器 335
13.4.1 中断映射 336
13.4.2 PRUSS系统事件 338
13.4.3 中断控制器配置 340
13.4.4 中断控制器寄存器 340
13.5 C语言开发PRU 343
13.5.1 新建PRU工程 343
13.5.2 使用仿真器加载并运行程序 351
13.5.3 使用DSP加载并运行程序 355
程序优化入门篇 358
第14章 程序优化 358
14.1 基本方法 358
14.2 优化算法函数 361
14.2.1 使用Intrinsics函数 361
14.2.2 使用针对C6000优化算法函数库 371
第15章 混合编程语言开发 377
15.1 使用C++语言 377
15.2 使用线性汇编语言 386
15.3 使用汇编语言 395
15.4 C++/C/线性汇编/汇编混合编程 406
附录 CCS安装及配置 408
参考文献 419