标题：51单片机编程基础与开发实例详解
图书信息
出版社: 人民邮电出版社; 第1版 (2008年11月1日)
平装: 332页
正文语种: 简体中文
开本: 16
ISBN: 9787115186409
条形码: 9787115186409
尺寸: 25.6 x 19 x 2.2 cm
重量: 540 g
内容简介
《51单片机编程基础与开发实例详解》系统讲解MCS-51单片机的原理及应用，主要内容包括MCS-51单片机基础知识、C51程序设计基础、单片机指令系统、Keil C51简介及单片机软件程序设计过程、MCS-51单片机程序开发流程、C51应用系统设计，以及极具实用参考价值的开发实例，这些例子分别是数码显示管LED、温度采集与控制、实时时钟、电子天平、步进电机驱动、液晶显示模块、串行通信、无线传输模块设计、热敏微型打印机设计、超声波测距、红外线遥控。《51单片机编程基础与开发实例详解》以经典的MCS-51系列单片机为平台，按照“基础知识—实例操作—深入提高”的写作思路进行编写，将基础知识与实例相结合，读者可以边学边练，在掌握基础知识的同时，还能提高实际操作能力，真正做到学以致用。
目录
编程基础篇
第1章　单片机概述　3
1.1　单片机介绍　3
1.1.1　单片机的历史　3
1.1.2　单片机的应用　4
1.2　单片机的分类　5
1.2.1　按厂商分类　5
1.2.2　按位数分类　6
1.3　MCS-51单片机与C语言介绍　7
1.4　本章小结　9
第2章　MCS-51单片机基础知识　10
2.1　MCS-51单片机概述　10
2.2　MCS-51单片机结构原理　10
2.2.1　MCS-51单片机的基本组成　10
2.2.2　MCS-51单片机的内部结构　11
2.2.3　MCS-51单片机的中央处理单元　11
2.2.4　MCS-51单片机的存储器结构　13
2.2.5　MCS-51单片机的输入/输出接口　18
2.3　MCS-51单片机引脚描述　20
2.3.1　外部引脚　20
2.3.2　片外总线结构　21
2.4　MCS-51单片机存储器组织　22
2.4.1　程序存储器配置　22
2.4.2　数据存储器配置　22
2.4.3　特殊功能寄存器　23
2.5　MCS-51单片机中断系统　23
2.5.1　MCS-51单片机的中断源　24
2.5.2　中断控制的专用寄存器　25
2.6　MCS-51单片机定时器/计数器　27
2.7　MCS-51单片机串行口　29
2.8　本章小结　31
第3章　C51程序设计基础　32
3.1　基本概念　32
3.1.1　C语言基本介绍　32
3.1.2　MCS-51的C语言编译器　33
3.1.3　C51的程序结构　33
3.1.4　C51的标识符和关键字　35
3.1.5　常量与变量　37
3.2　数据类型、运算符和表达式　41
3.2.1　数据类型　41
3.2.2　运算符和表达式　42
3.3　程序控制语句　46
3.3.1　顺序结构　46
3.3.2　选择结构　47
3.3.3　循环结构　49
3.4　函数与程序结构　51
3.4.1　函数的定义　52
3.4.2　函数声明　53
3.4.3　函数的调用　56
3.5　数组　62
3.5.1　数组的基本概念　62
3.5.2　声明数组　63
3.5.3　将数组传递给函数　63
3.5.4　数组的初始化　63
3.5.5　多维数组　64
3.5.6　指针数组　68
3.6　指针　68
3.6.1　指针的变量声明与初始化　69
3.6.2　指针运算符　69
3.6.3　指针常量　70
3.6.4　指针的指针　70
3.6.5　指针的运算　71
3.7　结构体与共用体　72
3.7.1　结构体　72
3.7.2　共用体　76
3.8　本章小结　78
第4章　单片机指令系统　79
4.1　单片机编程语言概述　79
4.1.1　编程语言概述　80
4.1.2　单片机使用的编程语言　80
4.1.3　MCS-51汇编语言的语句结构　80
4.2　MCS-51单片机指令系统　81
4.2.1　数据传送指令　84
4.2.2　控制转移指令　88
4.2.3　逻辑运算及移位指令　90
4.2.4　算数运算指令　92
4.2.5　布尔操作指令　95
4.3　常用的伪指令　97
4.3.1　伪指令与MCS-51指令的不同点　97
4.3.2　常用的伪指令　97
4.4　本章小结　99
第5章　Keil C51简介及单片机软件程序设计过程　100
5.1　Keil C51概述　100
5.1.1　Keil C51软件简介　100
5.1.2　安装Keil C51软件　101
5.1.3　Keil C51 uVision2软件功能简介　103
5.2　Keil C51工程项目的编译及运行　107
5.2.1　工程的建立　107
5.2.2　工程的设置　108
5.2.3　源文件的建立　111
5.2.4　编译和链接项目　112
5.2.5　运行调试观察结果　113
5.3　Keil C51调试技巧　113
5.3.1　设置和删除断点的方法　113
5.3.2　查看和修改寄存器的内容　114
5.3.3　观察和修改变量　114
5.3.4　观察存储器区域　114
5.3.5　串行口的使用方法　115
5.3.6　定时器/计数器的使用方法　116
5.3.7　外部中断的使用方法　116
5.4　本章小结　117
第6章　MCS-51单片机程序开发流程　118
6.1　编写一个简单的单片机程序　118
6.1.1　目的　118
6.1.2　工作原理　118
6.1.3　用汇编语言编写程序　119
6.2　程序编写过程　122
6.2.1　编写源程序　122
6.2.2　创建项目　123
6.2.3　编译/汇编　123
6.2.4　输出文件　124
6.3　把目标文件写入单片机　124
6.3.1　选择单片机型号　124
6.3.2　进行擦除　124
6.3.3　写入文件　125
6.4　使用实验板进行实验　126
6.5　本章小结　127
开发实例篇
第7章　C51应用系统设计　131
7.1　应用系统概述　131
7.2　应用系统的硬件设计　132
7.2.1　单片机系统的扩展部分设计　133
7.2.2　各功能模块的设计　133
7.2.3　工艺设计　133
7.3　最小系统板实例　133
7.3.1　最小系统的构成　134
7.3.2　电源组件　135
7.3.3　RS-232串口通信　135
7.3.4　键盘组件　136
7.3.5　8255芯片　139
7.3.6　键盘电路设计　141
7.3.7　4位LED数码管显示　144
7.3.8　可编程的键盘和显示接口芯片8279　145
7.4　本章小结　151
第8章　数码显示管LED　152
8.1　LED显示器接口原理　152
8.1.1　LED显示器结构　152
8.1.2　LED显示器工作原理　153
8.1.3　8段数码管的驱动　154
8.2　硬件电路设计　156
8.2.1　CPU输出端口控制的4位数码显示电路　156
8.2.2　基于CD4511芯片的数码显示电路　156
8.3　软件流程　159
8.4　程序设计　160
8.4.1　CPU输出端口控制的数码显示程序　160
8.4.2　基于CD4511芯片的数码显示程序　161
8.5　本章小结　162
第9章　温度采集与控制　163
9.1　实例分析　163
9.2　设计思路分析　163
9.2.1　DS18B20温度传感器的工作原理　164
9.2.2　DS18B20温度传感器的数据处理与传输　165
9.3　硬件电路设计　165
9.3.1　DS18B20内部结构　165
9.3.2　DS18B20应用电路工作原理　169
9.3.3　DS18B20在温控系统中的应用　171
9.4　软件程序设计　172
9.4.1　程序命令时序　173
9.4.2　程序流程设计　175
9.4.3　参考程序　178
9.5　本章小结　181
第10章　实时时钟　183
10.1　实例说明　183
10.2　设计思路分析　184
10.2.1　电子钟程序设计　184
10.2.2　基于DS12C887芯片的实时日历时钟　187
10.3　硬件电路分析　187
10.3.1　受控引脚及功能　187
10.3.2　结构框图　189
10.3.3　电路原理及说明　189
10.4　软件程序设计　190
10.4.1　DS12C887芯片的内存空间　190
10.4.2　程序流程　194
10.4.3　参考程序　195
10.5　设计总结　197
第11章　电子天平　198
11.1　实例说明　198
11.2　设计思路　199
11.2.1　主要器件选取　199
11.2.2　工作原理　199
11.3　硬件电路设计　200
11.3.1　压力传感器与运放电路　200
11.3.2　A/D转换电路　202
11.3.3　定标　204
11.3.4　显示与键盘电路　205
11.4　软件程序设计　207
11.4.1　程序流程　207
11.4.2　参考程序　207
11.5　设计总结　214
第12章　步进电机驱动　215
12.1　实例分析　215
12.2　设计思路分析　216
12.2.1　步进电机工作原理　216
12.2.2　步进电机的控制　217
12.3　硬件电路设计　220
12.3.1　一般步进电机驱动电路　220
12.3.2　基于UCN5804芯片的步进电机驱动电路　222
12.3.3　基于ULN2003芯片的步进电机驱动电路　226
12.3.4　步进电机应用实例　229
12.4　软件设计　229
12.4.1　程序设计流程　229
12.4.2　参考程序　231
12.5　设计总结　234
第13章　液晶显示模块　235
13.1　实例说明　235
13.2　设计思路分析　236
13.2.1　液晶显示模块介绍　236
13.2.2　器件的选择　238
13.3　硬件电路分析　239
13.3.1　液晶显示工作原理　239
13.3.2　接口引脚功能　240
13.4　软件程序设计　241
13.4.1　功能说明及指令集　241
13.4.2　程序设计流程　249
13.4.3　字符代表码　249
13.4.4　参考程序　250
13.5　设计总结　257
第14章　串行通信　258
14.1　实例说明　258
14.2　设计思路分析　259
14.2.1　串行通信简介　259
14.2.2　上位机软件的选择　260
14.2.3　LabVIEW虚拟仪器特点　260
14.3　硬件电路设计　261
14.3.1　RS-232C标准　261
14.3.2　RS-232C转换电路方案选择　262
14.3.3　采用MAX3232的RS-232C转换电路　263
14.3.4　ADC0809电路设计　264
14.4　软件设计　264
14.4.1　总体流程设计　264
14.4.2　单片机软件设计　265
14.4.3　上位机软件设计　267
14.5　本章小结　272
第15章　无线传输模块设计　273
15.1　实例说明　273
15.2　设计思路　274
15.2.1　无线传输模块选择　274
15.2.2　无线通信芯片选取　275
15.2.3　无线传输模块特性　275
15.3　硬件电路设计　276
15.3.1　nRF401芯片说明　276
15.3.2　PTR2000芯片说明　277
15.3.3　单片机接口电路设计　278
15.3.4　RS-232电平转换电路设计　279
15.4　软件设计　280
15.4.1　通信协议　280
15.4.2　程序设计流程　281
15.4.3　参考程序　282
15.5　本章小结　286
第16章　热敏微型打印机设计　288
16.1　实例说明　288
16.2　设计思路　288
16.2.1　工作原理　289
16.2.2　主要器件选取　289
16.3　硬件电路设计　289
16.3.1　LTP1245热敏打印头　290
16.3.2　进纸步进电机控制　294
16.3.3　电路原理图及设计说明　296
16.4　软件程序设计　297
16.4.1　程序流程　297
16.4.2　字库的提取　299
16.4.3　参考程序　300
16.5　设计总结　304
第17章　超声波测距　305
17.1　实例说明　305
17.2　超声波传感器　306
17.2.1　T/R-40-XX系列　306
17.2.2　超声波测距原理及设计思路　307
17.3　硬件电路设计　308
17.3.1　显示电路　309
17.3.2　发射电路　309
17.3.3　接收电路　309
17.3.4　鉴相电路　311
17.3.5　最小系统电路　311
17.3.6　硬件的调试　312
17.4　软件程序设计　312
17.4.1　程序流程　312
17.4.2　参考程序　313
17.5　超声波测距的外界影响　317
17.6　本章小结　318
第18章　红外线遥控　319
18.1　实例说明　319
18.2　红外线遥控系统　320
18.2.1　红外线遥控系统的发射和接收部分　320
18.2.2　红外线遥控系统框图　320
18.2.3　红外遥控信号编码原理　321
18.2.4　红外线遥控编码芯片LC7461　321
18.3　硬件电路设计　325
18.3.1　硬件电路设计原理图与说明　325
18.3.2　硬件电路检测程序　326
18.4　软件程序设计　328
18.4.1　程序流程　328
18.4.2　参考程序　329
18.5　 红外线遥控编码　331
18.5.1　NEC编码标准　332
18.5.2　Philips的RC-5编码标准　332
18.5.3　其他编码类型　333
18.6　本章小结　333
参考文献　334