第一篇 单片微型计算机概论 1
第一章 单片微型计算机概述 1
1-1 单片机的发展概况 1
1-2 单片机的特点 3
1-3 单片机的应用 4
1-4 单片机的发展趋势 6
第二章 Intel公司单片机 7
2-1 Intel单片机系列 7
2-2 Intel单片机性能 8
2-3 Intel单片机的结构 9
一、单片机的存贮器 9
二、高速运算能力 9
三、多功能的I/O接口 10
2-4 单片机的指令系统 10
第三 章常用单片机系列 12
3-1 Motorola公司单片机系列 12
一、6801单片机 12
二、6805单片机 15
3-2 Zilog公司单片机系列 19
一、Z8单片机 19
二、Z8单片机指令系统 27
三、Z8单片机的应用 30
四、Super 8单片机 32
3-3 F8(3870)单片机系列 33
一、F8单片机结构 33
二、F8单片机指令系统 37
三、F8单片机的应用 40
3-4 其他单片机系列 41
一、NEC公司的μCOM-87系列 41
二、Rockwell公司的6500/1单片机系列 42
三、TI公司的TMS70××单片机系列 43
四、GI公司的PIC单片机系列 43
五、NS公司的NS8070系列与RCA公司的CDP1800系列 44
第二篇 MCS-48系列单片机 45
第四章 MCS-48的组成 45
4-1 MCS-48内部结构 46
一、运算部件 46
二、程序存贮器 48
三、数据存贮器 48
四、程序计数器、堆栈和程序状态字 49
五、输入/输出 50
六、定时器/计数器 51
七、中断 52
八、时钟和时序电路 54
九、复位和单步 54
十、掉电方式 55
十一、MCS-48引脚说明 56
4-2 MCS-48指令系统 56
一、数据传送指令 57
二、算术运算指令 60
三、逻辑运算指令 62
四、标志类指令 65
五、转移指令 66
六、子程序 71
七、定时器/计数器类指令 72
八、输入/输出指令 73
九、控制类指令 75
4-3 简单程序设计举例 77
一、减法 77
二、十进制加法 77
三、十进制减法 78
四、乘法 78
五、除法 79
六、查表乘法 80
第五章 MCS-48系统的扩展 81
5-1 程序存贮器的扩展 81
一、外部程序存贮器扩展原理框图 81
二、对外部程序存贮器的取指过程 81
5-2 数据存贮器的扩展 83
一、256字节数据存贮器的扩展 83
二、1024字节外部数据存贮器的扩展 85
5-3 I/O口的扩展 86
一、8243扩展器I/O接口 86
二、8D触发器输出接口 89
三、三态门输入接口 92
5-4 8155多功能组合芯片的扩展 94
一、8155的主要功能 95
二、8155的扩展和应用举例 95
5-5 A/D和D/A转换器的扩展 98
一、ADC0809的扩展 98
二、5G14433A/D转换器的扩展 100
三、5G7520D/A转换器的扩展 105
第六章 I/O设备 107
6-1 单片机控制VOESA打印机 107
一、VOESA打印机 107
二、单片机与打印机的接口线路 108
三、控制打印机的程序框图 109
四、编制程序过程中的注意事项 109
五、打印记录实例 111
6-2 六位七段码显示 111
一、六位七段码显示的接口电路 111
二、字符显示时序 113
三、显示程序举例 114
四、程序清单 115
6-3 转换开关输入装置 118
一、硬件结构 118
二、应用举例 119
6-4 拨盘输入装置 122
一、BCD码拨盘 122
二、BCD码拨盘与计算机连接 123
三、读拨盘程序 124
6-5 键盘输入装置 125
一、键盘 125
二、键译码 126
三、键盘处理程序框图和程序清单 127
第七章 MCS-48应用实例 129
7-1 液位加压系统自动计数控制装置 129
一、自动计数控制装置简介 129
二、自动计数控制装置的硬件结构 130
三、自动计数控制装置的软件设计 131
四、自动计数控制装置的程序清单 134
7-2 电位器炭片阻值自动分选仪 136
一、工作原理 137
二、分选仪结构和程序总框图 138
三、56路A/D转换的接口电路和软件设计 139
四、56个炭片等级显示的接口电路和软件设计 143
7-3 MTC1-5/1精密温度控制器 147
一、系统原理和组成简介 147
二、硬件结构 148
三、软件 152
四、控温特性 156
7-4 功率因数补偿控制器 157
一、控制器简介 158
二、功率因数角?的检测 159
三、电力电容切换装置 161
第三篇 MCS-51系列单片机 162
第八章 MCS-51组成 162
8-1 MCS-51系列概述 162
8-2 MCS-51系统结构 163
一、MCS-51的总体结构 163
二、微处理器 164
三、存贮器 167
四、I/O口 168
8-3 MCS-51存贮器组织 170
一、程序存贮器 171
二、内部数据存贮器 171
三、特殊功能寄存器 172
四、位寻址空间 172
五、外部数据存贮器和I/O口 174
8-4 MCS-51指令系统 175
一、寻址方式 175
二、程序状态字PSW 179
三、指令系统 180
8-5 定时器/计数器 200
一、定时器结构 200
二、定时器的工作方式 202
三、8052/8032的定时器T2 204
四、定时器的应用举例 207
8-6 串行接口 210
一、MCS-51串行接口 211
二、串行接口的工作方式 212
三、波特率设计 221
四、串行接口的应用实例 224
8-7 中断系统 231
一、中断请求源 232
二、中断控制 233
三、中断响应过程 235
四、外部中断响应时间 236
五、外部中断的方式选择 236
六、8031的单步运行控制 236
七、多外中断源系统设计 237
第九章 MCS-51程序设计 240
9-1 循环程序设计 240
一、循环程序的导出 240
二、除法程序设计 242
三、多重循环 245
四、循环程序的结构和优化 246
9-2 查表程序设计 248
9-3 散转程序设计 253
一、使用转移指令表的散转程序 253
二、使用地址偏移量表的散转程序 255
三、使用转向地址表的散转程序 256
四、利用RET指令实现的散转程序 256
9-4 子程序和参数传递方法 257
一、用工作寄存器或累加器来传递参数 258
二、用指针寄存器来传递参数 258
三、用堆栈来传递参数 259
四、程序段参数传递 261
9-5 数制转换 263
一、整数十翻二 263
二、小数十翻二 265
三、整数二翻十 267
四、小数二翻十 269
9-6 浮点数运算子程序 270
一、多字节浮点数格式 270
二、多字节浮点数规格化子程序 271
三、多字节二进制整数转换为浮点数子程序 272
四、多字节浮点数取补子程序 273
五、多字节浮点数对阶子程序 273
六、多字节浮点数加法子程序 274
七、多字节浮点数减法子程序 276
八、多字节浮点数乘法子程序 277
九、多字节浮点数除法子程序 281
第十章 MCS-51系统扩展技术 287
10-1 程序存贮器设计 287
一、可擦洗只读存贮器EPROM 287
二、8051和8751的程序存贮器扩展 289
三、8031的程序存贮器扩展 290
四、访问外部程序存贮器的时序 291
五、实用的程序存贮器设计 292
10-2 外部扩展数据存贮器的设计 293
一、RAM存贮器电路 293
二、外部RAM电路的逻辑设计 294
三、外部数据存贮器的数据传送 295
四、实用的数据存贮器设计 296
10-3 扩展I/O口设计 297
一、8255A通用并行接口电路 298
二、8155RAM/IO扩展器 305
三、8279可编程键盘/显示器接口 310
四、8253可编程定时器/计数器 318
五、8251串行通信接口 323
六、74LSTTL电路的应用 329
第十一章 MCS-51模拟电路接口技术 331
11-1 D/A电路接口技术 331
一、D/A电路原理 331
二、8位数模电路DAC 0832 333
三、10位D/A转换器AD7520 335
11-2 A/D电路接口技术 337
一、双积分A/D变换器原理 338
二、4位半双积分A/D转换器ICL7135 338
三、5G14433和MCS-51的接口 344
四、逐次逼近法A/D变换器原理 346
五、0816A/D变换器 346
六、0809和MCS-51的接口方法 350
第十二章 输入/输出设备 351
12-1 显示器接口 351
一、显示器结构 351
二、显示器工作原理 351
三、动态显示程序设计 352
12-2 键盘接口 354
一、键盘工作原理 354
二、键盘接口方法 355
三、键输入程序设计 355
四、定时扫描方式 358
五、中断扫描方式 358
六、键盘显示器和8279的接口方法 358
12-3 打印机接口 361
一、GP16微打印机的接口方法 361
二、PP40彩色描绘器的接口方法 368
12-4 智能终端接口 375
一、RS232C电平转换器 375
二、MCS-51和终端的接口 376
12-5 磁带机接口 377
一、调幅方式接口电路和程序设计 378
二、调频方式 386
第十三章 MCS-51应用系统设计 387
13-1 控制系统设计 387
一、控制系统基本要求 387
二、皮带配料秤 388
三、程序控制器 400
13-2 智能仪器仪表设计 412
一、智能仪器仪表特点 412
二、智能仪器仪表设计 413
三、智能仪器仪表常用功能部件 416
四、智能电度表设计举例 423
13-3 智能外设控制器设计 427
一、微机针打工作原理与接口信号 427
二、GP16-Ⅱ控制器硬件结构 429
三、GP16-Ⅱ软件设计 431
四、打印子程序设计 436
第十四章 MCS-51应用系统的研制和调试方法 440
14-1 MCS-51应用系统研制方法 440
一、确定任务 441
二、总体设计 441
三、硬件设计方法 441
四、软件设计方法 443
14-2 MCS-51单片机开发工具 446
一、ICE-5100/252在线仿真器 447
二、DSG-51在线仿真系统 448
三、SICE通用单片机在线仿真系统 456
14-3 MCS-51应用系统调试 459
一、常见硬件故障分析 460
二、硬件调试方法 460
三、软件调试方法 461
第四篇 MCS-96系列单片机 464
第十五章 MCS-96硬件结构 464
15-1 MCS-96概述 464
一、MCS-96系列的功能特性 464
二、MCS-96的应用范围 465
三、MCS-96系列产品 465
15-2 中央处理器 469
一、CPU总线 469
二、CPU寄存器文件 469
三、寄存器算术逻辑单元 470
15-3 振荡器及内部时序 471
一、振荡器 471
二、内部时序 472
15-4 存贮空间 472
一、寄存器文件 473
二、特殊功能寄存器 473
三、预留存贮空间 473
四、内部ROM 476
五、存贮控制器 476
六、系统总线 476
七、就绪 477
15-5 中断结构 478
一、中断源 478
二、中断控制 479
三、中断优先权 480
四、中断时序 482
15-6 定时器 482
一、定时器1 482
二、定时器2 483
三、定时器中断 483
15-7 高速I/O 483
一、高速输入 484
二、高速输出 487
15-8 A/D输入和脉宽调制D/A输出 490
一、A/D输入 490
二、脉宽调制D/A输出 491
15-9 串行接口 493
一、串行接口工作方式 493
二、多处理器通信 494
三、串行口控制 494
四、波特率的确定 495
15-10 I/O口 495
一、口功能 496
二、I/O口编程注意事项 497
15-11 复位、掉电方式、监视跟踪定时器 498
一、复位 498
二、掉电方式 500
三、监视跟踪定时器 501
第十六章 MCS-96软件结构 502
16-1 操作数寻址方式 502
一、操作数类型 502
二、操作数寻址方式 503
16-2 指令系统 506
一、程序状态字 506
二、8096指令系统使用符号的约定 508
三、指令系统说明 509
16-3 8096汇编指令到目标指令的翻译特点 536
一、汇编指令中使用的寄存器必须先定义后使用 537
二、正确使用8096汇编语言中的寻址方式 537
三、不同寻址方式下指令目标代码的确定 538
附录 539
附录Ⅰ MCS-48指令表 539
附录Ⅱ MCS-51指令表 543
附录Ⅲ MCS-51指令编码表 548
附录Ⅳ MCS-96指令表 556
附录Ⅴ MCS-96指令操作码与状态时间表 559
附录Ⅵ 常用芯片引脚 563