第1部分嵌入式系统入门导引第1章概述
1.1嵌入式系统的含义与发展历史
1.1.1嵌入式系统与单片机
1.1.2MCU的发展简史
1.1.3MCU在我国的应用与教学概况
1.2嵌入式系统常用术语
1.2.1与硬件相关的术语
1.2.2与通信相关的术语
1.2.3与功能模块相关的术语
1.2.4与嵌入式软件相关的术语
1.3嵌入式系统开发方法导引
1.3.1嵌入式产品的一般构成
1.3.2嵌入式产品的一般开发方法
1.4嵌入式系统的特点与学习建议
1.4.1嵌入式系统的特点
1.4.2嵌入式系统的学习建议
练习题
第2章Freescale HC08/S08/RS08 MCU概述
2.108系列单片机简介
2.1.1Freescale单片机的命名规则
2.1.208系列单片机资源简介
2.2HC08系列单片机
2.2.1MC908GP32单片机的性能概述
2.2.2内部结构简图与引脚功能
2.2.3GP32最小系统
2.2.4GP32存储器组织
*2.3HCS08系列单片机
2.3.1HCS08系列MCU的基本特征
2.3.2MC9S08GB60的内部结构简图与引脚功能
2.3.3GB60存储器组织
*2.4RS08系列单片机
2.4.1RS08系列MCU的基本特征
2.4.2MC9RS08KA2的内部结构简图与引脚功能
2.4.3KA2存储器组织
*2.5进一步讨论
2.5.1内存大端、小端排序问题
2.5.2嵌入式系统MCU的选择问题
练习题
第3章HC08/S08/RS08 CPU
3.1HC08 CPU基本构成
3.2寻址方式
3.3指令系统
3.3.1数据传送类指令
3.3.2算术运算类指令
3.3.3逻辑运算类指令
3.3.4位操作类指令
3.3.5移位类指令
3.3.6程序控制类指令
3.3.7其他指令
*3.4HCS08 CPU与HC08 CPU的比较
*3.5RS08 CPU简介
3.5.1RS08 CPU和RAM的寄存器
3.5.2RS08分页方案
3.5.3RS08的寻址方式
3.5.4RS08的子程序调用
3.5.5RS08的指令集
3.608汇编语言基础
3.6.108汇编源程序格式
3.6.208伪操作指令
练习题
第4章通用I/O接口及第一个汇编工程
4.1通用I/O接口的基本概念及连接方法
4.2MC908GP32的通用I/O
4.2.1A口
4.2.2B口
4.2.3C口、D口和E口
4.3汇编工程文件组织与第一个汇编入门程序
*4.4进一步讨论
4.4.1I/O口的输入和输出电流
4.4.2端口上拉问题
练习题
第5章08C语言及第一个08C工程
5.1标准C语言的基本语法
5.1.1数据类型
5.1.2运算符
5.1.3流程控制
5.1.4函数
5.1.5指针
5.1.6结构体
5.1.7共用体
5.1.8位域
5.1.9编译预处理
5.1.10用typedef定义类型
5.208C语言的使用
5.2.1寄存器和I/O口的使用
5.2.2位操作方法
5.2.3中断处理
5.2.408C的常用库函数
5.2.508C语言与汇编语言的混合编程
5.2.608C与标准C的其他不同之处
5.308C工程文件组织
*5.4进一步讨论
5.4.1变量的定义
5.4.2变量存储空间分配
5.4.3数据类型的选用
5.4.4位操作的其他实现方法
5.4.5算法设计问题
练习题
第2部分嵌入式系统的基础应用
第6章源程序编译及调试
6.1MTIDE集成开发套件
6.1.1硬件平台
6.1.2软件概述
6.2MTIDE集成开发环境的使用
6.2.1运行第一个汇编工程实例
6.2.2编译过程中产生的文件
6.2.3新建一个汇编工程
6.2.4运行第一个C工程实例
*6.3CodeWarrior软件简介
6.3.1CodeWarrior的安装
6.3.2新建工程
6.3.3编译、链接与仿真调试
*6.4进一步讨论
6.4.1MCU中Flash程序的保密机制
6.4.2验证MCU中程序的正确性
练习题
第7章串行通信接口(SCI)
7.1异步串行通信的基础知识
7.1.1基本概念
7.1.2RS232C总线标准
7.2电平转换电路与SCI通用编程原理
7.2.1SCI的外围硬件电路
7.2.2SCI的基本编程原理
7.3GP32 SCI模块寄存器
7.4串行口初始化与收发编程的基本方法
7.5串行通信通用函数与测试实例
7.5.1串行通信子函数
7.5.2查询方式工程文件
7.5.3中断方式工程文件
7.5.4通过PC方程序调试串行通信
*7.6串行通信进一步讨论
7.6.1唤醒功能
7.6.2协议和控制流问题
7.6.3用通用I/O接口模拟SCI接收数据
练习题
第8章键盘
8.1键盘基本问题与GP32的键盘中断口
8.1.1键盘模型及接口
8.1.2键盘的基本问题
8.1.3MC908GP32单片机的键盘中断模块
8.2汇编语言键盘中断模块编程实例
8.2.1按键识别与键盘定义子程序
8.2.2键盘中断编程举例
8.308C语言键盘中断模块编程实例
8.3.1按键识别与键盘定义函数
8.3.2键盘中断编程08C语言举例
练习题
第9章LCD与LED编程
9.1数码管编程实例
9.1.1扫描法LED显示编程原理
9.1.2接口实例
9.1.3数码管汇编语言实例
9.1.4数码管08C语言实例
9.2LCD概述
9.2.1LCD的特点
9.2.2LCD的分类
9.3点阵字符型LCD的接口特性
9.3.1点阵字符型液晶显示模块的基本特点
9.3.2HD44780的引脚与时序
9.3.3HD44780的编程结构
9.3.4HD44780的指令集
9.4点阵字符型LCD编程实例
9.4.1LCD汇编编程工程实例
9.4.2LCD 08C编程实例
练习题
第10章SPI与模拟量转换
10.1SPI的基本工作原理
10.1.1SPI概述
10.1.2SPI的数据传输
10.1.3SPI模块的时序
10.2GP32的SPI模块编程基础
10.2.1SPI模块的引脚
10.2.2SPI模块的寄存器
10.2.3SPI编程基本方法
10.3A/D和D/A转换的基本问题
10.4MC908GP32内部A/D转换模块
10.4.1GP32 A/D转换模块寄存器
10.4.2A/D转换模块的基本编程方法
10.5GP32 MCU A/D转换编程实例
10.5.1A/D转换08C语言编程实例
10.5.2A/D转换汇编语言编程实例
*10.6利用SPI进行高位A/D芯片的扩展
10.6.1A/D芯片TLC2543概述
10.6.2SPI模块与TLC2543的接口扩展
*10.7利用SPI进行高位D/A芯片的扩展
10.7.1D/A芯片TLV5608概述
10.7.2SPI模块与TLV5608的接口实现
10.7.3扩展D/A的程序实现
*10.8常用传感器及采样电路简介
练习题
*第11章GB60的IIC模块及其应用
11.1IIC总线概述
11.2IIC总线工作原理
11.3GB60的IIC模块的编程基础
11.3.1GB60 IIC模块寄存器
11.3.2GB60 IIC模块编程
11.4IIC应用实例——GB60与PCF8563时钟芯片通信
11.4.1PCF8563芯片简介
11.4.2MCU使用专门的IIC模块与PCF8563时钟芯片通信
练习题
第12章定时接口模块
12.1计数器/定时器的基本工作原理
12.1.1实现计数与定时的基本方法
12.1.2MC908GP32 MCU的定时接口的基本原理概述
12.2定时器模块的编程基础
12.2.1定时器模块的3个基本寄存器
12.2.2定时溢出中断汇编工程实例
12.2.3定时溢出中断08C工程实例
*12.3定时器模块的输入捕捉功能
12.3.1输入捕捉的基本含义
12.3.2输入捕捉的寄存器
12.3.3输入捕捉中断编程实例
*12.4定时器模块的输出比较功能
12.4.1输出比较的基本含义
12.4.2输出比较寄存器
12.4.3不带缓冲输出比较与带缓冲的输出比较
12.5定时器模块的脉宽调制输出功能
12.5.1脉冲宽度调制器PWM
12.5.2用定时器实现PWM
12.5.3不带缓冲脉宽调制输出与带缓冲脉宽调制输出
12.5.4PWM 08C工程实例
12.5.5PWM汇编工程实例
练习题
第13章Flash存储器
13.1Flash存储器概述与编程模式
13.1.1Flash存储器的基本特点与编程模式
13.1.2HC08系列单片机Flash存储器的特点与编程模式
13.2MC908GP32单片机Flash存储器编程方法
13.2.1Flash存储器编程的基本概念
13.2.2Flash存储器的编程寄存器
13.2.3Flash存储器的编程过程
13.3GP32单片机Flash在线编程汇编语言实例
13.3.1Flash存储器的擦除及写入汇编子程序
13.3.2Flash存储器在线编程汇编主程序及PC方程序
13.4GP32单片机Flash在线编程08C语言实例
*13.5HCS08系列单片机Flash编程方法
13.5.1Flash存储器的编程寄存器
13.5.2Flash存储器的编程过程
13.5.3Flash存储器的安全性
练习题
第14章其他功能模块
14.1CONFIG寄存器
14.2时钟发生模块与锁相环
14.2.1PLL锁相环
14.2.2GP32的CGM结构及外部连接
14.2.3CGM的编程基础
14.2.4PLL参数计算与编程步骤
14.2.5初始化及PLL编程实例
14.3中断
14.3.1中断源与中断向量地址
14.3.2IRQ引脚中断
14.3.3断点模块BRK与软件中断SWI指令
14.4复位与系统集成模块
14.4.1复位
14.4.2系统集成模块
14.5低功耗模式与看门狗功能
14.5.1低功耗模式
14.5.2系统正常操作监视模块
练习题
第3部分嵌入式系统应用实例
*第15章实际应用系统设计实例
15.1应用系统概要
15.1.1应用系统概要
15.1.2应用系统需求分析
15.1.3应用系统设计分析
15.2硬件设计
15.2.1芯片选型
15.2.2设计框图
15.2.3MCU引脚汇总列表
15.2.4各模块硬件分析与设计
15.3软件设计
15.3.1编写硬件驱动程序注意点
15.3.2各模块头文件
15.3.3各模块子程序的前导注释
练习题
*第16章JB8的USB 1.1模块与应用实例
16.1USB概述
16.2USB系统基本概念
16.2.1USB主机
16.2.2USB设备
16.3USB物理特性
16.3.1USB接口
16.3.2USB信号
16.3.3检测设备连接和速度
16.4USB的通信协议
16.4.1包
16.4.2信息包格式
16.4.3事务
16.4.4USB传输类型
16.4.5设备列举
16.5JB8 USB模块的编程方法
16.5.1MC68HC908JB8简介
16.5.2USB功能模块
16.5.3USB寄存器
16.5.4USB中断
16.5.5JB8 USB 1.1通信编程
16.6PC方USB 1.1编程实例
16.6.1PC方USB 1.1编程步骤
16.6.2PC方USB 1.1 VB编程实例
练习题
*第17章GZ60的CAN模块及应用实例
17.1CAN技术规范
17.1.1CAN的基本概念
17.1.2报文传输和帧结构
17.1.3位定时与同步
17.2MSCAN08模块
17.2.1MSCAN08特性
17.2.2外部引脚
17.2.3报文存储结构
17.2.4标识符校验滤波
17.2.5中断
17.2.6协议保护
17.3MSCAN08通信接口硬件电路
17.4MSCAN08模块的编程结构
17.4.1缓冲区结构
17.4.2控制寄存器
17.5CAN通信子函数与测试实例
17.5.1CAN通信子函数
17.5.2CAN总线通信回环工作方式测试工程文件
17.5.3CAN总线接口正常工作方式测试工程文件
练习题
附录A寄存器及中断向量表
A.1GP32寄存器及中断向量表
A.2GB60寄存器及中断向量表
附录BCPU08按字母索引的指令系统
附录CHC08标准头文件实例
C.1GP32汇编语言用头文件
C.2GP32 08C语言用头文件附录D08C函数库附录EFreescale常用封装形式及实际大小附录F苏州大学Freescale嵌入式系统实验室已有核心板及评估板附录G本书配套教学资料目录结构参考文献