《单片机原理及套用案例教程》是2012年由清华大学出版社出版的图书,作者是杜文洁、王晓红 。
基本介绍
- 书名:单片机原理及套用案例教程
- 作者:杜文洁 王晓红
- ISBN:9787302276388
- 定价:46元
- 出版社:清华大学出版社
- 出版时间:2012-7-31
- 装帧:平装
图书简介
本书从套用的角度出发,以80C51单片机为主要对象,系统地介绍了单片机的基本硬体结构和工作原理、指令系统与彙编语言程式设计、中断与定时器/计数器、串列接口(简称串口)与通信技术、系统扩展、接口技术、C语言程式设计和基础实训等。
本书注重将理论讲授和实践训练相结合,特别增加大量实训内容,强调套用性和实践性,初步培养学生的单片机开发能力。每章都安排了丰富的例题、思考题与习题,附录部分给出了思考题与习题的参考答案,便于学生的複习、巩固和训练提高。
本书可作为普通高等专科学校和高等职业学院电子信息、工业自动化、机电一体化、计算机套用等专业的教材,也可作为成人教育相应专业的教材或教学参考书,还可供从事单片机套用的工程技术人员参考。
本书封面贴有清华大学出版社防伪标籤,无标籤者不得销售。
着作权所有,侵权必究。
本书注重将理论讲授和实践训练相结合,特别增加大量实训内容,强调套用性和实践性,初步培养学生的单片机开发能力。每章都安排了丰富的例题、思考题与习题,附录部分给出了思考题与习题的参考答案,便于学生的複习、巩固和训练提高。
本书可作为普通高等专科学校和高等职业学院电子信息、工业自动化、机电一体化、计算机套用等专业的教材,也可作为成人教育相应专业的教材或教学参考书,还可供从事单片机套用的工程技术人员参考。
本书封面贴有清华大学出版社防伪标籤,无标籤者不得销售。
着作权所有,侵权必究。
图书前言
单片微型计算机简称单片机,它是将计算机的中央处理器、存储器、定时器/计数器、并行接口和串列接口以及中断系统等部件集成在一块晶片中构成的。由于单片机具有集成度高、体积小、功能强、使用灵活、可靠性高等优点,在工业控制、机电一体化、通信终端、智慧型仪表、家用电器等领域得到了广泛套用。因此,单片机技术已成为高职高专院校机械、电子、计算机等专业的重要课程。
本书是单片机基础教材,讲述初学者必须掌握的基本知识,因而在编写过程中力求易于学生阅读和理解,做到结合实际、注重套用、便于教学、内容新颖、实用性强。每章配有小结、思考题与习题,并附有参考答案。本书另闢一章介绍基础实训。
本书共分10章,主要内容如下:
第1章 单片机基础知识,主要介绍单片机的发展、特点,单片机开发快速入门及数制知识。
第2章 80C51单片机的内部结构,主要介绍80C51单片机(简称80C51)的内部结构、工作原理及功能。
第3章 80C51单片机的指令系统,主要介绍80C51的定址方式、基本指令的格式及功能。
第4章 彙编语言程式设计基础,主要介绍彙编语言程式设计的方法。
第5章 80C51的中断系统及定时器/计数器,介绍单片机定时与中断原理,并编写实例帮助读者理解。
第6章 80C51的串列接口及串列通信技术,介绍串列通信的原理、工作方式及优缺点。
第7章 C51程式设计入门,主要介绍单片机C语言程式开发。
第8章 单片机系统扩展,主要介绍存储器、I/O接口的扩展技术,以及I?2C汇流排在单片机中的套用。
第9章 单片机接口技术,介绍键盘、显示器、D/A、A/D、印表机等常见接口的工作原理及设计方法。 第10章 基础实训,针对每章内容设定实训实验,包括实训内容、实训步骤、参考程式及硬体电路连线等。
本书由杜文洁、王晓红担任主编,陶晓环、贺丽萍、张海文担任副主编,洪茜、李响参加了编写工作。其中,第1章、第6章、第10章及附录由王晓红编写;第3章由陶晓环编写;第2章由张海文编写;第4章、第7章由贺丽萍编写;第5章由杜文洁编写;第8章由李响编写,第9章由洪茜编写。全书由杜文洁统稿。特别在此感谢对本书出版给予支持和帮助的单位和个人!同时感谢参考文献的作者,他们的工作给予本书编写很大的帮助和启发。
由于时间仓促,编者水平和经验有限,书中错误和不足之处,敬请指正。
本书是单片机基础教材,讲述初学者必须掌握的基本知识,因而在编写过程中力求易于学生阅读和理解,做到结合实际、注重套用、便于教学、内容新颖、实用性强。每章配有小结、思考题与习题,并附有参考答案。本书另闢一章介绍基础实训。
本书共分10章,主要内容如下:
第1章 单片机基础知识,主要介绍单片机的发展、特点,单片机开发快速入门及数制知识。
第2章 80C51单片机的内部结构,主要介绍80C51单片机(简称80C51)的内部结构、工作原理及功能。
第3章 80C51单片机的指令系统,主要介绍80C51的定址方式、基本指令的格式及功能。
第4章 彙编语言程式设计基础,主要介绍彙编语言程式设计的方法。
第5章 80C51的中断系统及定时器/计数器,介绍单片机定时与中断原理,并编写实例帮助读者理解。
第6章 80C51的串列接口及串列通信技术,介绍串列通信的原理、工作方式及优缺点。
第7章 C51程式设计入门,主要介绍单片机C语言程式开发。
第8章 单片机系统扩展,主要介绍存储器、I/O接口的扩展技术,以及I?2C汇流排在单片机中的套用。
第9章 单片机接口技术,介绍键盘、显示器、D/A、A/D、印表机等常见接口的工作原理及设计方法。 第10章 基础实训,针对每章内容设定实训实验,包括实训内容、实训步骤、参考程式及硬体电路连线等。
本书由杜文洁、王晓红担任主编,陶晓环、贺丽萍、张海文担任副主编,洪茜、李响参加了编写工作。其中,第1章、第6章、第10章及附录由王晓红编写;第3章由陶晓环编写;第2章由张海文编写;第4章、第7章由贺丽萍编写;第5章由杜文洁编写;第8章由李响编写,第9章由洪茜编写。全书由杜文洁统稿。特别在此感谢对本书出版给予支持和帮助的单位和个人!同时感谢参考文献的作者,他们的工作给予本书编写很大的帮助和启发。
由于时间仓促,编者水平和经验有限,书中错误和不足之处,敬请指正。
图书目录
第1章 单片机基础知识1
1.1 单片机概述1
1.1.1 微处理器、微型计算机和单片机的概念1
1.1.2 单片机的发展状况2
1.1.3 单片机的特点3
1.1.4 单片机的套用3
1.1.5 常用单片机系列产品4
1.2 数制与编码7
1.2.1 数制7
1.2.2 编码12
1.2.3 计算机中带符号数的表示14
1.3 单片机套用开发系统15
1.3.1 开发系统的功能15
1.3.2 开发过程17
1.4 单片机开发快速入门17
1.4.1 μVision集成开发环境简介18
1.4.2 工程建立和编译的基本步骤21
1.4.3 仿真器的使用22
1.4.4 编程器的使用23
1.5 案例--点亮发光二极体23
1.5.1 功能和设计思路23
1.5.2 硬体电路设计24
1.5.3 程式流程及软体设计24
1.5.4 仿真和调试24
本章小结25
思考题与习题25
第2章 80C51单片机的内部结构27
2.1 80C51单片机的基本结构27
2.1.1 80C51系列概述27
2.1.2 80C51单片机的基本结构28
2.1.3 引脚及封装29
2.2 中央处理器30
2.2.1 运算器30
2.2.2 控制器32
2.2.3 CPU的工作流程33
2.3 存储器34
2.3.1 程式存储器35
2.3.2 数据存储器35
2.3.3 特殊功能暂存器37
2.4 时钟电路和时序38
2.4.1 时钟电路38
2.4.2 基本时序单位38
2.4.3 80C51的典型时序39
2.5 复位电路40
2.5.1 复位电路40
2.5.2 单片机复位后的状态41
2.6 并行输入/输出连线埠42
2.6.1 P0口的位结构42
2.6.2 P1口的位结构43
2.6.3 P2口的位结构44
2.6.4 P3口的位结构44
2.7 80C51单片机的低功耗方式45
2.7.1 电源控制暂存器45
2.7.2 待机方式46
2.7.3 掉电方式46
2.8 案例--霓虹灯控制46
2.8.1 功能和设计思路46
2.8.2 硬体电路设计47
2.8.3 程式流程及软体设计47
2.8.4 仿真和调试49
本章小结49
思考题与习题50第3章 80C51单片机的指令系统53
3.1 指令系统简介53
3.1.1 指令的格式53
3.1.2 指令的三种表示形式 53
3.1.3 指令的位元组数54
3.1.4 指令的分类55
3.2 定址方式55
3.2.1 符号约定55
3.2.2 定址方式说明55
3.3 80C51指令系统60
3.3.1 数据传送类指令 60
3.3.2 算术运算类指令 64
3.3.3 逻辑操作类指令 69
3.3.4 控制转移类指令71
3.3.5 位操作类指令 77
3.4 案例--霓虹灯的控制78
3.4.1 功能和设计思路78
3.4.2 硬体电路设计79
3.4.3 程式流程及软体设计79
3.4.4 仿真和调试81
本章小结82
思考题与习题82
第4章 彙编语言程式设计基础86
4.1 彙编语言源程式的设计与彙编86
4.1.1 程式设计步骤86
4.1.2 源程式的彙编87
4.1.3 伪指令 87
4.2 彙编语言程式设计90
4.2.1 顺序程式设计 90
4.2.2 分支程式设计91
4.2.3 循环程式设计92
4.2.4 子程式设计94
4.3 实用程式举例96
4.3.1 延时96
4.3.2 代码转换 97
4.3.3 数据处理 1004.3.4 算术运算 103
4.3.5 组合逻辑设计 106
4.4 案例--信号灯的控制107
4.4.1 功能和设计思路107
4.4.2 硬体电路设计107
4.4.3 程式流程及软体设计108
4.4.4 仿真和调试108
本章小结109
思考题与习题109
第5章 80C51的中断系统及定时器/计数器112
5.1 中断概述112
5.1.1 中断的特点112
5.1.2 中断的基本概念112
5.1.3 中断的过程113
5.1.4 中断嵌套114
5.2 80C51中断系统114
5.2.1 中断源及中断向量地址114
5.2.2 中断系统结构 115
5.2.3 中断标誌与控制 116
5.2.4 中断请求的回响、撤除及返回118
5.3 中断系统的套用120
5.3.1 中断系统初始化120
5.3.2 中断服务子程式121
5.4 定时器/计数器T0、T1概述121
5.4.1 定时器/计数器T0、T1的结构 121
5.4.2 定时器/计数器的原理 122
5.5 定时器/计数器的控制方法122
5.5.1 定时器/计数器暂存器122
5.5.2 定时器/计数器的初始化123
5.5.3 定时器/计数器初值的确定方法 124
5.6 定时器/计数器T0、T1的工作方式124
5.6.1 方式0124
5.6.2 方式1125
5.6.3 方式2125
5.6.4 方式3126
5.7 定时器/计数器T0、T1套用举例127
5.7.1 定时器套用举例1275.7.2 计数器套用举例 129
5.7.3 门控位套用举例130
5.8 案例--四人抢答器131
5.8.1 功能和设计思路131
5.8.2 硬体电路设计131
5.8.3 程式流程及软体设计131
5.8.4 仿真和调试134
本章小结134
思考题与习题135
第6章 80C51的串列接口及串列通信技术138
6.1 串列通信概述138
6.1.1 同步通信和异步通信方式138
6.1.2 串列通信的数据传输速率139
6.1.3 波特率和收/发时钟140
6.1.4 单工、半双工、全双工工作方式140
6.1.5 信号的调製与解调140
6.1.6 差错检测和校正141
6.1.7 串列通信接口电路141
6.2 串列通信汇流排标準及其接口142
6.2.1 RS-232C接口142
6.2.2 RS-449、RS-422A、RS-423A标準接口144
6.2.3 20mA电流环串列接口144
6.3 80C51串列接口简介145
6.3.1 串列接口结构与工作原理145
6.3.2 串列接口控制暂存器146
6.3.3 波特率的设定147
6.4 串列通信工作方式148
6.4.1 方式0148
6.4.2 方式1150
6.4.3 方式2和方式3151
6.5 串列接口套用举例152
6.5.1 用串列接口扩展I/O接口152
6.5.2 用串列接口进行异步通信153
6.5.3 单片机与PC间的通信154
6.6 80C51单片机之间的通信156
6.6.1 双机通信硬体电路156
6.6.2 双机通信软体编程1566.6.3 多机通信160
6.7 案例--单片机之间的双机通信162
6.7.1 功能和设计思路162
6.7.2 硬体电路设计163
6.7.3 程式流程及软体设计164
6.7.4 仿真和调试169
本章小结169
思考题与习题169
第7章 C51程式设计入门172
7.1 C51的数据与运算172
7.1.1 C51的数据类型172
7.1.2 C51的数据存储类型173
7.1.3 C51的数据存储模式174
7.1.4 C51的运算符175
7.2 数组、指针和结构177
7.2.1 数组177
7.2.2 指针178
7.2.3 结构179
7.3 C51的程式设计180
7.3.1 C51的程式结构180
7.3.2 C51流程控制语句181
7.3.3 函式的定义与调用185
7.3.4 C51中调用彙编程式188
7.4 51单片机内部资源的C51编程189
7.4.1 中断的C51编程189
7.4.2 定时器/计数器的C51编程190
7.4.3 串列接口的C51编程192
7.5 Keil C51程式开发基本步骤194
7.6 案例--简易红外报警器194
7.6.1 功能和设计思路194
7.6.2 硬体电路设计195
7.6.3 程式流程及软体设计196
7.6.4 仿真和调试197
本章小结197
思考题与习题197第8章 单片机系统扩展200
8.1 系统扩展概述200
8.1.1 简介200
8.1.2 扩展系统汇流排结构200
8.1.3 地址的解码202
8.2 存储器的扩展205
8.2.1 常用存储器扩展晶片205
8.2.2 程式存储器的扩展与设计208
8.2.3 数据存储器的扩展与设计211
8.3 并行I/O接口的扩展214
8.3.1 简单的并行I/O接口扩展215
8.3.2 可程式I/O接口电路扩展218
8.4 串列扩展概述230
8.4.1 串列扩展特点230
8.4.2 串列扩展分类230
8.4.3 单片机串列扩展的虚拟技术233
8.5 I?2C汇流排233
8.5.1 I?2C汇流排基础233
8.5.2 I?2C汇流排基本工作原理234
8.5.3 80C51与I?2C汇流排晶片接口程式设计237
8.6 案例--记忆训练器239
8.6.1 功能和设计思路239
8.6.2 硬体电路设计239
8.6.3 程式流程及软体设计240
8.6.4 仿真和调试243
本章小结243
思考题与习题244
第9章 单片机接口技术246
9.1 概述246
9.1.1 单片机的接口信号和编址方法246
9.1.2 单片机与外设的数据交换方式247
9.2 单片机与键盘接口248
9.2.1 键盘工作原理 248
9.2.2 独立式按键249
9.2.3 矩阵式按键 251
9.3 单片机与显示器接口 2569.3.1 LED显示和接口 256
9.3.2 可程式键盘/显示器接口--Intel 8279 262
9.3.3 LED大萤幕显示 271
9.3.4 LCD液晶显示和接口 274
9.4 A/D转换器接口281
9.4.1 A/D转换器概述 281
9.4.2 典型A/D转换器晶片ADC0809 283
9.4.3 80C51单片机与ADC0809接口 284
9.5 D/A转换器接口286
9.5.1 D/A转换器概述 286
9.5.2 典型D/A转换器晶片DAC0832 287
9.5.3 DAC0832单缓冲工作方式接口与套用289
9.5.4 DAC0832双缓冲工作方式接口与套用291
9.6 步进电动机与单片机的接口293
9.6.1 步进电动机的控制原理293
9.6.2 步进电动机的单片机控制295
9.7 案例--密码锁的设计297
9.7.1 功能和设计思路297
9.7.2 硬体电路设计297
9.7.3 程式流程及软体设计298
9.7.4 仿真和调试300
本章小结301
思考题与习题301
第10章 基础实训303
10.1 单片机基础知识303
10.1.1 套用系统开发过程演示303
10.1.2 仿真器和烧录器的使用304
10.2 80C51单片机的内部结构305
10.2.1 片上资源认知305
10.2.2 闪烁灯控制306
10.3 80C51单片机指令系统307
10.3.1 定址方式练习307
10.3.2 数据传送程式练习308
10.3.3 算术逻辑指令练习309
10.3.4 其他功能指令练习311
10.4 彙编语言程式设计313
10.4.1 分支和循环程式练习31310.4.2 查表程式练习314
10.4.3 查找程式练习316
10.4.4 数码管显示317
10.5 单片机的中断系统及定时器/计数器318
10.5.1 中断控制318
10.5.2 方波发生器320
10.6 80C51的串列接口及串列通信技术323
10.6.1 单片机与PC通信323
10.6.2 双机通信325
10.7 C51程式设计入门327
10.7.1 I/O位操作套用327
10.7.2 定时器套用328
10.7.3 串列中断套用329
10.8 单片机系统扩展331
10.8.1 片外RAM数据传送331
10.8.2 简单I/O接口扩展332
10.9 单片机接口技术333
10.9.1 A/D转换333
10.9.2 D/A转换336
10.10 综合实训338
10.10.1 按键显示控制338
10.10.2 步进电动机的控制340
10.10.3 数字时钟344
10.10.4 调光灯的设计351
10.10.5 火灾报警控制354
附录 思考题与习题参考答案357参考文献375
1.1 单片机概述1
1.1.1 微处理器、微型计算机和单片机的概念1
1.1.2 单片机的发展状况2
1.1.3 单片机的特点3
1.1.4 单片机的套用3
1.1.5 常用单片机系列产品4
1.2 数制与编码7
1.2.1 数制7
1.2.2 编码12
1.2.3 计算机中带符号数的表示14
1.3 单片机套用开发系统15
1.3.1 开发系统的功能15
1.3.2 开发过程17
1.4 单片机开发快速入门17
1.4.1 μVision集成开发环境简介18
1.4.2 工程建立和编译的基本步骤21
1.4.3 仿真器的使用22
1.4.4 编程器的使用23
1.5 案例--点亮发光二极体23
1.5.1 功能和设计思路23
1.5.2 硬体电路设计24
1.5.3 程式流程及软体设计24
1.5.4 仿真和调试24
本章小结25
思考题与习题25
第2章 80C51单片机的内部结构27
2.1 80C51单片机的基本结构27
2.1.1 80C51系列概述27
2.1.2 80C51单片机的基本结构28
2.1.3 引脚及封装29
2.2 中央处理器30
2.2.1 运算器30
2.2.2 控制器32
2.2.3 CPU的工作流程33
2.3 存储器34
2.3.1 程式存储器35
2.3.2 数据存储器35
2.3.3 特殊功能暂存器37
2.4 时钟电路和时序38
2.4.1 时钟电路38
2.4.2 基本时序单位38
2.4.3 80C51的典型时序39
2.5 复位电路40
2.5.1 复位电路40
2.5.2 单片机复位后的状态41
2.6 并行输入/输出连线埠42
2.6.1 P0口的位结构42
2.6.2 P1口的位结构43
2.6.3 P2口的位结构44
2.6.4 P3口的位结构44
2.7 80C51单片机的低功耗方式45
2.7.1 电源控制暂存器45
2.7.2 待机方式46
2.7.3 掉电方式46
2.8 案例--霓虹灯控制46
2.8.1 功能和设计思路46
2.8.2 硬体电路设计47
2.8.3 程式流程及软体设计47
2.8.4 仿真和调试49
本章小结49
思考题与习题50第3章 80C51单片机的指令系统53
3.1 指令系统简介53
3.1.1 指令的格式53
3.1.2 指令的三种表示形式 53
3.1.3 指令的位元组数54
3.1.4 指令的分类55
3.2 定址方式55
3.2.1 符号约定55
3.2.2 定址方式说明55
3.3 80C51指令系统60
3.3.1 数据传送类指令 60
3.3.2 算术运算类指令 64
3.3.3 逻辑操作类指令 69
3.3.4 控制转移类指令71
3.3.5 位操作类指令 77
3.4 案例--霓虹灯的控制78
3.4.1 功能和设计思路78
3.4.2 硬体电路设计79
3.4.3 程式流程及软体设计79
3.4.4 仿真和调试81
本章小结82
思考题与习题82
第4章 彙编语言程式设计基础86
4.1 彙编语言源程式的设计与彙编86
4.1.1 程式设计步骤86
4.1.2 源程式的彙编87
4.1.3 伪指令 87
4.2 彙编语言程式设计90
4.2.1 顺序程式设计 90
4.2.2 分支程式设计91
4.2.3 循环程式设计92
4.2.4 子程式设计94
4.3 实用程式举例96
4.3.1 延时96
4.3.2 代码转换 97
4.3.3 数据处理 1004.3.4 算术运算 103
4.3.5 组合逻辑设计 106
4.4 案例--信号灯的控制107
4.4.1 功能和设计思路107
4.4.2 硬体电路设计107
4.4.3 程式流程及软体设计108
4.4.4 仿真和调试108
本章小结109
思考题与习题109
第5章 80C51的中断系统及定时器/计数器112
5.1 中断概述112
5.1.1 中断的特点112
5.1.2 中断的基本概念112
5.1.3 中断的过程113
5.1.4 中断嵌套114
5.2 80C51中断系统114
5.2.1 中断源及中断向量地址114
5.2.2 中断系统结构 115
5.2.3 中断标誌与控制 116
5.2.4 中断请求的回响、撤除及返回118
5.3 中断系统的套用120
5.3.1 中断系统初始化120
5.3.2 中断服务子程式121
5.4 定时器/计数器T0、T1概述121
5.4.1 定时器/计数器T0、T1的结构 121
5.4.2 定时器/计数器的原理 122
5.5 定时器/计数器的控制方法122
5.5.1 定时器/计数器暂存器122
5.5.2 定时器/计数器的初始化123
5.5.3 定时器/计数器初值的确定方法 124
5.6 定时器/计数器T0、T1的工作方式124
5.6.1 方式0124
5.6.2 方式1125
5.6.3 方式2125
5.6.4 方式3126
5.7 定时器/计数器T0、T1套用举例127
5.7.1 定时器套用举例1275.7.2 计数器套用举例 129
5.7.3 门控位套用举例130
5.8 案例--四人抢答器131
5.8.1 功能和设计思路131
5.8.2 硬体电路设计131
5.8.3 程式流程及软体设计131
5.8.4 仿真和调试134
本章小结134
思考题与习题135
第6章 80C51的串列接口及串列通信技术138
6.1 串列通信概述138
6.1.1 同步通信和异步通信方式138
6.1.2 串列通信的数据传输速率139
6.1.3 波特率和收/发时钟140
6.1.4 单工、半双工、全双工工作方式140
6.1.5 信号的调製与解调140
6.1.6 差错检测和校正141
6.1.7 串列通信接口电路141
6.2 串列通信汇流排标準及其接口142
6.2.1 RS-232C接口142
6.2.2 RS-449、RS-422A、RS-423A标準接口144
6.2.3 20mA电流环串列接口144
6.3 80C51串列接口简介145
6.3.1 串列接口结构与工作原理145
6.3.2 串列接口控制暂存器146
6.3.3 波特率的设定147
6.4 串列通信工作方式148
6.4.1 方式0148
6.4.2 方式1150
6.4.3 方式2和方式3151
6.5 串列接口套用举例152
6.5.1 用串列接口扩展I/O接口152
6.5.2 用串列接口进行异步通信153
6.5.3 单片机与PC间的通信154
6.6 80C51单片机之间的通信156
6.6.1 双机通信硬体电路156
6.6.2 双机通信软体编程1566.6.3 多机通信160
6.7 案例--单片机之间的双机通信162
6.7.1 功能和设计思路162
6.7.2 硬体电路设计163
6.7.3 程式流程及软体设计164
6.7.4 仿真和调试169
本章小结169
思考题与习题169
第7章 C51程式设计入门172
7.1 C51的数据与运算172
7.1.1 C51的数据类型172
7.1.2 C51的数据存储类型173
7.1.3 C51的数据存储模式174
7.1.4 C51的运算符175
7.2 数组、指针和结构177
7.2.1 数组177
7.2.2 指针178
7.2.3 结构179
7.3 C51的程式设计180
7.3.1 C51的程式结构180
7.3.2 C51流程控制语句181
7.3.3 函式的定义与调用185
7.3.4 C51中调用彙编程式188
7.4 51单片机内部资源的C51编程189
7.4.1 中断的C51编程189
7.4.2 定时器/计数器的C51编程190
7.4.3 串列接口的C51编程192
7.5 Keil C51程式开发基本步骤194
7.6 案例--简易红外报警器194
7.6.1 功能和设计思路194
7.6.2 硬体电路设计195
7.6.3 程式流程及软体设计196
7.6.4 仿真和调试197
本章小结197
思考题与习题197第8章 单片机系统扩展200
8.1 系统扩展概述200
8.1.1 简介200
8.1.2 扩展系统汇流排结构200
8.1.3 地址的解码202
8.2 存储器的扩展205
8.2.1 常用存储器扩展晶片205
8.2.2 程式存储器的扩展与设计208
8.2.3 数据存储器的扩展与设计211
8.3 并行I/O接口的扩展214
8.3.1 简单的并行I/O接口扩展215
8.3.2 可程式I/O接口电路扩展218
8.4 串列扩展概述230
8.4.1 串列扩展特点230
8.4.2 串列扩展分类230
8.4.3 单片机串列扩展的虚拟技术233
8.5 I?2C汇流排233
8.5.1 I?2C汇流排基础233
8.5.2 I?2C汇流排基本工作原理234
8.5.3 80C51与I?2C汇流排晶片接口程式设计237
8.6 案例--记忆训练器239
8.6.1 功能和设计思路239
8.6.2 硬体电路设计239
8.6.3 程式流程及软体设计240
8.6.4 仿真和调试243
本章小结243
思考题与习题244
第9章 单片机接口技术246
9.1 概述246
9.1.1 单片机的接口信号和编址方法246
9.1.2 单片机与外设的数据交换方式247
9.2 单片机与键盘接口248
9.2.1 键盘工作原理 248
9.2.2 独立式按键249
9.2.3 矩阵式按键 251
9.3 单片机与显示器接口 2569.3.1 LED显示和接口 256
9.3.2 可程式键盘/显示器接口--Intel 8279 262
9.3.3 LED大萤幕显示 271
9.3.4 LCD液晶显示和接口 274
9.4 A/D转换器接口281
9.4.1 A/D转换器概述 281
9.4.2 典型A/D转换器晶片ADC0809 283
9.4.3 80C51单片机与ADC0809接口 284
9.5 D/A转换器接口286
9.5.1 D/A转换器概述 286
9.5.2 典型D/A转换器晶片DAC0832 287
9.5.3 DAC0832单缓冲工作方式接口与套用289
9.5.4 DAC0832双缓冲工作方式接口与套用291
9.6 步进电动机与单片机的接口293
9.6.1 步进电动机的控制原理293
9.6.2 步进电动机的单片机控制295
9.7 案例--密码锁的设计297
9.7.1 功能和设计思路297
9.7.2 硬体电路设计297
9.7.3 程式流程及软体设计298
9.7.4 仿真和调试300
本章小结301
思考题与习题301
第10章 基础实训303
10.1 单片机基础知识303
10.1.1 套用系统开发过程演示303
10.1.2 仿真器和烧录器的使用304
10.2 80C51单片机的内部结构305
10.2.1 片上资源认知305
10.2.2 闪烁灯控制306
10.3 80C51单片机指令系统307
10.3.1 定址方式练习307
10.3.2 数据传送程式练习308
10.3.3 算术逻辑指令练习309
10.3.4 其他功能指令练习311
10.4 彙编语言程式设计313
10.4.1 分支和循环程式练习31310.4.2 查表程式练习314
10.4.3 查找程式练习316
10.4.4 数码管显示317
10.5 单片机的中断系统及定时器/计数器318
10.5.1 中断控制318
10.5.2 方波发生器320
10.6 80C51的串列接口及串列通信技术323
10.6.1 单片机与PC通信323
10.6.2 双机通信325
10.7 C51程式设计入门327
10.7.1 I/O位操作套用327
10.7.2 定时器套用328
10.7.3 串列中断套用329
10.8 单片机系统扩展331
10.8.1 片外RAM数据传送331
10.8.2 简单I/O接口扩展332
10.9 单片机接口技术333
10.9.1 A/D转换333
10.9.2 D/A转换336
10.10 综合实训338
10.10.1 按键显示控制338
10.10.2 步进电动机的控制340
10.10.3 数字时钟344
10.10.4 调光灯的设计351
10.10.5 火灾报警控制354
附录 思考题与习题参考答案357参考文献375