前言 1
第1章 单片机概论 1
1.1 单片机的概念 1
1.2 单片机的发展概况 2
1.3 Intel和Freescale的单片机 3
1.4 单片机的应用领域 18
习题与思考题 19
第2章 MCS-51单片机的硬件结构 20
2.1 MCS-51单片机内部总体结构 20
2.2 MCS-51单片机的引脚 22
2.3 MCS-51的微处理器 25
2.4 MCS-51存储器的结构 27
2.5 MCS-51的并行I/O口 33
2.6 MCS-51时钟电路与时序 36
2.7 MCS-51的复位和复位电路 38
习题与思考题 39
第3章 MCS-51单片机指令系统 40
3.1 机器语言、汇编语言、C语言 40
3.2 寻址方式 43
3.3 指令分类 45
3.4 数据传送指令 46
3.5 算术运算指令 48
3.6 逻辑运算指令 51
3.7 转移控制指令 53
3.9 位处理指令 55
3.8 空操作指令 55
3.10 伪指令 56
习题与思考题 58
第4章 MCS-51单片机汇编语言程序设计 59
4.1 汇编语言程序结构 60
4.2 算术运算程序设计 65
4.3 非数值计算程序 70
4.4 数字滤波程序 81
4.5 子程序和参数传递方法 84
习题与思考题 87
第5章 MCS-51单片机的中断系统 88
5.1 微型计算机中断技术概论 88
5.2 MCS-51单片机的中断控制 90
习题与思考题 98
第6章 MCS-51单片机的定时器/计数器 100
6.1 定时器/计数器的结构 100
6.2 MCS-51的定时器/计数器控制 101
习题与思考题 107
第7章 MCS-51单片机的串行接口 109
7.1 MCS-51串行接口的4种运行模式 109
7.2 串行口控制寄存器 111
7.3 波特率的产生 113
7.4 多机通信 114
习题与思考题 115
第8章 Cx51的数据类型及基本运算 117
8.1 C语言程序的基本结构 117
8.2 Keil Cx51标识符与关键字 119
8.3 数据与数据类型 121
8.4 常量与变量 122
8.5 Cx51数据的存储类型 124
8.6 Cx51编译器对8051特殊功能寄存器(SFR)的定义 127
8.7 Cx51对8051并行接口的定义 128
8.8 位变量(BIT)及其Cx51的定义 129
8.9 Cx51运算符、表达式及其规则 130
习题与思考题 136
第9章 Cx51构造数据类型 137
9.1 数组类型 137
9.2 指针类型 140
9.3 结构类型 144
9.4 联合类型 146
9.5 枚举 148
习题与思考题 148
第10章 Cx51流程控制语句 149
10.1 C语言程序的基本结构及流程图 149
10.2 选择语句if 150
10.3 Switch/case语句 150
10.4 循环语句 151
习题与思考题 153
第11章 Cx51函数 154
11.1 函数的分类 154
11.2 函数的定义 155
11.3 函数的参数和参数值 158
11.4 函数的调用 159
11.5 中断服务函数与寄存器组定义 162
11.6 变量的存储方式 163
11.7 Cx51编程实例 170
习题与思考题 177
第12章 MCS-51单片机系统扩展与接口技术 178
12.1 MCS-51存储器的扩展 178
12.2 MCS-51的I/O接口扩展 186
12.3 MCS-51单片机系统键盘与显示器接口 199
12.4 MCS-51单片机系统总线扩展技术 207
12.5 用可编程外围芯片扩展接口电路 211
习题与思考题 213
13.1 MCS-51与DAC的接口 215
第13章 MCS-51单片机与D/A、A/D的接口 215
13.2 MCS-51与ADC器件接口 224
习题与思考题 234
第14章 MCS-51单片机应用系统设计、开发与调试 236
14.1 单片机应用系统设计步骤 236
14.2 单片机应用系统硬件设计 237
14.3 MCS-51单片机系统举例 237
14.4 单片机应用系统软件设计 240
14.5 单片机应用系统的开发和调试 240
习题与思考题 246
附录 247
附录A MCS-51指令表 247
附录B ASCII(美国标准信息交换码)表 252
参考文献 253