第1章 绪论 1
1.1单片机的基本概念 1
1.2单片机的发展 1
1.2.1单片机的发展概况 1
1.2.2单片机技术的发展 3
1.3单片机的特点及应用 4
1.3.1单片机的特点 4
1.3.2单片机的应用 5
1.4常用的单片机 6
1.4.1 MCS51系列单片机 6
1.4.2 8051内核单片机 7
1.4.3其他单片机 9
第2章MCS51单片机的硬件结构 10
2.1 MCS51单片机的内部结构与引脚功能 10
2.1.1 MCS51单片机的基本组成 10
2.1.2引脚功能 11
2.2中央处理单元 13
2.2.1运算部件 13
2.2.2控制部件 14
2.2.3时钟电路与CPU时序 15
2.3存储器结构 17
2.3.1程序存储器 17
2.3.2数据存储器 17
2.3.3特殊功能寄存器区 19
2.4并行输入/输出接口 21
2.4.1 P1口 21
2.4.2P0口 22
2.4.3P1口 23
2.4.4 P3口 23
2.5复位状态与复位电路 24
2.5.1复位状态 24
2.5.2复位电路 25
2.5.3“看门狗”技术 26
2.6 MCS51单片机的低功耗方式 27
2.6.1方式设定 28
2.6.2等待工作方式 28
2.6.3掉电工作方式 28
2.7思考题与习题 28
第3章 指令系统与汇编语言程序设计 30
3.1指令系统简介 30
3.2指令的格式 30
3.3 MCS51单片机的寻址方式 31
3.3.1立即寻址 31
3.3.2直接寻址 31
3.3.3寄存器寻址 31
3.3.4寄存器间接寻址 32
3.3.5变址寻址 32
3.3.6位寻址 32
3.3.7相对寻址 33
3.4指令系统分类介绍 34
3.5 MCS51单片机汇编语言程序设计 38
3.6伪指令 39
3.7汇编语言程序设计举例 41
3.7.1顺序程序设计 41
3.7.2分支程序设计 43
3.7.3循环程序设计 45
3.7.4位操作程序设计 48
3.8思考题与习题 49
第4章MCS51单片机定时/计数器 51
4.1 MCS51单片机定时/计数器概述 51
4.2定时/计数器的结构 52
4.2.1定时/计数器方式寄存器 52
4.2.2定时/计数器控制寄存器 53
4.2.3定时/计数器的工作原理 53
4.3定时/计数器的工作方式及其应用 53
4.3.1方式0及其应用 53
4.3.2方式1及其应用 55
4.3.3方式2及其应用 56
4.3.4方式3及其应用 57
4.3.5定时/计数器应用的其他问题 59
4.4思考题与习题 59
第5章 中断系统原理与应用 61
5.1中断系统基本概念 61
5.1.1中断 61
5.1.2中断的嵌套和中断系统的结构 61
5.2 MCS51单片机的中断系统及其管理 62
5.2.1 MCS51单片机中断系统结构 62
5.2.2中断请求源 63
5.2.3中断控制 64
5.3单片机响应中断的条件及响应过程 66
5.3.1单片机响应中断的条件 66
5.3.2中断的响应过程 66
5.3.3外部中断的响应时间 67
5.3.4外部中断的触发方式选择 67
5.3.5中断请求的撤销 68
5.3.6单片机的中断响应过程 69
5.3.7中断服务程序的设计 69
5.4定时/计数器作为外部中断源的使用方法 71
5.5思考题与习题 73
第6章 串行通信及其应用 74
6.1数据通信的基本概念 74
6.1.1数据通信的传输方式 74
6.1.2串行数据通信的两种形式 74
6.2串行口的结构 75
6.2.1串行口控制寄存器 75
6.2.2电源控制寄存器 76
6.3串行口的工作方式 77
6.3.1方式0 77
6.3.2方式1 77
6.3.3方式2 78
6.3.4方式3 79
6.4 RS-232总线及接口电路 80
6.5串行通信应用 81
6.5.1波特率设定 81
6.5.2串行口应用 83
6.6思考题及习题 86
第7章 单片机的系统扩展 88
7.1单片机的系统扩展概述 88
7.1.1单片机系统总线 88
7.1.2单片机系统总线构造 89
7.1.3单片机系统总线驱动能力扩展 91
7.1.4单片机存储器地址空间分配和一般扩展方法 92
7.2程序存储器的扩展及应用 96
7.2.1常用EPROM芯片介绍 96
7.2.2 EPROM芯片的工作方式 97
7.2.3程序存储器的扩展 97
7.3数据存储器的扩展及应用 99
7.3.1常用的静态数据存储器芯片介绍 99
7.3.2 RAM芯片的工作方式 100
7.3.3数据存储器的扩展 101
7.4程序存储器和数据存储器的综合扩展 102
7.5并行I/O口的扩展 103
7.5.1 8155芯片介绍 103
7.5.2 8155工作方式 106
7.5.3 8155与单片机的接口及应用 107
7.6思考题与习题 110
第8章 单片机接口技术 111
8.1键盘接口 111
8.1.1键盘的组成 111
8.1.2键盘接口的工作原理 112
8.1.3键盘的工作方式 115
8.2显示器接口 115
8.2.1 LED显示器接口原理 115
8.2.2 LED显示器工作原理 117
8.3 A/D转换器接口 118
8.3.1 A/D转换器原理 118
8.3.2 A/D转换器应用 121
8.4 D/A转换器接口 125
8.4.1 D/A转换器原理 125
8.4.2 D/A转换器应用 129
8.5 I2C总线接口 135
8.5.1 12C总线概述 135
8.5.2单片机的I2C总线接口及应用 137
8.6 SPI总线接口 142
8.7思考题及习题 144
第9章MCS51单片机的C51程序设计 145
9.1 C51编程概述 145
9.1.1概述 145
9.1.2 KEIL 8051开发工具 145
9.1.3 C51程序开发过程 145
9.1.4 C51程序结构 146
9.2 C51的数据类型及存储类型 146
9.2.1 C51的基本数据类型 146
9.2.2 C51的数据存储类型和存储模式 148
9.2.3单片机特殊功能寄存器及其C51定义 149
9.3 C51的基本运算 149
9.3.1 C51的算术运算 149
9.3.2 C51的关系运算 150
9.3.3 C51的逻辑运算 151
9.3.4 C51的位运算 151
9.3.5 C51的复合赋值运算符 152
9.4 C51流程控制语句 152
9.4.1选择控制语句 152
9.4.2循环语句 153
9.5 C51函数 154
9.5.1函数的分类与定义 155
9.5.2函数的调用 155
9.5.3中断服务函数和寄存器组定义 156
9.6预处理器 158
9.6.1宏定义 158
9.6.2文件包含 159
9.6.3条件编译 159
9.7 C51库函数 160
9.8 C51程序设计举例 162
9.8.1 MCS51单片机内部资源的C51编程 162
9.8.2 8051单片机扩展资源的C51编程 169
第10章 单片机应用系统的开发与实例 178
10.1单片机应用系统的开发过程 178
10.1.1需求分析与可行性论证 178
10.1.2硬件电路设计原则 179
10.1.3软件设计原则 180
10.1.4软、硬件测试与程序固化 180
10.2单片机应用系统的可靠性设计 181
10.2.1硬件抗干扰技术 181
10.2.2软件抗干扰设计 182
10.3单片机的开发工具 182
10.4单片机数据采集系统 184
10.4.1设计要求 185
10.4.2系统硬件电路设计 185
10.4.3软件设计 186
10.5智能家电远程电话遥控系统 188
10.5.1设计要求 188
10.5.2硬件电路设计 189
10.5.3软件设计 195
附录 196
附录A MCS51指令集 196
附录B μVision2集成开发环境使用 201
参考文献 215