第1章 单片机概论
1.1 单片机概念
1.2 单片机的开发方法
1.3 单片机的广泛选择
1.4 Freescale单片机
1.5 MC68HC11系列单片机
1.6 16位单片机
1.6.1 MC68HC12系列单片机
1.6.2 MC9S12系列单片机
1.7 双核单片机
1.7.1 双核单片机系列
1.7.2 使用CPU V1的双核单片机系列
1.7.3 使用CPU V2内核的S12X系列单片机
1.7.4 S12XE系列单片机
1.8 支持FlexRay通信协议的单片机
1.8.1 FlaxRay通信协议
1.8.2 S12XF系列单片机
1.9 S12XS系列单片机
1.10 8位单片机
1.10.1 HC08Q系列单片机
1.10.2 S08系列单片机
1.11 32位单片机
1.11.1 以68K、CPU32为CPU的32位单片机
1.11.2 以ColdFire为CPU的32位单片机
1.11.3 用于控制的以PowerPC为CPU的32位单片机
1.11.4 用于通信的以PowerPC为CPU的32位单片机
1.11.5 ARM系列32位单片机
1.11.6 M.Core(C.Core)
1.12 Freescale的DSP型单片机
1.12.1 普通16位DSP型单片机
1.12.2 使用增强型内核的16位DSP型单片机
1.12.3 StarCore系列DSP型16位单片机
1.12.4 24位的DSP型单片机
1.13 相关软件开发工具
1.14 单片机中的新技术
第2章 单片机基础知识
2.1 数的表示
2.2 从门电路到逻辑运算单元
2.2.1 与非门和或非门
2.2.2 三态门
2.2.3 与门和或门
2.2.4 异或门
2.2.5 组合逻辑电路
2.2.6 组合运算电路
2.2.7 D触发器与时序电路
2.2.8 算术逻辑单元示意
2.3 CPU的构成
2.4 堆栈
2.5 CPU的核心寄存器堆
2.6 中断
2.6.1 中断源
2.6.2 中断标志
2.6.3 中断控制
2.6.4 中断锁存与中断应答
2.6.5 中断与堆栈
2.6.6 中断向量
2.6.7 中断嵌套
2.6.8 中断优先级
2.7 存储器
2.7.1 随机存储器
2.7.2 Flash存储器
2.8 外设
第3章 单片机基本系统
3.1 16位单片机
3.2 单片机基本硬件系统
3.2.1 S12XS系列单片机
3.2.2 MC9S12XS基本硬件系统
3.2.3 与PC连接
3.2.4 PC串口设置
3.3 体验监控程序
3.4 MC9S12XS单片机系统的硬件电路设计
3.4.1 电源电路
3.4.2 复位电路和BDM引脚
3.4.3 时钟电路
3.4.4 串行口的RS-232驱动电路
3.4.5 BDM接口
3.4.6 单片机并行口及驱动能力
3.4.7 调试显示
第4章 微处理器结构和指令集
4.1 微处理器的内部寄存器结构
4.1.1 典型的8位微处理器
4.1.2 典型的16位微处理器
4.1.3 32位CPU与16位CPU的对比
4.1.4 8位/16位单片机的基本内存空间分配
4.2 S12X汇编指令集
4.3 指令按功能分类
4.3.1 数据传送指令
4.3.2 算术与逻辑运算指令
4.3.3 程序控制指令
4.4 指令按寻址方式分类
4.5 汇编指令表
4.6 指令的机器码组织
4.7 用汇编语言编写程序
4.7.1 汇编程序的格式
4.7.2 汇编管理指令
4.8 汇编语言程序设计举例
4.9 码的转换类子程序
4.10 汇编语言编程技巧
4.11 进一步学习
第5章 复位、中断及存储空间的扩展
5.1 复位和中断
5.2 寻址空间的扩展
5.3 寻址空间的管理
5.3.1 给连续存储空间分区
5.3.2 闪存页面管理寄存器PPage
5.3.3 数据闪存页面管理寄存器EPage
5.3.4 RAM页面管理寄存器RPage
5.3.5 子程序远程调用
5.4 存储器的可靠性
5.5 以存储器为核心制定解决方案
5.5.1 选择结构简单的CPU
5.5.2 片内存储器资源管理技术
5.5.3 避免使用浮点数和浮点运算的方法
5.5.4 使用实时操作系统
第6章 异步串行通信
6.1 串行通信协议RS-232标准
6.2 SCI功能简介
6.3 SCI寄存器
6.3.1 波特率寄存器
6.3.2 串行通信控制寄存器1
6.3.3 串行通信控制寄存器2
6.3.4 串行通信状态寄存器1
6.3.5 串行通信状态寄存器2
6.3.6 串行通信数据寄存器
6.4 SCI的软件开发方法
6.4.1 SCI的初始化
6.4.2 SCI的查询方式
6.4.3 SCI的中断方式
6.5 SCI应用
第7章 用C语言开发应用程序
7.1 C语言是开发单片机应用软件的有力工具
7.2 开发嵌入式应用的C编译器的特点
7.2.1 编译过程与集成开发环境
7.2.2 不要使用初始化变量
7.2.3 注意变量的数据类型
7.2.4 注意函数的可重人性
7.3 建立C语言程序运行环境
7.4 应用程序的模块化
7.5 合理使用全局变量和局部变量
7.6 函数的结构与函数间参数的传递
7.7 在C程序中直接操作硬件
7.8 程序模块的框架与组织
7.9 程序的链接与定位
7.10 MISRA标准C
第8章 监控程序与BDM原理
第9章 使用嵌入式实时操作系统
第10章 单片机内外设模块
第11章 单片机软件开发工具使用入门
第12章 S12实验开发系统及实验指导
第13章 单片机实用中的电磁兼容问题
附录A MC9S12XS128监控程序
附录B S12X CPU汇编指令表
附录C CPU 12指令机器码表
参考文献