第一章 微型计算机的基础知识 1
本章目标 1
引言 1
1.1 微型计算机概述 2
1.1.1 微型计算机的发展史 2
1.1.2 微型计算机的分类 6
1.1.3 微型计算机的应用 6
目标测评1 8
1.2 微型计算机系统模型 8
1.2.1 微型计算机系统的三个层次 8
1.2.2 微型计算机模型结构 9
1.2.3 微型计算机的工作过程 15
1.2.4 微型计算机的性能指标 18
目标测评2 19
1.3 计算机中的数和编码 20
1.3.1 计算机中数的表示及运算 20
1.3.2 计算机中常用的编码 23
目标测评3 25
本章小结 25
习题 26
第二章 MCS-51单片机的组成结构 27
本章目标 27
引言 27
2.1 MCS-51单片机概述 28
2.1.1 单片机的发展史 28
2.1.2 单片机系统与嵌入式系统 29
2.1.3 主流单片机 29
目标测评1 30
2.2 MCS-51系列单片机 30
2.2.1 MCS-51单片机的基本结构 30
2.2.2 单片机芯片引脚的定义及功能 32
目标测评2 34
2.3 MCS-51单片机的存储器组织 34
2.3.1 程序存储器 35
2.3.2 数据存储器 36
2.3.3 地址分配及寻址区 43
目标测评3 46
2.4 单片机的时序和复位电路 47
2.4.1 时序(时钟) 47
2.4.2 复位 51
2.4.3 节电方式 53
目标测评4 54
2.5 单片机的最小系统 54
目标测评5 57
本章小结 57
习题 57
第三章 开发与仿真工具 59
本章目标 59
引言 59
3.1 Keil C51操作入门 60
3.1.1 Keil C51简介 60
3.1.2 Keil C51的安装 60
3.1.3 建立第一个Keil C51程序 60
3.1.4 Keil C51软件调试方法 64
3.1.5 实例 67
3.2 Proteus软件入门 68
3.2.1 软件概述 68
3.2.2 软件界面介绍 68
3.2.3 操作简介 71
3.2.4 实例 71
目标测评 75
本章小结 75
习题 76
第四章 MCS-51系列单片机的指令系统与汇编语言程序设计 77
本章目标 77
引言 77
4.1 概述 78
4.1.1 汇编语言的指令格式 78
4.1.2 指令中的常用符号 78
目标测评1 79
4.2 寻址方式 79
目标测评2 82
4.3 指令系统 82
4.3.1 数据传送指令 83
4.3.2 算术运算指令 86
4.3.3 逻辑运算指令 89
4.3.4 控制转移类指令 90
4.3.5 布尔变量操作类指令 95
目标测评3 97
4.4 MCS-51汇编语言伪指令 97
目标测评4 99
4.5 汇编语言程序设计 99
4.5.1 顺序程序设计 100
4.5.2 分支程序设计 101
4.5.3 循环程序设计 104
4.5.4 查表程序设计 107
4.5.5 子程序设计 108
目标测评5 110
本章小结 111
习题 112
第五章 MCS-51单片机的基本I/O功能及应用 113
本章目标 113
引言 113
5.1 I/O接口的输入输出特性 114
5.1.1 P1口 114
5.1.2 P3口 116
5.1.3 P0口 117
5.1.4 P2口 119
目标测评1 121
5.2 I/O接口的应用 121
5.2.1 BCD拨码盘接口 121
5.2.2 流水灯控制 124
5.2.3 数码管显示器与单片机的接口 125
5.2.4 键盘与单片机的接口 132
5.2.5 I2 C总线的应用 136
目标测评2 144
本章小结 145
习题 145
第六章 中断系统及应用 147
本章目标 147
引言 147
6.1 概述 148
6.1.1 中断的基本概念 148
6.1.2 中断嵌套与优先级 149
6.1.3 中断的作用 149
目标测评1 150
6.2 中断系统的结构原理与控制寄存器 150
6.2.1 中断系统的结构原理 150
6.2.2 中断系统的控制寄存器 151
目标测评2 155
6.3 中断处理 155
6.3.1 响应中断的条件 155
6.3.2 中断响应所需的时间 155
6.3.3 中断请求标志位的清除方式 156
6.3.4 中断处理的过程 156
6.3.5 中断矢量 157
目标测评3 159
6.4 中断服务程序与子程序 159
6.4.1 中断服务程序 159
6.4.2 子程序 160
6.4.3 中断服务程序与子程序的区别 160
6.5 外部中断的编程及应用(INTO、 INT 1) 161
6.5.1 外部中断0的编程及应用 161
6.5.2 外部中断1的编程及应用 163
6.6 外部中断源的扩展 164
6.6.1 利用查询加中断的方式进行扩展 164
6.6.2 利用定时器/计数器进行扩展 166
本章小结 167
习题 167
第七章 定时器/计数器的原理和应用 168
本章目标 168
引言 168
7.1 定时器/计数器概述 169
7.1.1 定时器/计数器的结构 169
7.1.2 定时器/计数器的工作方式 170
目标测评1 170
7.2 定时器/计数器的特殊功能控制寄存器 170
7.2.1 定时器/计数器(TO、T1)的方式控制寄存器 170
7.2.2 定时器/计数器(TO、T1)的控制寄存器 171
7.2.3 定时器/计数器T2的特殊功能寄存器T2CON 172
7.2.4 定时器/计数器T2的控制寄存器T2MOD 173
目标测评2 173
7.3 定时器/计数器的各种工作模式及应用 173
7.3.1 定时器/计数器TO、 T1 173
7.3.2 门控位GATE的应用 190
7.3.3 综合应用举例 194
本章小结 197
习题 197
第八章 串行接口与应用 199
本章目标 199
引言 199
8.1 串行通信的基本知识 202
目标测评1 204
8.2 MCS-51单片机串行接口的结构与工作方式 204
8.2.1 串行接口的结构 204
8.2.2 串行接口寄存器SCON和电源寄存器PCON 204
8.2.3 波特率设计 206
目标测评2 209
8.3 串行接口的通信应用 209
8.3.1 同步移位方式(方式0) 209
8.3.2 10位异步方式(方式1) 213
8.3.3 11位异步方式(方式2和方式3) 221
目标测评3 227
8.4 PC机的RS-232通信接口 227
8.4.1 RS-232接口的电气特性 227
8.4.2 RS-232接口的连接方式 228
8.4.3 RS-232通信接口测试 229
本章小结 230
习题 232
第九章 单片机系统总线与资源扩展 233
本章目标 233
引言 233
9.1 单片机系统扩展原理 234
目标测评1 234
9.2 单片机的最小应用系统 234
9.3 单片机系统扩展的方法 235
目标测评2 237
9.4 数据存储器的扩展 237
9.4.1 数据存储器同单片机的连接 238
9.4.2 实际的数据存储器扩展电路 238
目标测评3 243
9.5 程序存储器的扩展 244
目标测评4 246
9.6 I/O接口的使用与扩展 247
9.6.1 数据的传送方式 247
9.6.2 用74LS× ×系列TTL芯片扩展简单的I/O接口 248
9.6.3 用可编程接口芯片扩展I/O接口 252
9.6.4 非总线方式扩展I/O接口 258
目标测评5 260
9.7 数模和模数转换接口 260
9.7.1 数模转换接口 260
9.7.2 模数转换接口 266
目标测评6 271
本章小结 271
习题 272
第十章 8086 CPU原理与PC体系结构 273
本章目标 273
引言 273
10.1 8086的CPU 274
10.1.1 CPU的结构 274
10.1.2 寄存器的结构 275
10.1.3 分段式存储器管理 278
10.1.4 8086的工作模式 280
目标测评1 280
10.2 现代PC机的存储器体系结构 281
10.2.1 8086的存储器系统 281
10.2.2 现代PC机的存储器系统 282
10.2.3 IA-32结构微处理器的工作模式 283
10.2.4 保护模式下的虚拟存储器管理 284
10.2.5 外存储器 287
目标测评2 290
10.3 8086的系统扩展 291
10.3.1 8086的中断系统及其扩展 291
10.3.2 8086的DMA扩展 296
10.3.3 基于8253/8254的PC定时器扩展 298
目标测评3 300
10.4 现代总线与接口 300
10.4.1 总线的基本概念 300
10.4.2 PCI总线 305
10.4.3 USB总线 307
10.4.4 Thunderbolt雷电总线 310
目标测评4 311
本章小结 311
习题 312
参考文献 313