第一篇 基础知识篇
第1章 51单片机开发的基础知识
1.1 51单片机的硬件结构
1.1.1 功能模块
1.1.2 CPU
1.1.3 并行I/O端口
1.1.4 存储嚣结构
1.1.5 定时/计数器
1.1.6 串行口
1.1.7 中断系统
1.2 51单片机的指令系统
1.2.1 寻址方式
1.2.2 指令说明
1.2.3 指令系统表
1.3 本章总结
第2章 C语言程序各语句用法与意义
2.1 数据结构
2.1.1 数据类型
2.1.2 变量与常量
2.1.3 数组
2.1.4 指针
2.1.5 结构
2.1.6 共用体
2.1.7 枚举
2.2 运算符与表达式
2.2.1 运算符分类与优先级
2.2.2 算术运算符与表达式
2.2.3 关系运算符与表达式
2.2.4 逻辑运算符与表达式
2.2.5 位操作运算符与表达式
2.2.6 赋值运算符与表达式
2.3 程序结构与函数
2.3.1 程序结构
2.3.2 函数
2.4 流程控制语句
2.4.1 选择语句
2.4.2 循环语句
2.4.3 转移语句
2.5 本章总结
第3章 Keil 8051 C编译器
3.1 Keil编译器简介
3.2 使用Keil开发应用软件
3.2.1 建立工程
3.2.2 工程的设置
3.2.3 编译与连接
3.3 dScope for Windows的使用
3.3.1 如何启动
3.3.2 如何调试
3.3.3 调试窗口
3.4 本章总结
第二篇 输入/输出系统设计
第4章 单片机实现液晶显示
4.1 实例说明
4.2 设计思路分析
4.2.1 液晶显示模块
4.2.2 液晶显示工作原理
4.2.3 设计思路
4.3 硬件电路设计
4.3.1 器件选取
4.3.2 电源模块
4.3.3 液晶显示模块
4.3.4 单片机模块
4.4 软件设计
4.4.1 液晶控制驱动嚣指令集
4.4.2 程序说明
4.5 实例总结
第5章 基于MAX7219的8位数码管显示
5.1 实例说明
5.2 设计思路分析
5.2.1 LED显示驱动芯片的选取
5.2.2 MAX7219的工作原理
5.3 硬件电路设计
5.3.1 主要器件
5.3.2电路原理图
5.4 软件设计
5.4.1 MAX7219的工作时序和寄存器描述
5.4.2 程序说明
5.5 实例总结
第6章 键盘输入实例——实现4x4键盘
6.1 实例说明
6.2 设计思路分析
6.3 硬件电路设计
6.4 软件设计
6.5 实例总结
第7章 单片机实现语音录放
7.1 实例说明
7.2 设计思路分析
7.2.1 语音芯片选取
7.2.2 语音芯片1SD2560简介
7.3 硬件电路设计
7.3.1 主要器件
7.3.2 电路原理图及说明
7.4 软件设计
7.4.1 程序流程
7.4.2 程序说明
7.5 实例总结
第三篇 数据采集系统设计
第8章 基于MAX197的并行A/D转换
8.1 实例说明
8.2 设计思路分析
8.2.1 A/D转换原理
8.2.2 如何选择A/D转换器件
8.2.3 A/D转换器对电源电路的要求
8.3 硬件电路设计
8.3.1 主要器件
8.3.2 电路原理图及说明
8.4 软件设计
8.4.1 MAX197控制字
8.4.2 程序流程
8.4.3 程序说明
8.5 实例总结
第9章 基于TLC549的串行A/D转换
9.1 实例说明
9.2 设计思路分析
9.2.1 芯片选取
9.2.2 工作原理
9.3 硬件电路设计
9.3.1 主要器件
9.3.2 电路原理图及说明
9.4 软件设计
9.4.1 转换过程和时序要求
9.4.2 程序流程
9.4.3 程序说明
9.5 实例总结
第10章 基于MAX527的并行D/A转换
10.1 实例说明
10.2 设计思路分析
10.2.1 D/A转换原理
10.2.2 如何选择D/A转换器件
10.2.3 D/A转换器对电源电路的要求
10.3 硬件电路设计
10.3.1 主要器件
10.3.2 电路原理图及说明
10.4 软件设计
10.4.1 MAX527的地址和重要引脚
10.4.2 程序流程
10.4.3 程序说明
10.5 实例总结
第11章 基于MAX517的串行D/A转换
11.1 实例说明
11.2 设计思路分析
11.2.1 芯片选取
11.2.2 工作原理
11.3 硬件电路设计
11.3.1 主要器件
11.3.2 电路原理图及说明
11.4 软件设计
11.4.1 时序要求和转换过程
11.4.2 程序说明
11.5 实例总结
第12章 基于SHT71数字温/湿度传感器的采集实现
12.1 实例说明
12.2 设计思路分析
12.2.1 SHT71性能概述
12.2.2 SHT71的功能说明
12.2.3 SHT71的引脚尺寸和说明
12.3 硬件电路设计
12.4 软件设计
12.4.1 SHT71的操作方法
12.4 2 程序流程
12.4.3 源程序清单
12.5 实例总结
第13章 基于DS1624的数字温度计设计
13.1 实例说明
13.1.2 设计思路分析
13.2.1 DS1624简介
13.2.2 DS1624基本特性
13.2.3 DS1624 工作原理
13.2.4 DS1624工作方式
13.2.5 DS1624的指令集
13.3 硬件电路设计
13.3.1 硬件设计
13.3.2 原理科及其说明
13.4 软件设计
13.4.1 程序流程
13.4.2 程序说明
13.5 实例总结
第四篇 控制系统设计
第14章 基于DS12C887的实时日历时钟显示系统设计
14.1 实例说明
14.2 设计思路分析
14.2.1 选择合适的日历时钟芯片7
14.2.2 如何由DS12C887芯片获取时间信息
14.3 硬件电路设计
14.3.1 结构框图
14.3.2 主要器件
14.3.3 电路原理图及说明
14.4 软件设计
14.4.1 DS12C877的内存空间
14.4.2 程序流程
14.4.3 程序代码及说明
14.5 实例总结
第15章 单片机控制的步进电机系统
15.1 实例说明
15.2 设计思路分析
15.2.1 步进电机的工作原理
15.2.2 步进电机的控制
15.2.3 脉冲分配与驱动芯片的选取
15.3 硬件电路设计
15.3.1 结构框图
15.3.2 主要器件
15.3.3 电路原理图厦说明
15.4 软件设计
15.4.1 程序流程
15.4.2 程序说明
15.5 实例总结
第16章 基于MAX1898的智能充电器设计
16.1 实例说明
16.2 设计思路分析
16.2.1 为何需要实现充电器的智能化
16.2.2 如何选择电池充电芯片
16.2.3 MAX1898的充电工作原理
16.3 硬件电路设计
16.3.1 主要器件
16.3.2 电路原理图及说明
16.4 软件设计
16.4.1 程序流程
16.4.2 程序说明
16.5 实例总结
第五篇 存储系统与外设扩展
第17章 基于NOR Flash AM29LV320的数据存储
17.1 实例说明
17.2 设计思路分析
17.2.1 芯片AM29LV320
17.2.2 具体设计思路
17.3 硬件电路设计
17.4 软件设计
17.4.1 AM29LV320的命令与状态
17.4.2 串行异步数据传输
17.4.3 程序代码说明
17.5 实例总结
第18章 基于XC95144的串口扩展
18.1 实例说明
18.2 设计思路分析
18.2.1 串口发送的设计
18.2.2 串口接收的设计
18.2.3 串口模块的设计l
18.3 硬件电路设计
18.4 软件设计
18.4.1 CPLD的设计原理图
18.4.2 C51单片机程序代码说明
18.5 实例总结
第19章 基于8255扩展并行口
19.1 实例说明
19.2 设计思路分析
19.2.1 并行口扩展的原理
19.2.2 芯片选择
19.3 硬件电路设计
19.4 软件设计
19.5 实例总结
第六篇 信号与算法实现
第20章 单片机实现智能信号发生器
第21章 单片机实现步进式PWM信号输出
第22章 单片机实现CRC算法
第23章 单片机实现软件滤波
第七篇 通信传输系统设计
第24章 单片机实现点对点的数据传输
第25章 单片机实现点对多点的数据传输
第26章 单片机实现以太网接口
第27章 单片机实现1C总线通信
第28章 单片机实现RS-485总线现场监测系统
第29章 CAN总线接口通信设计
第八篇 电源监控与抗干扰设计
第30章 单片机监控电路设计
第31章 光电隔离电路设计
附录A 汇编语言与C语言的混合编程
附录B 实例配套实验箱