《单片机原理及应用教程 第4版》从单片机应用的角度出发,在第3版的基础上进行修正、精简、调整和扩充,翔实地描述了51系列及兼容单片机体系结构、工作原理、功能部件及软硬件应用开发资源。在单片机硬件组成的基础上,兼容汇编语言和C51应用程序的基础知识、编程技术、应用示例及单片机系统软硬件开发过程。
《单片机原理及应用教程 第4版》以Keil集成环境、Proteus仿真软件及 ISP 下载等开发资源为平台,引用了大量的单片机软硬件仿真调试示例及工程应用实例,引导读者逐步认识、熟知、实践和应用单片机。
《单片机原理及应用教程 第4版》可作为高等院校电子信息、通信、自动化、机电及计算机类专业的教学用书,也可作为相关专业技术人员的参考用书。
前言
第1章 单片机应用基础概述1
1.1 计算机及单片机简介1
1.1.1 计算机到单片机的发展过程1
1.1.2 微型计算机、个人计算机、单板机、
单片机2
1.2 数制与编码4
1.2.1 数制及其转换4
1.2.2 编码7
1.3 计算机系统组成11
1.3.1 计算机硬件组成11
1.3.2 计算机软件系统12
1.3.3 计算机语言及程序设计13
1.4 单片机与嵌入式系统15
1.4.1 单片机的特点和应用15
1.4.2 嵌入式系统16
1.4.3 单片机应用系统的组成17
1.5 单片机应用开发资源19
1.6 一个简单的单片机应用示例20
1.7 思考与练习23
第2章 51单片机及硬件结构24
2.1 51单片机系列24
2.2 51单片机总体结构25
2.2.1 51单片机总体结构框图及功能25
2.2.2 51单片机芯片引脚功能28
2.3 51单片机存储结构及位处理器33
2.3.1 51单片机存储器的特点33
2.3.2 程序存储器34
2.3.3 数据存储器35
2.3.4 专用寄存器(SFR)37
2.3.5 位处理器39
2.4 51单片机工作方式39
2.4.1 复位及复位方式39
2.4.2 程序执行工作方式40
2.4.3 节电工作方式41
2.5 51单片机的时序42
2.5.1 时钟42
2.5.2 CPU时序42
2.6 单片机最小系统45
2.6.1 单片机最小系统组成45
2.6.2 单片机最小系统应用电路46
2.7 思考与习题47
第3章 51单片机指令系统及汇编语言
程序设计49
3.1 指令系统简介49
3.1.1 指令格式49
3.1.2 指令分类及符号说明50
3.2 寻址方式51
3.3 指令系统55
3.3.1 数据传送类指令55
3.3.2 算术运算类指令60
3.3.3 逻辑运算类指令63
3.3.4 控制转移类指令65
3.3.5 子程序调用与返回指令70
3.3.6 位操作类指令71
3.4 汇编语言程序设计基础73
3.4.1 汇编语言特征74
3.4.2 汇编语言程序的组成74
3.4.3 伪指令74
3.4.4 程序设计步骤及技术76
3.5 程序设计实例77
3.5.1 汇编语言基本程序设计77
3.5.2 延时程序设计81
3.5.3 代码转换程序设计81
3.5.4 查表程序设计82
3.5.5 运算程序设计82
3.5.6 排序程序设计83
3.5.7 输入/输出程序设计83
3.5.8 数字滤波程序设计85
3.6 单片机I/O端口应用程序及仿真85
3.7 思考与练习88
第4章 C51程序设计及应用90
4.1 C51简介90
4.1.1 C语言的标识符和关键字90
4.1.2 C51的扩展91
4.1.3 存储区、存储类型及存储模式92
4.1.4 数据类型及变量93
4.2 C51运算符及表达式96
4.2.1 算术运算符与表达式96
4.2.2 关系运算符与表达式96
4.2.3 逻辑运算符与表达式97
4.2.4 赋值运算符与表达式97
4.2.5 自增和自减运算符与表达式98
4.2.6 位运算符与表达式99
4.2.7 条件运算符与表达式100
4.3 C51控制语句101
4.3.1 条件语句101
4.3.2 switch/case 语句102
4.3.3 循环结构103
4.4 数组105
4.4.1 一维数组的定义、引用及初始化105
4.4.2 一维数组应用示例106
4.5 函数107
4.5.1 库函数及文件包含108
4.5.2 C51自定义函数及调用110
4.6 指针113
4.6.1 指针和指针变量114
4.6.2 通用指针与存储区指针115
4.6.3 一维数组与指针115
4.6.4 指向数组的指针作为函数参数116
4.7 Keil 51单片机集成开发环境117
4.7.1 单片机应用程序开发过程118
4.7.2 Keil 开发环境的安装118
4.7.3 Keil 工程的建立119
4.7.4 Keil 调试功能120
4.7.5 单片机I/O端口应用示例122
4.8 Keil C与Proteus联机调试示例127
4.9 思考与练习129
第5章 51单片机中断系统及应用131
5.1 中断的概念131
5.1.1 中断及中断源131
5.1.2 中断嵌套及优先级131
5.2 51单片机中断系统结构及中断
控制132
5.2.1 51单片机的中断系统结构132
5.2.2 中断源和中断请求标志132
5.2.3 中断允许控制134
5.2.4 中断优先级控制135
5.3 51单片机中断响应过程135
5.3.1 中断响应136
5.3.2 中断处理和中断返回137
5.4 外部中断源扩展138
5.4.1 中断加查询方式扩展外部中断源138
5.4.2 利用定时器扩展外部中断源140
5.5 中断系统应用设计示例及仿真140
5.5.1 中断系统应用设计140
5.5.2 中断实现程序(指令)单步操作141
5.5.3 外部中断应用示例及仿真142
5.6 思考与练习149
第6章 51单片机定时器/计数器及
应用150
6.1 定时器/计数器概述150
6.2 定时器/计数器的控制151
6.2.1 定时器/计数器工作模式寄存器
TMOD151
6.2.2 定时器/计数器控制寄存器TCON152
6.3 定时器/计数器的工作模式152
6.3.1 工作模式0152
6.3.2 工作模式1154
6.3.3 工作模式2154
6.3.4 工作模式3155
6.4 定时器/计数器应用技术157
6.4.1 模式0的应用157
6.4.2 模式1的应用158
6.4.3 模式2的应用159
6.4.4 模式3的应用160
6.5 定时器/计数器应用设计实例161
6.5.1 定时器延时控制161
6.5.2 定时器实现测量脉冲宽度164
6.5.3 10kHz方波发生器167
6.5.4 循环加1计数器168
6.6 思考与练习170
第7章 单片机串行口及应用172
7.1 串行通信的基本概念172
7.1.1 异步通信和同步通信172
7.1.2 串行通信的制式、波特率、时钟和
奇偶校验173
7.2 常用串行通信总线标准及接口
电路175
7.2.1 RS-232C总线标准及接口电路175
7.2.2 RS-422/485总线标准及接口电路177
7.3 51单片机串行口178
7.3.1 串行口结构178
7.3.2 串行口控制179
7.3.3 串行口的工作方式180
7.3.4 波特率设置181
7.4 串行口应用184
7.4.1 串行口方式0的应用及仿真184
7.4.2 串行口在其他方式下的应用192
7.4.3 双机通信应用实例194
7.5 思考与练习196
第8章 单片机常用I/O接口技术198
8.1 键盘接口及应用198
8.1.1 键盘及其工作特征198
8.1.2 独立式非编码键盘接口及应用199
8.1.3 矩阵式键盘接口及应用201
8.2 单片机常用显示器接口及应用204
8.2.1 LED显示器接口及应用205
8.2.2 LCD液晶显示器接口及应用210
8.3 开关量控制I/O接口215
8.4 思考与练习218
第9章 单片机系统扩展及I/O接口
技术220
9.1 单片机系统扩展概述220
9.1.1 单片机系统扩展配置及接口芯片220
9.1.2 单片机扩展后的总线结构221
9.2 程序存储器的扩展222
9.2.1 常用的程序存储器芯片222
9.2.2 程序存储器扩展226
9.3 数据存储器的扩展228
9.3.1 常用数据存储器芯片229
9.3.2 数据存储器扩展230
9.4 I/O端口的扩展232
9.4.1 简单并行I/O口的扩展232
9.4.2 8155可编程多功能接口芯片及
扩展234
9.5 单片机扩展系统外部地址空间的
编址方法239
9.5.1 单片机扩展系统地址空间编址239
9.5.2 线选法240
9.5.3 译码法241
9.6 8155扩展键盘与显示器设计
实例242
9.7 A-D、D-A转换器与单片机的
接口245
9.7.1 D-A转换器及应用技术245
9.7.2 A-D转换器及应用技术249
9.8 思考与练习256
第10章 单片机应用系统开发及设计
实例257
10.1 单片机应用系统开发过程257
10.1.1 总体与软、硬件设计257
10.1.2 软、硬件调试及电路装配258
10.1.3 程序下载259
10.1.4 脱机运行261
10.2 单片机应用系统设计实例261
10.2.1 简易数控增益放大器262
10.2.2 单片机“秒”计时器265
10.2.3 智能循迹小车268
10.2.4 数字测量仪表272
10.2.5 直流电动机转速PID控制系统276
10.2.6 单片机舵机闭环控制系统280
10.2.7 LED点阵显示系统284
10.3 思考与练习286
第11章 Proteus使用入门287
11.1 Proteus ISIS基本操作287
11.1.1 Proteus工作区287
11.1.2 Proteus ISIS激励信号源292
11.1.3 Proteus ISIS VSM虚拟仪器294
11.2 Proteus原理图编辑及仿真298
11.2.1 Proteus ISIS原理图编辑298
11.2.2 Proteus ISIS电路仿真302
附录305
附录A 51单片机指令表305
附录B 常用C51库函数309