图书简介:
目 录
原 理 篇
第1章 微型计算机基础 2
1.1 计算机中的数制 2
1.1.1 计算机中常用的数制 2
1.1.2 各种数制之间的转换 4
1.2 计算机中的码制和编码 6
1.2.1 有符号数的表述方法 6
1.2.2 小数的表示方法 8
1.2.3 微型计算机中常用的信息编码 9
1.2.4 数据在计算机内部的存储模式 10
1.3 微型计算机硬件基础 11
1.3.1 微型计算机硬件的基本结构 11
1.3.2 计算机的基本工作原理 12
1.3.3 数据的输入/输出 15
1.4 单片微型计算机 15
1.4.1 单片机的概念 16
1.4.2 单片机的分类 16
1.4.3 单片机产品简介 17
习题与思考题 18
第2章 51系列单片机的硬件结构 19
2.1 51系列单片机的内部结构 19
2.2 51单片机的引脚功能 22
2.2.1 电源引脚及时钟引脚 22
2.2.2 控制引脚 22
2.2.3 端口(I/O)引脚 23
2.3 51单片机的存储器结构 24
2.3.1 存储器地址分配 24
2.3.2 程序存储器 24
2.3.3 数据存储器 25
2.3.4 特殊功能寄存器区 27
2.4 51单片机并行接口结构 28
2.4.1 P0三态双向口 28
2.4.2 P1准双向口 30
2.4.3 P2准双向口 30
2.4.4 P3多功能口 31
2.5 51单片机的时序与复位 32
2.5.1 时钟电路 32
2.5.2 时钟周期、机器周期和指令周期 32
2.5.3 CPU时序 33
2.5.4 复位电路 36
习题与思考题 37
第3章 51系列单片机的指令系统 38
3.1 计算机编程语言概述 38
3.2 51单片机指令系统的基础 39
3.2.1 指令系统的分类 39
3.2.2 指令的格式 39
3.2.3 常用的描述符号 40
3.3 51单片机指令的寻址方式 40
3.3.1 立即寻址(Immediate Addressing) 41
3.3.2 直接寻址(Direct Addressing) 41
3.3.3 寄存器寻址(Register Addressing) 42
3.3.4 寄存器间接寻址(Register Indirect Addressing) 42
3.3.5 变址寻址(Indexed Addressing) 43
3.3.6 相对寻址(Relative Addressing) 44
3.3.7 位寻址(Bit Addressing) 45
3.3.8 寄存器隐含寻址(Register Implicit Addressing) 45
3.4 数据传送类指令 45
3.4.1 内部数据传送指令 46
3.4.2 累加器A与外部数据存储器传送指令 47
3.4.3 查表指令 48
3.4.4 堆栈操作指令 49
3.4.5 交换指令 50
3.5 算术运算类指令 51
3.5.1 不带进位加法指令 51
3.5.2 带进位加法指令 52
3.5.3 带借位减法指令 53
3.5.4 乘法指令 54
3.5.5 除法指令 55
3.5.6 加1和减1指令 55
3.5.7 十进制调整指令 56
3.6 逻辑运算指令 57
3.6.1 清零指令 57
3.6.2 求反指令 57
3.6.3 循环移位指令 58
3.6.4 逻辑“与”操作指令 59
3.6.5 逻辑“或”操作指令 60
3.6.6 逻辑“异或”操作指令 60
3.7 控制转移类指令 61
3.7.1 无条件转移指令 61
3.7.2 条件转移指令 63
3.7.3 子程序调用及返回指令 65
3.7.4 空操作指令 67
3.8 位操作指令 67
习题与思考题 69
第4章 汇编语言程序设计 71
4.1 汇编语言程序设计概述 71
4.1.1 汇编语言的概念 71
4.1.2 汇编语言的特点 71
4.2 汇编语言的伪指令与汇编 71
4.2.1 常用伪指令语句 72
4.2.2 汇编语言的运算符 74
4.2.3 汇编语言的汇编 75
4.3 汇编语言程序设计方法 75
4.4 汇编语言程序的基本结构 76
4.4.1 顺序程序设计 76
4.4.2 分支程序设计 79
4.4.3 循环程序设计 81
4.4.4 子程序设计 82
4.5 汇编语言程序设计举例 85
4.5.1 算术运算程序 85
4.5.2 数制转换程序 85
4.5.3 定时程序 87
4.5.4 多分支及查表程序 89
4.5.5 数值比较排序程序 90
习题与思考题 93
第5章 51系列单片机中断系统 95
5.1 中断概述 95
5.1.1 中断的基本概念 95
5.1.2 中断系统的功能 95
5.2 51系列单片机中断系统结构 97
5.2.1 中断系统结构 97
5.2.2 中断的控制 99
5.3 中断的响应 101
5.3.1 中断响应条件 101
5.3.2 中断的响应及中断处理 101
5.3.3 系统的复位 102
5.4 中断系统的应用 103
5.4.1 中断程序的初始化 103
5.4.2 外部中断编程举例 104
习题与思考题 106
第6章 51单片机的定时器/计数器 108
6.1 定时器/计数器的结构及控制字 108
6.1.1 定时器/计数器的结构 108
6.1.2 定时器/计数器的控制字 109
6.2 定时器/计数器的工作模式 110
6.2.1 模式0 110
6.2.2 模式1 111
6.2.3 模式2 111
6.2.4 模式3 112
6.3 定时器/计数器应用举例 113
6.3.1 模式0及模式1的应用 113
6.3.2 模式2的应用 114
6.3.3 门控位GATE的使用 115
6.3.4 定时器/计数器中断响应延迟的处理 116
习题与思考题 116
第7章 51单片机的串行接口 118
7.1 串行通信基本知识 118
7.1.1 通信的概念 118
7.1.2 通信的传送方式 119
7.1.3 异步通信和同步通信 119
7.1.4 波特率和发送接收时钟 121
7.1.5 常用的串行通信协议 121
7.2 51单片机串行口结构 123
7.2.1 基本结构 124
7.2.2 控制寄存器 124
7.3 串行口工作方式 126
7.3.1 方式0 126
7.3.2 方式1 128
7.3.3 方式2和方式3 129
7.4 串行通信波特率的设置 130
7.4.1 方式0的波特率 130
7.4.2 方式2的波特率 130
7.4.3 方式1和方式3的波特率 131
7.5 串行通信应用举例 132
7.5.1 串行口方式0的应用 132
7.5.2 串行口方式1的应用 133
7.5.3 串行口方式2、方式3的应用 135
习题与思考题 135
第8章 单片机系统的扩展 137
8.1 51单片机的外部三总线 137
8.1.1 系统总线 137
8.1.2 P0口地址信息的锁存 138
8.1.3 地址译码方式 139
8.2 外部存储器的扩展 139
8.2.1 外部数据存储器的扩展 139
8.2.2 外部程序存储器的扩展 141
8.3 并行I/O接口的扩展 143
8.3.1 并行I/O接口的简单扩展 144
8.3.2 可编程并行I/O接口芯片8155 145
习题与思考题 152
第9章 C51简介 153
9.1 C51程序结构 153
9.2 C51的数据 154
9.2.1 C51的数据类型 154
9.2.2 C51的数据存储 156
9.3 C51的函数 157
9.4 C51的指针 159
9.4.1 指针的基本概念 159
9.4.2 C51指针变量的定义 159
9.5 C51编程举例 160
习题与思考题 162
应 用 篇
第10章 键盘及显示接口 164
10.1 键盘接口 164
10.1.1 键盘接线的两种形式及其识别 164
10.1.2 键盘管理的几个问题 166
10.1.3 键盘识别程序举例 166
10.2 LED数码管显示接口 169
10.2.1 静态数码管显示 170
10.2.2 动态数码管显示 172
10.2.3 数码管显示中小数点的处理 173
10.2.4 多位数码管动态显示编程 175
10.3 点阵显示接口 177
10.4 液晶显示接口 179
10.4.1 液晶显示工作原理简介 179
10.4.2 液晶显示器的应用 180
10.5 键盘管理程序设计举例 188
10.5.1 通用键盘管理程序流程图 189
10.5.2 简易计算器键盘管理程序设计举例 189
习题与思考题 192
第11章 单片机模拟接口技术 193
11.1 数模转换接口技术 193
11.1.1 数模转换原理 193
11.1.2 单片机与8位D/A转换器DAC0832的接口 195
11.1.3 单片机与12位D/A转换器接口 200
11.2 模数转换器接口技术 202
11.2.1 模数转换器简介 202
11.2.2 8位A/D转换器与单片机的接口 205
11.2.3 12位A/D转换器AD574/674A与单片机的接口 209
习题与思考题 212
第12章 定时器及中断系统应用 213
12.1 定时器应用 213
12.2 外部中断的应用 217
12.3 中断系统的扩展 219
12.3.1 用定时器/计数器扩展外部中断源 219
12.3.2 中断和查询相结合的外部中断源扩展 220
习题与思考题 221
第13章 串行通信应用 222
13.1 单片机的点对点通信 222
13.1.1 TTL / CMOS电平接口 222
13.1.2 RS-232C通信接口 222
13.1.3 RS-485通信接口 223
13.2 单片机多机通信 224
13.2.1 多机通信系统的构成 224
13.2.2 多机通信过程 224
13.3 简易485网络举例 225
13.3.1 单片机网络的构成 225
13.3.2 通信协议 225
13.3.3 多机通信软件编程 226
13.4 其他串行通信方式 228
13.4.1 SPI总线 228
13.4.2 I2C总线 229
13.4.3 单总线 232
习题与思考题 235
第14章 51单片机其他接口电路 236
14.1 时钟电路芯片 236
14.1.1 DS1302的原理与应用 236
14.1.2 DS12887的原理与应用 241
14.2 超声波检测接口 247
14.2.1 超声波检测的基本原理 247
14.2.2 超声波测距系统的设计 247
14.3 温度测量接口DS18B20 250
14.3.1 DS18B20结构及工作原理 250
14.3.2 DS18B20的寄存器及命令集 251
14.3.3 DS18B20的温度计算 251
14.3.4 应用程序设计 251
14.4 红外线检测接口 253
14.4.1 红外遥控的基本原理 253
14.4.2 红外遥控及其接口应用 254
14.5 声光检测 256
14.5.1 声音传感器的原理与应用 256
14.5.2 光电传感器 258
14.6 信号转换(V/I、V/F) 259
14.6.1 V/I转换接口电路 259
14.6.2 V/F转换和F/V转换及其接口 261
习题与思考题 264
第15章 单片机抗干扰技术 265
15.1 单片机硬件抗干扰技术 265
15.1.1 电源抗干扰 265
15.1.2 隔离技术 265
15.1.3 接地技术 267
15.1.4 硬件看门狗及掉电保护 268
15.2 单片机软件抗干扰技术 269
15.2.1 指令冗余技术 270
15.2.2 软件陷阱技术 270
15.2.3 软件看门狗技术 272
15.2.4 故障自动恢复处理程序 272
习题与思考题 274
附录A Keil C51软件的使用 275
A.1 简单程序的调试 276
A.2 Keil 程序调试窗口 282
A.2.1 程序调试时的常用窗口 282
A.2.2 各窗口在程序调试时的使用 284
附录B 51单片机指令汇总 287
参考文献 291
展开
前 言
与半个世纪前相比,当今社会无论是在工业生产还是日常生活方面都发生了巨大的变化,而带来这一变化的众多因素之一便是计算机技术。功能强大的计算机系统使信息处理进入智能化时代,这让工业控制更加精准,使人们的日常生活更加便捷。作为计算机的一个重要分支——单片机在这场变化中发挥了重要作用。由于单片机具有成本低、体积小、功能强等特点,使其在生产生活的方方面面得到了广泛的应用。在嵌入式系统中,单片机发挥着极其重要的作用。在工业生产装置、办公自动化设备和家用电器等领域,随处可见单片机的身影。单片机已经成为智能装置的核心部件。
随着微电子技术的飞速发展,单片机的各项性能指标得到了极大的提高。Intel公司第一代单片机MCS-8048使用6MHz晶振,具有16位通用I/O和1KB ROM,以及64B RAM。今天的单片机,其晶振已经达到几十兆赫兹,通用I/O达到六七十位。有些厂家生产的单片机还集成了高速高精度A/D和D/A转换器、可编程放大器及包括USB接口在内的各种通信接口。
目前的单片机市场林林总总,性能价格各不相同,但MCS-51系列兼容机型仍然占有相当大的市场。尽管单片机的变化非常大,但是其结构和原理万变不离其宗。考虑到读者理解程度及单片机课时的限制,本书仍选择结构较为简单的MCS-51单片机芯片作为样机来介绍51系列单片机的结构及工作原理、汇编语言程序设计及常用接口电路等。对于初学者来讲,MCS-51仍是一个非常好的教学模型,而且学好MCS-51可以达到举一反三、触类旁通的效果。
本书分为两篇,原理篇主要讲述单片机原理,应用篇主要介绍单片机相关的接口及应用技术。为了能使读者快速入门,本书专门设置了微型计算机基础一章来介绍计算机相关的基本概念和基础知识,以降低初学者的学习难度。书中每章都附有例题及习题与思考题,特别是在应用篇,尽量安排实际系统加以分析讲解,以帮助读者尽快进入系统学习。目前国内很多高校的信息与控制类专业对单片机技术非常重视,除单片机原理课程以外,很多学校还辅以独立设置的单片机实验及单片机课程设计,以强化学生对该技术的掌握。为满足各种教学环节的需求,除了单片机原理和汇编语言部分以外,本书利用一定的篇幅较为详细地介绍了单片机系统的应用,以满足实验和课程设计等实践环节的教学需求。本书适合作为大专院校电气信息类专业单片机课程的教科书及课程设计参考书,同时对于那些对单片机技术感兴趣的自学读者也是一本很好的参考教材。
本书共15章。第1章由李绍民和刘忠富编写,第2章由李厚杰编写,第3、4章由张秀峰编写,第5章由郭金来编写,第6章由刘忠富编写,第7章由陈晓云编写,第8章由付立军编写,第9、10章由刘岩川编写,第11章由韩志敏编写,第12章由赵凤强编写,第13章由丁继峰编写,第14章由董玉华和刘忠富编写,第15章由谢春利编写。全书由刘岩川统稿。
由于作者水平有限,书中难免有不当之处,敬请读者批评指正。
作者
展开