标题：8051系列单片机C程序设计完全手册
描述
本书首先从单片机基础、C语言、开发编译环境、典型资源编程、单片机通信等几个方面介绍了8051系列单片机C程序设计所应掌握的基础知识，内容全面、讲解清楚。然后通过工程开发实例和典型模块应用实例两部分内容系统地介绍单片机系统设计的方法使理论与实际相结合。 本书可以作为大学本、专科单片机技术课程的教材，也可作为8051系列单片机C程序设计开发的技术人员以及高等学校相关专业师生的参考用书。 [1]  8051系列单片机C程序设计完全手册
目录
第1章  单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章  C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章  C语言高级编程
3.1  函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章  Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressio)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章  C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章  C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章  单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1  电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章  C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5  电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章  C5l单片机典型模块实例
10.1  典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换