目录
第1章芯片功能概述、软件介绍、项目流程管理研究
1.1TMS320F2812性能概述
1.2TMS320F2812结构概述
1.2.1引脚分布
1.2.2TMS320F2812 引脚信号描述
1.3TMS320F2812功能概览
1.3.1存储空间示意图
1.3.2简要描述
1.4 DSP集成环境CCS介绍
1.4.1CCS安装
1.4.2CCS配置软件设置
1.4.3CCS软件概述
1.4.4File(文件)菜单介绍
1.4.5Edit(编辑)菜单介绍
1.4.6View(视图)菜单介绍
1.4.7Project(工程)菜单介绍
1.4.8Debug(调试)菜单介绍
1.5CCS工程管理
1.5.1创建新的工程文件
1.5.2编译并运行程序
1.6一个简单的例子程序介绍
1.6.1基本的程序代码生成
1.6.2具体的程序开发介绍
1.7嵌入式项目开发流程管理
1.7.1概述
1.7.2项目启动
1.7.3项目计划
1.7.4项目研发
1.7.5项目结束
第2章C语言程序设计基础
2.1C语言数据结构及语法
2.1.1C语言数据结构
2.1.2C语言运算符与表达式
2.2程序控制结构
2.2.1if语句
2.2.2switch语句
2.2.3while语句
2.2.4for语句
2.2.5程序控制中的特殊运算符
2.3数组
2.4指针
2.5函数
2.6C语言编程规范
2.6.1环境
2.6.2语言规范
2.6.3字符类
2.6.4变量类型
2.6.5函数声明和定义
2.6.6变量初始化
2.6.7算法类型转换
2.6.8编程风格
第3章TMS320F2812外设的C语言程序设计
3.1导言
3.2传统的#define方法
3.3位定义和寄存器结构体定义方式
3.3.1定义寄存器结构体
3.3.2使用DATA_SECTION将寄存器结构体映射到地址空间
3.3.3添加位定义
3.3.4共同体定义
3.4位操作和寄存器结构体定义方式的优点
3.5对位或寄存器整体进行操作
3.6一个特殊的例子(eCAN控制寄存器)
第4章TMS320F2812系统控制及中断
4.1存储空间
4.1.1Flash存储器
4.1.2OTP存储器
4.1.3Flash和OTP寄存器
4.2时钟及系统控制
4.2.1时钟及系统控制概述
4.2.2外设时钟控制寄存器(PCLKCR)
4.2.3系统控制和状态寄存器(SCSR)
4.2.4高/低速外设时钟预定标寄存器(HISPCP/LOSPCP)
4.3振荡器及锁相环模块
4.4低功耗模式
4.5F2812外设结构
4.5.1外设结构寄存器
4.5.2受EALLOW保护的寄存器
4.6F2812外设中断扩展模块
4.6.1PIE控制器概述
4.6.2中断操作步骤
4.6.3向量表的映射
4.6.4中断源
4.6.5复用中断操作过程
4.6.6使能/禁止复用外设中断的程序步骤
4.6.7外设向CPU发出的复用中断请求流程
4.6.8PIE向量表
4.6.9PIE配置寄存器
4.6.10中断程序设计
4.7看门狗模块
4.7.1看门狗模块介绍
4.7.2看门狗计数寄存器(WDCNTR)
4.7.3看门狗复位寄存器(WDKEY)
4.7.4看门狗控制寄存器(WDCR)
4.7.5看门狗模块程序设计
4.832位CPU定时器
4.8.1TIMERxTIM寄存器
4.8.2TIMERxPRD寄存器
4.8.3TIMERxTCR寄存器
4.8.4TIMERxTPR寄存器
4.8.5定时器程序设计
4.9通用输入输出口(GPIO)
4.9.1GPIO介绍
4.9.2输入限制
4.9.3GPxMUX寄存器(功能选择寄存器)
4.9.4GPxDIR寄存器(方向控制寄存器)
4.9.5GPxDAT寄存器(数据寄存器)
4.9.6GPxSET寄存器(置位寄存器)
4.9.7GPxCLEAR寄存器(清除寄存器)
4.9.8GPxTOGGLE寄存器(取反触发寄存器)
4.9.9寄存器位与I/O引脚的映射
4.9.10GPIO程序设计
第5章TMS320F2812外部接口(XINTF)
5.1外部接口功能概述
5.2XINTF配置概述
5.2.1改变XINTF配置和时序寄存器的程序
5.2.2XINTF时钟
5.2.3写缓冲器
5.2.4XINTF每个区域访问的引导、激活、跟踪的时序
5.2.5XREADY信号采样
5.2.6区域切换
5.2.7XMP/MC信号对XINTF的影响
5.3引导、激活、跟踪等待状态的配置
5.4XINTF寄存器
5.4.1XINTF时序寄存器(XTIMINGx)
5.4.2XINTF配置寄存器(XINTCNFx)
5.4.3XBANK寄存器
5.5信号描述
5.6XINTF操作时序图
5.7XINTF应用开发及C语言程序设计
5.7.1XINTF应用开发概述
5.7.2XINTF模块的C语言程序设计
第6章TMS320F2812串行通信接口(SCI)
6.1SCI概述
6.1.1增强型SCI模块特点概述
6.1.2SCI模块框图
6.1.3SCI模块结构
6.2SCI模块寄存器
6.2.1寄存器概述
6.2.2SCI通信控制寄存器(SCICCR)
6.2.3SCI控制寄存器1(SCICTL1)
6.2.4SCI波特率选择寄存器(SCIHBAUD,SCILBAUD)
6.2.5SCI控制寄存器2(SCICTL2)
6.2.6SCI接收状态寄存器(SCIRXST)
6.2.7SCI接收数据缓冲寄存器(SCIRXEMU,SCIRXBUF)
6.2.8SCI发送数据缓冲寄存器(SCITXBUF)
6.2.9SCI FIFO寄存器(SCIFFTX,SCIFFRX,SCIFFCT)
6.2.10SCI优先级控制寄存器(SCIPRI)
6.3C语言程序设计
6.3.1SCI接口硬件设计
6.3.2程序中关于SCI的头文件的相关定义介绍
6.3.3串口自测试程序
6.3.4串口向主机发送数据程序
6.3.5串口中断接收程序
6.3.6串口中断发送、接收C程序
6.3.7自动波特率设定程序
6.4心得
第7章TMS320F2812的串行外围设备接口(SPI)
7.1增强型SPI概述
7.1.1SPI结构图
7.1.2SPI模块信号概述
7.2SPI模块寄存器概述
7.3SPI操作
7.3.1SPI操作介绍
7.3.2SPI模块主/从操作模式
7.4SPI中断
7.4.1SPI中断控制位
7.4.2数据格式
7.4.3波特率和时钟配置
7.4.4复位后系统状态
7.4.5数据传输实例
7.5SPI FIFO描述
7.6SPI控制寄存器
7.6.1SPI配置控制寄存器(SPICCR)
7.6.2SPI操作控制寄存器(SPICTL)
7.6.3SPI状态寄存器(SPISTS)
7.6.4SPI波特率寄存器(SPIBRR)
7.6.5SPI仿真缓冲寄存器(SPIRXEMU)
7.6.6SPI串行接收缓冲寄存器(SPIRXBUF)
7.6.7SPI串行发送缓冲寄存器(SPITXBUF)
7.6.8SPI串行数据寄存器(SPIDAT)
7.6.9SPI FIFO发送寄存器(SPIFFTX)
7.6.10SPI FIFO接收寄存器(SPIFFRX)
7.6.11SPI FIFO控制寄存器(SPIFFCT)
7.6.12SPI优先级控制寄存器(SPIPRI)
7.7SPI实例波形
7.8SPI模块的C语言程序设计
7.8.1SPI模块的发送接收程序设计
7.8.2SPI自测程序
7.8.3SPI中断发送、接收程序
7.9SPI接口的应用设计(ADS1256)
第8章TMS320F2812增强型区域控制网络(eCAN)模块
8.1eCAN模块体系结构
8.1.1eCAN模块概述
8.1.2eCAN网络和模块
8.1.3eCAN控制器
8.1.4消息对象
8.1.5消息邮箱
8.2eCAN模块的寄存器
8.2.1邮箱使能寄存器(CANME)
8.2.2邮箱数据方向寄存器(CANMD)
8.2.3发送请求置位寄存器(CANTRS)
8.2.4发送请求复位寄存器(CANTRR)
8.2.5发送响应寄存器(CANTA)
8.2.6异常中断响应寄存器(CANAA)
8.2.7接收消息挂起寄存器(CANRMP)
8.2.8接收消息丢失寄存器(CANRML)
8.2.9远程帧挂起寄存器(CANRFP)
8.2.10全局接收屏蔽寄存器(CANGAM)
8.2.11主控寄存器(CANMC)
8.2.12位时序配置寄存器(CANBTC)
8.2.13错误和状态寄存器(CANES)
8.2.14错误计数寄存器(CANTEC/CANREC)
8.2.15中断寄存器
8.2.16覆盖保护控制寄存器(CANOPC)
8.2.17eCAN I/O控制寄存器(CANTIOC、CANRIOC)
8.2.18定时器管理单元
8.2.19邮箱构成
8.2.20消息数据寄存器(CANMDL、CANMDH)
8.2.21接收过滤器
8.3eCAN模块配置及C程序开发
第9章TMS320F2812模/数转换(ADC)模块
9.1模拟/数字转换(ADC)模块
9.1.1模块特性
9.1.2自动转换排序器的工作原理
9.1.3双排序模式下的同步采样设计实例
9.1.4级联模式下的同步采样设计实例
9.1.5ADC时钟预定标器
9.1.6低功耗模式
9.1.7上电顺序
9.1.8参考电压校正(通过外部提供基准)
9.2ADC模块电压基准校正
9.2.1增益和偏移误差的定义
9.2.2增益和偏移误差的影响
9.2.3校准
9.2.4硬件设计
9.2.5ADC采样技术
9.3ADC模块寄存器
9.3.1ADC控制寄存器
9.3.2最大转换通道寄存器(MAXCONV)
9.3.3自动排序状态寄存器(ADCASEQSR)
9.3.4ADC状态和标志寄存器(ADCST)
9.3.5ADC输入通道选择排序控制寄存器(CHSELSEQn)
9.3.6ADC转换结果缓冲寄存器(ADCRESULTn)
9.4ADC模块配置及C语言程序开发
第10章TMS320F2812事件管理器(EV)模块
10.1事件管理器概述
10.1.1EV功能概述
10.1.2增强EV特性
10.1.3EV寄存器地址
10.1.4GP定时器
10.1.5使用GP定时器产生PWM信号
10.1.6比较单元
10.2PWM电路
10.2.1与比较单元相关联的PWM电路
10.2.2PWM波形产生
10.3捕获单元
10.3.1捕获单元概述
10.3.2捕获单元操作
10.3.3捕获单元FIFO堆栈
10.3.4捕获中断
10.3.5QEP电路
10.4EV中断
10.4.1EV中断概述
10.4.2EV中断请求和服务子程序
10.4.3中断产生
10.4.4中断向量
10.5EV寄存器
10.5.1定时器寄存器
10.5.2比较器控制寄存器
10.5.3比较行为控制寄存器
10.5.4捕获单元寄存器
10.5.5EV中断标志寄存器
10.5.6EV控制寄存器
10.6C程序设计
10.6.1PWM波形产生程序
10.6.2EV GP定时器程序
第11章Boot ROM介绍和F2812程序仿真与下载
11.1Boot ROM概述
11.1.1XMPNMC对Boot ROM的影响
11.1.2片内ROM介绍
11.2CPU中断向量表
11.3Bootloader的特性
11.3.1Bootloader的功能操作
11.3.2Bootloader的配置
11.3.3Bootloader的模式
11.3.4Bootloader的数据流结构
11.3.5基本的传输程序
11.3.6InitBoot汇编程序
11.3.7模式选择功能
11.3.8串口(SCI)下载模式
11.3.9并行GPIO口下载模式
11.3.10SPI下载模式
11.3.11ExitBoot汇编程序
11.4C语言程序设计
11.4.1F2812_Boot.h
11.4.2SelectMode_Boot.c(模式选择)
11.4.3SCI_Boot.c(SCI下载模式)
11.4.4Parallel_Boot.c(并行I/O口下载模式)
11.4.5SPI_Boot.c(SPI口下载模式)
11.5F2812程序仿真与下载
11.5.1从内部Flash运行应用程序
11.5.2从内部RAM运行应用程序
第12章基于TMS320F2812的电气平台开发设计
12.1核心处理系统
12.2数/模转换(DAC)设计
12.2.1硬件设计
12.2.2软件设计
12.3SRAM设计
12.3.1硬件设计
12.3.2软件设计
12.4E2PROM(I2C)设计
12.4.1硬件设计
12.4.2软件设计
12.5RS232(串口)设计
12.5.1硬件设计
12.5.2软件设计
12.6RS485设计
12.6.1硬件设计
12.6.2软件设计
12.7CAN模块设计
12.7.1硬件设计
12.7.2软件设计
12.83.3V和5V数字I/O设计
12.9液晶设计
12.10实时时钟(DS1302)设计
12.10.1概述
12.10.2软件设计
12.11平台调试中的常见问题解答
附录μC/OSⅡ操作系统在F2812上移植及实时多任务管理
参考文献