目录 1
前言 1
第1章 绪论 1
1.1 单片机的发展概况 1
1.1.1 单片机的发展历史 1
1.1.2 典型的单片机产品 1
1.2 单片机的应用领域和应用方式 10
1.3 习题 11
第2章 单片机的基本结构与工作原理 12
2.1 MCS-51系列单片机总体结构 12
2.1.1 MCS-51单片机的引脚描述 12
2.1.2 MCS-51单片机的硬件资源 14
2.1.3 MCS-51单片机的片外总线结构 15
2.2 MCS-51单片机时钟电路及CPU的工作时序 16
2.2.1 时钟电路 16
2.2.2 CPU的工作时序 17
2.3 MCS-51单片机存储器分类及配置 19
2.3.1 程序存储器 20
2.3.2 数据存储器 20
2.4 CHMOS型单片机的低功耗工作方式 24
2.4.1 空闲方式 25
2.4.2 掉电方式 25
2.4.3 节电方式的应用 25
2.5 习题 27
第3章 单片机的指令系统 28
3.1 指令格式 28
3.1.1 汇编指令 28
3.1.2 常用的缩写符号 30
3.1.3 伪指令 31
3.2 寻址方式 33
3.2.1 寄存器寻址 33
3.2.2 立即寻址 34
3.2.3 直接寻址 34
3.2.4 寄存器间接寻址 34
3.2.6 相对寻址 35
3.2.5 基寄存器加变址寄存器间接寻址 35
3.2.7 位寻址 36
3.3 指令的类型、字节和周期 37
3.3.1 指令系统的结构及分类 37
3.3.2 指令的字节和周期 37
3.4 数据传送指令 38
3.4.1 一般传送指令 38
3.4.2 累加器专用数据交换指令 43
3.5 算术运算指令 44
3.5.1 加减指令 44
3.5.2 乘法和除法指令 48
3.6 逻辑运算指令 49
3.6.1 累加器A的逻辑运算指令 49
3.6.2 两个操作数的逻辑运算指令 50
3.6.3 单位变量逻辑运算指令 51
3.6.4 双位变量逻辑运算指令 51
3.7 控制转移指令 52
3.7.1 无条件转移指令 52
3.7.2 条件转移指令 53
3.7.3 子程序调用和返回指令 55
3.8 习题 57
第4章 单片机的其他片内功能部件 59
4.1 并行I/O口 59
4.1.1 P1 口 59
4.1.2 P2 口 60
4.1.3 P0 口 62
4.1.4 P3 口 63
4.2 定时器/计数器 64
4.2.1 定时器的一般结构和工作原理 64
4.2.2 定时器/计数器T0和T1 65
4.2.3 定时器/计数器的初始化 69
4.2.4 8052等单片机的定时器/计数器T2 70
4.3 串行通信接口 73
4.3.1 串行通信及基础知识 73
4.3.2 串行接口的组成和特性 74
4.3.3 串行接口的工作方式 75
4.3.4 波特率设计 78
4.3.5 单片机双机通信和多机通信 81
4.4.1 中断系统概述 84
4.4 中断系统 84
4.4.2 中断处理过程 89
4.4.3 中断系统的应用 91
4.5 习题 97
第5章 汇编语言程序设计 98
5.1 汇编语言概述 98
5.1.1 汇编语言的优点 98
5.1.2 汇编语言程序设计的步骤 98
5.1.3 评价程序质量的标准 98
5.2 简单程序设计 99
5.3 分支程序 102
5.3.1 简单分支程序 102
5.3.2 多重分支程序 103
5.3.3 N路分支程序 105
5.4 循环程序 108
5.4.1 循环程序的导出 108
5.4.2 多重循环 111
5.5 查表程序 115
5.6 子程序的设计及其调用 119
5.6.1 子程序的概念 119
5.6.2 调用子程序的要点 119
5.6.3 子程序的调用及嵌套 123
5.7 习题 126
6.1.1 MCS-51并行扩展总线 128
第6章 单片机系统的并行扩展 128
6.1 MCS-51系统的并行扩展原理 128
6.1.2 地址译码方法 130
6.2 程序存储器扩展 133
6.2.1 常用EPROM存储器电路 133
6.2.2 程序存储器扩展方法 134
6.3 数据存储器RAM的扩展 135
6.3.1 常用的数据存储器 135
6.3.2 RAM存储器扩展方法 136
6.4 并行接口的扩展 137
6.4.1 用74系列器件扩展并行I/O口 138
6.4.2 可编程并行I/O扩展接口8255A 139
6.4.3 带RAM和计数器的可编程并行I/O扩展接口8155 146
6.5 D/A接口的扩展 150
6.5.1 梯形电阻式D/A转换原理 150
6.5.2 DAC0832 151
6.6 A/D接口的扩展 154
6.6.1 MC14433 154
6.6.2 ADC0809 157
6.7 习题 161
第7章 单片机系统的串行扩展 163
7.1 MCS-51系统的串行扩展原理 163
7.1.1 SPI三线总线 163
7.2.1 串行扩展E2pROM 164
7.1.2 I2C公用双总线 164
7.2 单片机的外部串行扩展 164
7.2.2 串行扩展I/O接口 167
7.2.3 串行扩展A/D转换器 168
7.3 习题 173
第8章 单片机的人机接口 175
8.1 键盘接口 175
8.1.1 键盘的工作原理和扫描方式 175
8.1.2 键盘的接口电路 176
8.1.3 键盘输入程序设计方法 178
8.2.1 LED显示器的工作原理 179
8.2 LED显示器接口 179
8.2.2 LED显示器的工作方式和显示程序设计 181
8.3 LCD显示器接口 182
8.3.1 LCD显示器的工作原理 182
8.3.2 LCD显示器的接口电路和显示程序设计 183
8.4 8279专用键盘显示器 188
8.4.1 8279的内部原理 188
8.4.2 8279的引脚分析 189
8.4.3 8279的键盘显示器电路 190
8.4.4 8279的设置 191
8.4.5 8279的应用程序介绍 193
8.5 习题 194
9.1 单片机应用系统的研制过程 196
第9章 MCS-51单片机系统的开发与应用 196
9.1.1 总体设计 197
9.1.2 硬件设计 197
9.1.3 可靠性设计 199
9.1.4 软件设计 199
9.1.5 系统调试 201
9.2 磁电动机性能智能测试台的研制 203
9.2.1 系统概述 203
9.2.2 测试系统硬件设计 203
9.2.3 测控算法 205
9.2.4 程序设计 208
9.2.5 实验结果 209
9.3 水产养殖水体多参数测控仪 210
9.3.1 系统概述 210
9.3.2 水体多参数测控仪的基本组成及工作原理 210
9.3.3 硬件设计 210
9.3.4 软件设计 216
9.3.5 可靠性措施 217
9.3.6 运行效果 217
9.4 课程设计:用单片机温度控制实验装置的研制 218
9.4.1 系统的组成及控制原理 218
9.4.2 控制系统软件编制 219
9.4.4 教学效果 220
9.5 习题 220
9.4.3 课程设计的安排 220
第10章 高速SOC单片机C8051F 221
10.1 Cygnal C8051F系列单片机特点 221
10.2 C8051F020单片机 223
10.2.1 概述 223
10.2.2 存储器组织 225
10.2.3 I/O口与数字交叉开关 231
10.3 模/数转换器 235
10.4 电压输出数/模转换器 242
10.5 电压基准 245
10.6 SMBus 246
10.7 串行外设接口总线 256
10.8 定时器 262
10.9 可编程计数器阵列 269
10.10 系统其他控制功能 279
10.11 Cygnal单片机集成开发环境 286
10.11.1 Cygnal集成开发环境软件简介 286
10.11.2 CygnalIDE界面 287
10.11.3 软件的基本操作 292
10.12 应用举例 296
10.13 习题 302
附录 303
附录A 单片机应用资料的网上查询方法 303
附录B MCS-51单片机的指令表 303
参考文献 308