第1章 单片机基础知识 1
1.1 计算机系统概述 1
1.1.1 计算机 1
1.1.2 微型计算机 1
1.1.3 单片微型计算机 2
1.1.4 嵌入式系统 3
1.2 单片机的内部结构 3
1.2.1 中央处理器 3
1.2.2 存储器 6
1.2.3 输入/输出接口 7
1.2.4 总线 8
1.3 单片机的类型和典型单片机产品 8
1.3.1 单片机的类型和特点 8
1.3.2 典型单片机产品 10
1.4 单片机的应用系统结构及其应用 11
1.4.1 单片机应用系统结构 11
1.4.2 单片机的应用 12
习题 14
第2章 51系列单片机硬件结构和功能 15
2.1 总体结构 15
2.1.1 51系列单片机的总体结构 15
2.1.2 51系列单片机的引脚定义及功能 17
2.2 存储器的组织结构及功能 20
2.2.1 程序存储器 20
2.2.2 内部数据存储器 21
2.2.3 外部数据RAM和I/O口 27
2.3 I/O接口的结构及功能 27
2.3.1 并行接口的结构及功能 27
2.3.2 串行接口的结构及功能 32
2.4 定时/计数器的结构及功能 33
2.4.1 定时/计数器的结构 33
2.4.2 定时/计数器方式寄存器和控制寄存器 34
2.4.3 T0、T1的工作方式和内部结构 36
2.4.4 定时/计数器T2的功能和使用方法 38
2.5 中断系统的结构及功能 42
2.5.1 中断系统结构 43
2.5.2 中断源 43
2.5.3 中断控制 45
2.5.4 中断响应过程 47
2.5.5 中断服务程序的现场保护和恢复 48
2.5.6 中断请求的撤出 49
2.6 时钟、时钟电路、CPU定时 50
2.6.1 CMOS型51单片机时钟电路 50
2.6.2 CPU时序 51
2.7 单片机工作方式 52
2.7.1 复位方式与复位电路 53
2.7.2 程序执行方式 54
2.7.3 省电工作方式 54
2.7.4 CHMOS型单片机节电工作方式 55
习题 58
第3章 51系列单片机指令系统及Keil集成开发环境 59
3.1 指令系统和指令格式 59
3.1.1 指令系统的概念 59
3.1.2 指令格式和常用伪指令 59
3.2 指令寻址方式 63
3.2.1 寄存器寻址 63
3.2.2 直接寻址 64
3.2.3 寄存器间接寻址 64
3.2.4 立即寻址 65
3.2.5 基寄存器加变址寄存器间接寻址 65
3.3 指令状态标志和类型 66
3.3.1 指令状态标志 66
3.3.2 指令类型 67
3.4 数据传送指令 68
3.4.1 内部数据传送指令 69
3.4.2 外部数据存储器传送指令 73
3.4.3 查表指令 75
3.5 算术运算指令 76
3.5.1 加减指令 76
3.5.2 乘除指令 80
3.6 逻辑运算指令 81
3.6.1 ACC的逻辑操作指令 81
3.6.2 两个操作数的逻辑操作指令 83
3.7 位操作指令 85
3.7.1 位变量传送指令 85
3.7.2 位变量修改指令 86
3.7.3 位变量逻辑操作指令 87
3.8 控制转移指令 87
3.8.1 绝对转移指令 87
3.8.2 条件转移指令 91
3.8.3 调用、返回及空操作指令 93
3.9 KeilμVision4集成开发环境简介 96
3.9.1 μVision4项目管理窗口 96
3.9.2 μVision4的菜单栏 97
3.9.3 μVision4工具栏 103
3.9.4 μVision4的管理配置 107
3.9.5 μVision4的各种常用窗口 111
3.9.6 用μVision4创建项目 115
3.9.7 项目仿真和调试 118
习题 120
第4章 51系列单片机汇编语言程序设计方法 122
4.1 单片机系统程序结构及设计过程 122
4.1.1 程序总体构成 122
4.1.2 程序设计过程 125
4.2 顺序程序结构设计 125
4.3 分支程序结构设计 127
4.3.1 基本分支结构程序设计 127
4.3.2 多分支结构程序设计 128
4.4 循环结构程序设计 132
4.4.1 单重循环程序 132
4.4.2 多重循环程序 134
4.4.3 已知循环次数结构程序设计 134
4.4.4 未知循环次数结构程序设计 134
4.5 子程序设计及参数传递方法 135
4.5.1 子程序的调用与返回 136
4.5.2 子程序的参数传递 137
4.6 中断程序设计 144
4.6.1 中断的初始化 144
4.6.2 中断服务程序 144
4.6.3 外部中断程序 145
4.6.4 定时中断程序 146
4.6.5 串行中断程序 147
4.7 常用程序设计及调试实例 148
4.7.1 定点数运算程序 149
4.7.2 查表程序 153
4.7.3 数制转换程序 154
习题 156
第5章 51系列单片机接口应用及Proteus仿真 157
5.1 Proteus简介 157
5.1.1 Proteus编辑环境 157
5.1.2 电路原理图设计 162
5.1.3 单片机的仿真 166
5.1.4 ISIS模块应用举例 167
5.2 51系列单片机内部接口和定时器的应用 169
5.2.1 并行接口应用 169
5.2.2 定时/计数器应用 174
5.2.3 串行接口电路 180
5.3 51系列单片机并行扩展系统的扩展原理 195
5.3.1 51单片机最小系统 195
5.3.2 51单片机扩展总线与编址技术 196
5.4 程序存储器扩展 200
5.4.1 外部程序存储器的操作时序 200
5.4.2 常用EPROM存储器 202
5.4.3 程序存储器扩展方法 203
5.5 数据存储器扩展 205
5.5.1 外部数据存储器的操作时序 205
5.5.2 常用的RAM芯片 207
5.5.3 RAM存储器扩展方法 207
5.5.4 外部RAM的读写程序 209
5.6 LED键盘/显示专用电路接口技术和应用 210
5.6.1 LED显示接口技术 210
5.6.2 按键、键盘与单片机的接口技术 217
5.7 LED点阵显示电路接口技术和应用 226
5.7.1 点阵LED显示器原理 227
5.7.2 LED点阵显示接口电路及编程方法 228
5.8 LCD显示电路接口技术和应用 235
5.8.1 SMC1602显示器工作原理 236
5.8.2 指令集及时序 240
5.8.3 应用实例 244
5.9 ADC与DAC器件接口技术 252
5.9.1 DAC转换器接口 252
5.9.2 ADC转换接口 260
5.10 温度传感器接口技术 265
5.10.1 DS18B20的基础知识 265
5.10.2 参考程序 270
5.10.3 DS18B20测温实例 272
习题 275
参考文献 278