零点起飞零点起飞学51单片机 本书特色
《零点起飞学51单片机》以 51系列单片机原理和应用为主线,介绍单片机的工作原理、内部各功能部件的结构、汇编指令系统、 C51语言编程,并以此为基础,采用汇编语言和 C语言相对照的编写方式,重点讲解 51系列单片机内部资源及应用编程、 51单片机的接口技术,并精心设计大量例题和多种解题思路。精选具有代表性的真实项目,包括温度传感器、红外遥控、直流电动机控制等内容。 《零点起飞学51单片机》既可作为普通高等院校通信工程、电子信息、自动化、电气工程、计算机、机电一体化、测控技术和仪器仪表等专业的教材,也可作为广大单片机应用开发技术人员的参考资料和培训教材。
零点起飞零点起飞学51单片机 内容简介
《零点起飞学51单片机》以 51系列单片机原理和应用为主线,介绍单片机的工作原理、内部各功能部件的结构、汇编指令系统、 C51语言编程,并以此为基础,采用汇编语言和 C语言相对照的编写方式,重点讲解 51系列单片机内部资源及应用编程、 51单片机的接口技术,并精心设计大量例题和多种解题思路。精选具有代表性的真实项目,包括温度传感器、红外遥控、直流电动机控制等内容。
《零点起飞学51单片机》既可作为普通高等院校通信工程、电子信息、自动化、电气工程、计算机、机电一体化、测控技术和仪器仪表等专业的教材,也可作为广大单片机应用开发技术人员的参考资料和培训教材。
零点起飞零点起飞学51单片机 目录
目 录
第 1章单片机系统概述 . 1
1.1 微型计算机概述 .1
1.2 单片机的发展历史 .2
1.3 单片机的分类 .4
1.4 单片机的发展趋势 .4
1.5 单片机的应用 .7
1.6 主流单片机产品 .9
1.6.1 Intel公司的 MCS-51系列单片机 .9
1.6.2 Atmel公司的 AVR单片机10
1.6.3 Microchip公司的 PIC单片机 .11
第 2章单片机的硬件结构 12
2.1 单片机的内部结构 .12
2.2 51单片机的中央处理器 14
2.3 单片机的工作过程 .16
2.4 51系列单片机的引脚及功能 17
2.5 存储器结构 .20
2.5.1 存储器地址分配 .20
2.5.2 程序存储器 .21
2.5.3 片内数据存储器 .22
2.5.4 片外数据存储器 .30
2.6 时钟电路和 CPU时序.30
2.6.1 时钟电路 .30
2.6.2 时序单位 .31
2.6.3 典型指令时序 .32
2.7 单片机的工作方式 .34
2.7.1 复位方式 .35
2.7.2 程序执行方式 .36
2.7.3 低功耗工作模式 .37
2.8 思考与练习 .38
第 3章指令系统 .39
3.1单片机开发语言概述 .39
3.2指令格式和寻址方式 .40
3.2.1汇编语言指令格式 .41
3.2.2寻址方式 .41
3.3 80C51单片机的指令系统 .46
3.3.1数据传送指令 .47
3.3.2算术运算类指令 .54
3.3.3逻辑运算类指令 .62
3.3.4控制转移指令 .66
3.3.5位操作指令 .73
3.4 伪指令 .76
3.5汇编语言程序设计 .79
3.5.1顺序程序设计 .79
3.5.2查表程序设计 .80
3.5.3分支程序设计 .83
3.5.4循环程序设计 .89
3.5.5子程序设计 .92
3.6汇编语言程序设计实例 .95
3.6.1巡回检测报警装置 .95
3.6.2单片机测温系统 .95
3.6.3码制转换 .96
3.6.4排序问题 .102
3.7 思考与练习 .105
第 4章单片机 C51程序设计 107
4.1 C51基础知识 .107
4.2数据类型 .110
4.2.1 C语言数据类型 .110
4.2.2 常量 .111
4.2.3 变量 .114
4.3运算符与表达式 .122
4.3.1赋值运算符与表达式 .122
4.3.2算术运算符与表达式 .122
4.3.3逻辑运算符与表达式 .123
4.3.4关系运算符与表达式 .124
4.3.5位运算符与表达式 .125
4.3.6逗号运算符与表达式 .125
4.3.7条件运算符 .126
4.3.8长度运算符 .126
4.3.9指针运算符 .126
4.3.10复合赋值运算符与表达式 .127
4.3.11类型转换运算符 .127
4.3.12运算符优先级和结合性 .128
4.4构造数据类型 .129
4.4.1 数组 .129
4.4.2 指针 .135
4.4.3 结构 .138
4.4.4 共用体(联合).141
4.4.5 枚举 .142
·IV·
4.5基本语句和程序流程结构 .143
4.5.1顺序语句和顺序流程结构 .143
4.5.2选择语句和选择流程结构 .146
4.5.3循环语句和循环流程结构 .150
4.5.4循环结构 .156
4.6 函数 .158
4.6.1函数的分类 .158
4.6.2函数的定义 .158
4.6.3 函数的参数和函数的值 .160
4.6.4函数的调用 .162
4.6.5数组作为函数的参数 .165
4.7 思考与练习 .165
第 5章 51单片机并行 I/O端口. 167
5.1 I/O端口工作原理 .167
5.1.1 P0口167
5.1.2 P1口169
5.1.3 P2口170
5.1.4 P3口171
5.2端口的负载能力和接口要求 .172
5.3 并行 I/O应用举例 173
5.4 思考与练习 .176
第 6章 51单片机中断系统 . 177
6.1中断概念 .177
6.2中断系统结构及中断控制 .178
6.2.1中断系统结构 .178
6.2.2中断类型 .178
6.2.3中断控制 .180
6.2.4多级中断和中断嵌套 .182
6.3中断处理过程 .183
6.4中断响应时间 .185
6.5中断请求的撤销 .186
6.6中断程序的设计 .187
6.6.1汇编语言中断程序 .188
6.6.2 C语言中断程序 .189
6.7 思考与练习 .192
第 7章 MCS-51单片机定时器 /计数器 193
7.1 定时器 /计数器的结构和功能 193
7.2 定时器 /计数器相关寄存器 195
7.3 定时器 /计数器的工作方式 196
7.4 定时器 /计数器的编程 204
7.5 思考与练习 .207
·V·
第 8章 51单片机串行接口 . 208
8.1串行通信基础 .208
8.1.1 异步通信 .208
8.1.2 同步通信 .210
8.1.3串行通信的传输方向 .210
8.1.4串行通信的传输速率 .211
8.2 51单片机串行口 212
8.2.1串行口结构 .212
8.2.2串行数据缓冲寄存器 SBUF 213
8.2.3串行口控制寄存器 SCON .213
8.2.4电源控制寄存器 PCON .215
8.2.5波特率的设定 .216
8.3串行口工作方式 .217
8.3.1 方式 0218
8.3.2 方式 1219
8.3.3 方式 2220
8.3.4 方式 3221
8.4串行口应用实例 .221
8.4.1串行口方式 0应用.222
8.4.2串行口方式 1应用.224
8.4.3串行口方式 2和方式 3应用.226
8.5 思考与练习 .227
第 9章并行 I/O接口的扩展 . 229
9.1 I/O接口电路功能 .229
9.2 简单并行 I/O接口扩展 231
9.2.1简单并行输入口扩展 .231
9.2.2简单输出口扩展 .232
9.3可编程并行接口芯片 8255234
9.3.1 8255A芯片介绍 .234
9.3.2 8255A的初始化编程 .239
9.3.3单片机和 8255A的接口及程序设计 239
9.4 思考与练习 .242
第 10章存储器的扩展 243
10.1单片机系统总线结构 .243
10.2地址译码方法 .245
10.2.1编址方法.245
10.2.2 74LS138(3-8译码器)246
10.2.3 可编程逻辑器件 .249
10.3程序存储器扩展 .252
10.3.1常用程序存储器芯片 .252
10.3.2 典型的 EPROM接口电路 .255
10.4数据存储器扩展 .259
10.4.1 常用的静态 RAM(SRAM)芯片260
·VI·
10.4.2 典型的外扩数据存储器的接口电路 .262
10.5 思考与练习 .264
第 11章输入设备 . 265
11.1 键盘概述 .265
11.1.1按键去抖动 .265
11.1.2键盘的分类 .267
11.2 键盘与单片机的接口 .270
11.2.1 独立式键盘与单片机的接口 .270
11.2.2 矩阵式键盘与单片机的接口 .274
11.2.3 串行口扩展键盘接口 .277
11.3 思考与练习 .280
第 12章输出设备 . 281
12.1发光二极管 .281
12.2 LED接口282
12.2.1 LED的结构与工作原理 283
12.2.2 LED的工作方式 284
12.2.3 LED数码管的选择和驱动 286
12.2.4 数码管的软件译码和硬件译码 .286
12.2.5数码管应用设计 .287
12.3 LCD接口290
12.3.1 LCD工作原理 290
12.3.2 OCM12864液晶显示模块 .292
12.3.3 LCD应用举例 296
12.4 8279可编程键盘 /显示器接口芯片 .303
12.4.1 8279可编程芯片简介 303
12.4.2 8279与单片机接口应用举例 310
12.5 打印输出设备 .312
12.5.1 微型打印机概述 .312
12.5.2 微型打印机的应用 .317
12.6 思考与练习 .320
第 13章 A/D和 D/A转换器 321
13.1 A/D转换器.321
13.1.1 A/D转换器的主要参数 .321
13.1.2 逐次逼近式 A/D转换器 ADC0809 .322
13.1.3 串行 A/D转换器 ADC0832.327
13.2 D/A转换器.329
13.2.1 D/A转换器原理 .330
13.2.2 D/A转换器的主要技术指标 .331
13.2.3 并行 D/A转换器 DAC0832.332
13.2.4 串行 D/A转换器 TLV5618339
13.3 思考与练习 .342
·VII·
第 14章应用实战案例 343
14.1 仿真软件 .343
14.1.1 新建文件和项目 .343
14.1.2 下载程序.344
14.2 温度传感器 DS18B20 345
14.2.1 单总线概述 .345
14.2.2 单总线器件——温度传感器 DS18B20.345
14.2.3 应用电路设计 .352
14.3 红外遥控 .356
14.4 直流电动机控制 .362
14.4.1 直流电动机工作原理及调速方法 .362
14.4.2 PWM调速原理 362
14.4.3 应用电路设计 .363
14.4.4 软件程序设计 .364
14.5 RS-232与 VB串行通信 369
14.5.1 VB串行通信简介 .369
13.5.2 应用电路设计 .370
14.5.3 软件程序设计 .370
14.6 语音录放控制 .373
14.6.1 ISD2560引脚功能 373
14.6.2 应用电路设计 .375
14.6.3 软件程序设计 .375
14.7 思考与练习 .377
附录 A ASCII码字符表 .378
附录 B MCS-51系列单片机指令一览表 379
附录 C C51库函数.384
·VIII·