《单片机原理及套用(第三版) 十一五》是2015年西安电子科技大学出版社出版的图书,作者是李建忠、余新拴、闵永智、杨琳霞、胡健、康苏明。
基本介绍
- 书名:单片机原理及套用(第三版) 十一五
- 作者:李建忠 余新拴 闵永智 杨琳霞 胡健 康苏明
- ISBN:978-7-5606-3212-4
- 定价:30.6元
- 出版社:西安电子科技大学出版社
- 出版时间:2015-04
内容简介
本书以中、小规模单片机套用系统普遍採用的51系列单片机为对象,系统地介绍了单片机的硬体结构与原理、指令系统与程式设计、外部功能扩展、并行与串列汇流排的接口技术、单片机套用系统的软硬体结构与开发方法、C语言应用程式设计等内容。
本书注重知识的内在联繫与规律,採用归纳、类比的方法讲解单片机技术的原理和方法。各章中对关键性内容都结合丰富的实例予以说明,并在章末配有习题供读者练习;同时,着眼于工程实际,选用了大量有实用价值的问题进行讨论。
本书既可作为高等学校电气自动化、计算机及相关专业的教材,也可供从事单片机系统开发套用的工程技术人员参考。
目录
第1章 概述 1
1.1 单片机的基本概念 1
1.1.1 单片机的发展历程 1
1.1.2 单片机技术的多学科交叉特点 2
1.1.3 单片机的功能结构特徵 2
1.2 单片机的发展 4
1.2.1 单片机的发展概况 5
1.2.2 单片机技术的发展 6
1.3 单片机的特点及套用 8
1.3.1 单片机的特点 8
1.3.2 单片机的套用 9
1.4 单片机的类型与常用单片机系列 9
1.4.1 单片机的类型 9
1.4.2 目前流行的51核心的8位单片机 11
习题一 15
第2章 51系列单片机的硬体结构 16
2.1 51系列单片机简介 16
2.1.1 MCS-51系列单片机 16
2.1.2 8051派生产品 16
2.2 51单片机的内部结构与引脚信号 17
2.2.1 51单片机的基本组成 17
2.2.2 51单片机的引脚信号 17
2.3 微处理器 20
2.3.1 运算部件 20
2.3.2 控制部件及振荡器 21
2.3.3 指令操作时序 23
2.4 存储器 26
2.4.1 程式存储器 26
2.4.2 数据存储器 28
2.5 并行输入/输出接口 32
2.5.1 P0口 32
2.5.2 P1口 33
2.5.3 P2口 34
2.5.4 P3口 34
2.6 定时器/计数器 35
2.6.1 定时器/计数器C/T0、C/T1的功能结构 35
2.6.2 定时器/计数器C/T0、C/T1的4种工作方式 37
2.7 串列输入/输出口 39
2.7.1 串列通信的基本概念 39
2.7.2 51单片机的串列口 42
2.8 51单片机的中断系统 47
2.8.1 中断的基本概念 47
2.8.2 51单片机中断源 47
2.8.3 中断控制 49
2.8.4 中断回响的条件、过程与时间 51
2.9 复位状态及复位电路 52
2.9.1 复位状态 52
2.9.2 复位电路 53
2.10 51单片机的低功耗方式 53
2.10.1 方式设定 54
2.10.2 空闲(等待、待机)工作方式 54
2.10.3 掉电(停机)工作方式 55
习题二 55
第3章 51单片机指令系统和彙编语言程式示例 57
3.1 51单片机指令系统概述 57
3.1.1 指令与指令系统的概念 57
3.1.2 51单片机指令系统及其指令格式 58
3.2 定址方式 58
3.2.1 立即定址 59
3.2.2 暂存器定址 59
3.2.3 暂存器间接定址 59
3.2.4 直接定址 60
3.2.5 变址定址 60
3.2.6 相对定址 60
3.2.7 位定址 61
3.3 数据传送类指令 61
3.3.1 访问片内数据存储器的一般数据传送指令 61
3.3.2 访问片内数据存储器的特殊传送指令 63
3.3.3 访问片外数据存储器的数据传送指令 64
3.3.4 访问程式存储器的数据传送指令 65
3.4 算术运算指令 66
3.4.1 加、减运算指令 66
3.4.2 十进制调整指令 67
3.4.3 乘、除法指令 68
3.5 逻辑运算及移位指令 69
3.6 控制转移类指令 71
3.6.1 无条件转移指令 71
3.6.2 条件转移指令 73
3.7 子程式调用与返回指令 75
3.7.1 子程式调用指令 75
3.7.2 返回指令 76
3.7.3 空操作指令 76
3.8 位操作类指令 76
3.9 彙编程式格式与伪指令 78
3.10 彙编程式设计示例 81
3.10.1 算术与逻辑处理程式 81
3.10.2 数制转换程式 85
3.10.3 多分支转移(散转)程式 86
3.10.4 定时器/计数器应用程式 88
3.10.5 外部中断应用程式 90
3.10.6 串列口应用程式 91
习题三 96
第4章 51单片机系统功能扩展 100
4.1 系统扩展概述 100
4.1.1 最小套用系统 100
4.1.2 单片机系统扩展的内容与方法 101
4.2 常用扩展器件简介 101
4.2.1 锁存器74LS373 102
4.2.2 74LS244和74LS245晶片 103
4.2.3 3-8解码器74LS138 104
4.3 存储器的扩展 105
4.3.1 存储器扩展概述 105
4.3.2 程式存储器的扩展 107
4.3.3 数据存储器的扩展 110
4.3.4 兼有片外程式存储器和片外数据存储器的扩展举例 112
4.4 并行I/O扩展 113
4.4.1 I/O口扩展概述 113
4.4.2 8255A可程式并行I/O口扩展 114
4.4.3 8155可程式并行I/O口扩展 121
4.4.4 用TTL晶片扩展简单的I/O接口 126
4.4.5 用串列口扩展并行I/O口 129
习题四 131
第5章 单片机串列口功能扩展 133
5.1 串列口功能扩展概述 133
5.2 51系列单片机与异步串列通信汇流排接口 133
5.2.1 RS-232接口 133
5.2.2 51单片机与PC机间的通信接口 138
5.2.3 RS-449/RS-422/RS-423/RS-485标準接口 148
5.3 51系列单片机与同步串列汇流排接口 150
5.3.1 I2C汇流排 151
5.3.2 SPI汇流排接口 160
5.3.3 单汇流排技术 162
习题五 168
第6章 51单片机的接口与套用 170
6.1 按键、键盘及其接口 170
6.1.1 键输入过程与软体结构 170
6.1.2 键盘接口和键输入软体中应解决的几个问题 171
6.1.3 独立式按键 172
6.1.4 行列式键盘 173
6.2 LED显示器及其接口 177
6.2.1 LED显示器结构与原理 177
6.2.2 LED显示器的显示方式 178
6.2.3 LED显示器接口 179
6.2.4 键盘、显示器组合接口 182
6.3 LCD显示器及其接口 185
6.3.1 液晶显示器简介 185
6.3.2 字元型液晶显示模组LCM的组成原理 185
6.3.3 LCM的命令字 188
6.3.4 字元型LCM的接口及套用举例 191
6.4 A/D转换器接口 197
6.4.1 A/D转换器概述 197
6.4.2 A/D转换器ADC0809与单片机的接口 198
6.4.3 单片机与A/D转换器AD574的接口 201
6.4.4 串列A/D转换器与单片机的接口 204
6.5 D/A转换器接口 207
6.5.1 D/A转换器概述 207
6.5.2 8位D/A转换器与单片机的接口 209
6.5.3 高于8位D/A转换器与单片机的接口 215
6.5.4 串列D/A转换器与单片机的接口 217
6.6 行程开关、晶闸管、继电器与单片机的接口 220
6.6.1 光电耦合器件 220
6.6.2 行程开关、继电器触点与单片机的接口 221
6.6.3 晶闸管元件与单片机接口 221
6.6.4 继电器与单片机接口 222
习题六 223
第7章 单片机套用系统设计与开发 225
7.1 单片机套用系统结构与套用系统的设计内容 225
7.1.1 单片机套用系统的一般硬体组成 225
7.1.2 单片机套用系统的设计内容 228
7.2 单片机套用系统开发过程 228
7.2.1 系统需求与方案调研 230
7.2.2 可行性分析 230
7.2.3 系统方案设计 230
7.2.4 系统详细设计与製作 231
7.2.5 系统调试与修改 231
7.2.6 生成正式系统(或产品) 231
7.3 单片机套用系统的一般设计方法 231
7.3.1 确定系统的功能与性能 231
7.3.2 确定系统基本结构 232
7.3.3 单片机套用系统硬、软体的设计原则 233
7.3.4 硬体设计 234
7.3.5 软体设计 235
7.3.6 资源分配 236
7.4 单片机套用系统的调试 237
7.4.1 硬体调试 237
7.4.2 软体调试 239
7.4.3 系统联调 240
7.4.4 现场调试 240
7.5 51单片机套用系统设计与调试实例 241
习题七 244
第8章 单片机C语言应用程式设计 245
8.1 C语言与51单片机 245
8.1.1 51单片机C语言编程简介 245
8.1.2 Keil C51开发工具 246
8.1.3 Keil C51对标準C语言的扩展 247
8.2 C51数据类型及其在51单片机中的存储方式 247
8.2.1 Keil C51中的基本数据类型 247
8.2.2 C51数据在51单片机中的存储方式 248
8.3 C51数据的存储类型与51单片机存储结构 250
8.3.1 存储类型 250
8.3.2 存储模式 252
8.4 51单片机特殊功能暂存器的C51定义 253
8.5 51单片机并行接口的C51定义 254
8.6 位变数的C51定义 254
8.6.1 位变数的C51定义 255
8.6.2 对位变数定义的限制 255
8.7 C51的指针 256
8.7.1 通用指针与指定存储器的指针 256
8.7.2 指针转换 257
8.8 与使用51单片机内部资源有关的头档案 258
8.9 51单片机内部资源套用的C语言编程 260
8.9.1 中断套用的C语言编程 260
8.9.2 定时器/计数器套用的C语言编程 262
8.9.3 串列口使用的C语言编程 264
8.10 51单片机片外扩展的C语言编程 267
8.10.1 8255与单片机接口C语言程式 267
8.10.2 51单片机数据採集的C语言编程 268
8.10.3 51单片机输出控制的C语言编程 272
8.11 频率、周期测量的C语言编程 278
8.11.1 测量频率 278
8.11.2 测量周期 280
8.12 51单片机间通信的C语言编程 281
8.12.1 点对点的串列异步通信 281
8.12.2 多机通信 285
8.13 键盘和数码显示人机互动的C语言编程 293
8.13.1 行列式键盘与51单片机接口的C51编程 293
8.13.2 七段数码管显示与51单片机接口的C51编程 294
8.13.3 字元型液晶显示模组(LCM)与51单片机的接口 296
习题八 300
附录A ASCII码錶 302
附录B 51单片机指令表 303
附录C 利用μVision4开发应用程式指导 310
C.1 ?Vision4简介 310
C.2 在?Vision4中创建套用 310
C.3 项目参数配置 313
C.4 单片机外部设备仿真 314