《单片机开发与典型工程项目实例详解》是2008年电子工业出版社出版的图书,作者是边海龙、孙永奎。本书关注开发实践,对用到的新器件做了详细介绍,并仔细讲解了抗干扰技术和软体的可靠性。既介绍设计原理、基本步骤和流程,还提供设计思路及代码注释,利用于读者理解和巩固知识点。
基本介绍
- 书名:单片机开发与典型工程项目实例详解
- 作者:边海龙、孙永奎
- ISBN:9787121067143
- 类别:程式设计
- 页数:360页
- 定价:45.00元
- 出版社:电子工业出版社
- 出版时间:2008-10-1
- 装帧:平装
- 开本:1/16
内容简介
围绕实践与经验,注重套用和实用,8大完整单片机开发项目,实用、典型,上手容易。
前言
随着大规模积体电路技术的发展,单片微型计算机也随之大发展,各种新颖的单片机层出不穷。单片机具有体积小、重量轻、套用灵活且价格低廉等特点,广泛地套用于人类生活的各个领域,成为当今科学技术现代化不可缺少的重要工具。人们迫切希望学习和套用单片机解决各自工作中碰到的技术问题。为此,我们编写了本书。
单片机系统的开发融合了硬体和软体的相关技术。要完成单片机系统的开发,用户不仅需要掌握编程技术,还需要针对实际套用选择合理的单片机晶片和外围器件,以此为基础,设计硬体电路。
通过具体的项目案例来学习单片机系统的开发是一条科学而且高效的途径。在项目案例的选择上,本书着重突出“套用”和“实用”的基本原则,项目案例来源于实践,具有代表性、技术领先性,以及套用的广泛性。基于这个原则,编者从多年实际项目案例出发,细緻讲解单片机项目的需求、设计原理、相关知识、单片机选型、电路设计、具体模组设计和编码实现,以使读者对单片机项目开发有系统的认识。
本书注重将多年的开发经验和技巧融合到具体项目案例的讲解中,为开发人员提供必要的知识积累,解决实际工程中的问题。在程式开发语言方面,本书儘量用简洁的语言来清晰阐述易于理解的概念和思路,并且附带程式流程图。同时,对程式代码作了细緻的中文注释,有利于读者举一反三,快速套用和提高。
内容简介
本书共15章,主要内容为:
第l章介绍了单片机开发的硬体基础,具体讲解单片机的内部结构、引脚功能和存储器组织等必要的知识。
第2章介绍单片机开发软环境,其中主要介绍了Keil C 51和Microchip的单片机的软体开发环境,讲解了单片机C语言开发基础,此外还讲解单片机混合编程的重要知识,为后期开发打基础。
第3章介绍了单片机系统的开发步骤,讲解开发的流程和思路,以及单片机项目开发的晶片选型等实用知识。第4章介绍了单片机系统中常用的数字滤波和简单的控制算法。
第5章到13章详细讲解单片机具体工程的实现,它们是键盘接口电路、城市交通指挥系统、IC卡读写系统的开发及其套用、阵列式LED显示屏、无刷直流电机控制、永磁同步电机控制、汽车行驶状态记录仪、USB-GPIB控制器的实现、抗干扰技术和可靠性在单片机套用系统设计中的重要性。
第14章、第15章从软体和硬体两个方面介绍了单片机系统的抗干扰技术。
书中的每个具体的工程均详细阐明了原理,具体的实现功能,并给出了相应的原理图和相关的代码以及注意事项和难点。
读者对象
本书配有光碟一张,包含全书所有项目案例的硬体原理图、程式代码、相关流程图,方便读者学习和使用,因此可作为单片机套用的初学者和广大科技人员的参考书。本书有助于读者採用单片机为各自所从事的学科解决实际问题。
图书特点
本书深入浅出、通俗易懂,并注重理论联繫实际,着重实际套用。具有如下显着的特点:
8大完整单片机开发项目,层层剖析单片机开发实践,快速掌握套用系统设计。
突出所选取内容的实用性、典型性。项目案例来自科研工作及实际工程,内容丰富、翔实。设计方案均为典型方案,有利于读者提高设计工作的效率。
细緻讲解设计原理和思路、基本开发流程和代码注释,方便读者理解和掌握知识。对于重点难点给予提示讲解,轻鬆学到更多。
关注开发实践,对系统设计用到的新器件做了详细的介绍,结合关注度高的USB开发和系统可靠性技术做了详细讲解。
书盘结合,快速提高学习效率。光碟中附带了硬体电路的设计图、程式代码和相关流程图,读者稍加修改就可以套用于自己的工作或者完成课题设计。
光碟内容
本书光碟包含所有项目案例相关的硬体电路设计图、程式代码和相关流程图,读者稍加修改便可套用于实际的工作或者自己的课题。光碟内容主要由3部分组成:
Protel电路设计图
程式代码
Visio流程图
致谢与分工
本书由边海龙、孙永奎任主编,参与编写的有陈勇、郑国玲、罗杨、周建华、张攀峰和王莅兵。姚新军负责前期的策划和后期质量监控。参与具体工作的还包括:王斌、万雷、张强林、许志清、陈鲲、余松等。成都易为科技有限责任公司负责全书的审校。本书在编写过程中还受到电子科技大学教授的关心和指导。非常感谢电子工业出版社老师的辛勤努力,使本书在第一时间与读者见面。
由于编者水平有限,书中难免有疏漏和不足之处,恳请广大读者批评指正jsj@phei.com.cn。
目录
第1章 单片机开发的硬体基础 1
1.1 单片机的套用和特点 1
1.1.1 单片机的套用 1
1.1.2 主流单片机的种类及特点 3
1.2 MCS-51系列单片机的内部结构 7
1.3 MCS-51单片机的引脚功能与时序 9
1.3.1 MCS-51系列单片机引脚说明 10
1.3.2 MCS-51单片机的时序 16
1.4 MCS-51单片机的存储器组织 17
1.4.1 程式存储器 18
1.4.2 数据存储器 19
1.4.3 特殊功能暂存器 21
1.5 单片机最小系统 24
1.5.1 单片机最小系统 24
1.5.2 彩灯控制器的设计 25
1.5.3 顺序控制器的设计 27
1.6 本章小结 29
第2章 单片机开发软环境 30
2.1 单片机C语言宏配置介绍 30
2.1.1 处理器的配置 30
2.1.2 ID区域 31
2.1.3 EEPROM数据 31
2.2 单片机数据结构 31
2.2.1 类型限定词 32
2.2.2 常数 33
2.2.3 变数 34
2.2.4 构造数据类型 38
2.2.5 函式 46
2.2.6 中断 49
2.2.7 C语言和彙编语言的嵌套使用 53
2.2.8 伪指令 54
2.3 MPLAB IDE编译器简介 57
2.3.1 MPLAB工程管理器(MPLAB Project Manager) 57
2.3.2 MPLAB文本编辑器(MPLAB Editor) 57
2.3.3 MPLAB软体仿真器(MPLAB-SIM Simulator) 58
2.3.4 MPLAB线上仿真器(MPLAB-ICE Simulator) 58
2.4 MPLAB IDE的安装和使用 58
2.4.1 MPLAB IDE的安装要求 58
2.4.2 MPLAB IDE的使用 59
2.4.3 实例套用 59
2.4.4 MPLAB IDE中的工程 62
2.4.5 MPLAB IDE工程的编译 65
2.4.6 MPLAB IDE的软体仿真 66
2.5 MCC18基础 68
2.5.1 MCC18的安装目录浏览 68
2.5.2 MCC18的语言执行流程 70
2.5.3 MCC18举例 70
2.5.4 MCC18的编译环境 72
2.5.5 MCC18和单片机的比较 73
2.6 单片机的混合开发 74
2.6.1 C51和彙编语言的性能比较 74
2.6.2 C51和彙编语言的混合编程 74
2.7 本章小结 79
第3章 单片机开发工程基础 80
3.1 单片机套用系统设计的流程 80
3.2 单片机套用系统两设计原则 82
3.2.1 硬体系统设计原则 82
3.2.2 套用软体设计原则 83
3.3 单片机的选型 83
3.3.1 单片机选型的原则 83
3.3.2 单片机选型参考 85
3.3.3 开发工具的选择 86
3.4 系统常见故障与调试 87
3.5 本章小结 88
第4章 数字滤波及简单的控制算法 89
4.1 数字滤波算法 89
4.1.1 算术平均值滤波 90
4.1.2 滑动平均值滤波 92
4.1.3 防脉冲干扰平均值滤波 93
4.1.4 中值滤波 95
4.1.5 一阶滞后滤波 96
4.2 数字PID控制算法 97
4.2.1 位置式PID控制算法 98
4.2.2 增量式PID控制算法 100
4.2.3 积分分离的PID控制算法 102
4.2.4 变速积分PID控制算法 103
4.3 本章小结 104
第5章 键盘接口电路 105
5.1 键盘设计的组成和分类 105
5.1.1 键盘的物理结构 106
5.1.2 键盘的组成形式 106
5.2 键盘接口的工作过程和工作方式 111
5.2.1 键盘的抖动干扰和消除方法 111
5.2.2 盘接口的工作过程 112
5.2.3 键盘的工作方式 112
5.3 键位置的判别方法 113
5.4 键盘接口设计的储存晶片和
5.4 相关协定 114
5.4.1 键盘接口设计的储存晶片 114
5.4.2 AT24CXX系列的晶片及I2C协定 114
5.4.3 A93CXX系列的晶片及SPI协定 124
5.5 键盘接口实现的工程实例 132
5.5.1 矩阵键盘接口的工程实例 132
5.5.2 矩阵式中断扫描键盘的设计 137
5.5.3 二进制编码键盘接口的工程实例 139
5.6 重点与难点 141
第6章 城市交通指挥系统 143
6.1 交通灯顺序控制 143
6.1.1 硬体系统的设计 143
6.1.2 反向器74F06 145
6.1.3 控制字 145
6.1.4 程式设计 145
6.2 设计一种基于模糊理论的单片机控制交通路口调度系统 148
6.2.1 系统的总体设计 148
6.2.2 十字路口调度系统模糊控制器的设计 149
6.2.3 电路设计 151
6.2.4 车流量检测电路 154
6.2.5 系统主程式和模糊控制程式设计 155
6.2.6 系统显示程式设计 157
6.3 重点与难点 159
第7章 阵列式LED显示屏 161
7.1 显示屏显示原理及串列通信基本概念 161
7.1.1 显示屏显示原理 161
7.1.2 串列通信 163
7.1.3 阵列式LED显示屏的实现 166
7.2 显示屏硬体电路设计 166
7.2.1 硬体电路介绍 168
7.2.2 外扩数据存储器电路 170
7.3 列式LED显示屏显示程式的171
7.3.1 汉字点阵数据的提取 171
7.3.2 显示主程式 174
7.3.3 串口中断处理程式 176
7.3.4 显示驱动函式 179
7.3.5 外部存储器读写程式 181
7.3.6 串口通信程式 181
7.3.7 文字显示特效程式 182
7.4 本章小结 191
第8章 IC卡读/写系统的开发及其192
8.1 IC卡基础 192
8.1.1 IC卡的分类 192
8.1.2 IC卡的标準 194
8.2 接触型IC卡读写系统的开发 194
8.2.1 IC卡读写系统的时序 195
8.2.2 IC卡读写系统的硬体连196
8.2.3 IC卡读写系统的软体系统 197
8.3 基于SLE4442加密卡读写系统的开发 201
8.3.1 SLE4442卡的介绍 201
8.3.2 SLE4442的模式 203
8.3.3 SLE4442的操作命令 205
8.3.4 SLE4442读/写系统的软硬体设计 208
8.4 重点与难点 215
第9章 无刷直流电机控制 216
9.1 无刷直流电机控制原理 216
9.1.1 无刷直流电机的组成 217
9.1.2 无刷直流电机的工作原理 217
9.1.3 无刷直流电机的控制方法 219
9.2 无刷直流电机的工作特性 220
9.3 直流无刷电机控制的套用实现 221
9.3.1 总体设计概述 221
9.3.2 直流无刷电机控制的硬体设计 222
9.3.3 直流无刷电机控制的软体设计 224
9.3.4 无刷直流电机速度闭环控制系统 227
9.4 本章小结 230
第10章 永磁同步电机控制实现 231
10.1 永磁同步电机的结构与分类 231
10.2 永磁同步电机的矢量控制 232
10.3 永磁同步电机控制 236
10.3.1 控制电路设计 237
10.3.2 光电隔离电路设计 238
10.3.3 功率电路设计 239
10.4 永磁同步电机控制的软体实现 239
10.4.1 电压SVPVM的DSPIC33f软体实现 241
10.4.2 转子位置检测 243
10.4.3 AD转换模组 245
10.5 本章小结 246
第11章 汽车行驶状态记录仪 247
11.1 汽车行驶记录仪功能介绍 247
11.2 简易汽车行驶记录仪的设计 249
11.2.1 汽车行驶记录仪的考虑因素 250
11.2.1 MSP430 251
11.2.2 车模拟信号的採集 254
11.2.4 数位讯号採集电路 255
11.2.5 SST39VF160晶片介绍 257
11.3 记录仪的软体设计 257
11.3.1 软体流程图 258
11.3.2 数据存储格式 259
11.3.3 SST39VF160存储器数据读写的实现 259
11.4 数据採集的程式实现 263
11.5 本章小结 264
第12章 USB-GPIB控制器的实现 265
12.1 USB-GPIB控制器简介 265
12.1.1 认识USB 266
12.1.2 GPIB 269
12.2 USB-GPIB控制器的硬体电路设计 271
12.2.1 器件的选择 272
12.2.2 USB-GPIB控制器电路设计 278
12.3 USB-GPIB控制器的软体程式的实现 287
12.3.1 USB单片机协定控制晶片与主机(计算机)的数据互动 288
12.3.2 USB协定控制晶片与GPIB控制器的数据互动 299
12.4 USB-GPIB控制器固件的调试与固化 300
12.4.1 USB-GPIB控制器固件的调试 301
12.4.2 USB-GPIB控制器固件程式的固化 302
12.5 本章小结 303
第13章 单片机系统抗干扰技术 304
13.1 研究抗干扰技术的重要性 304
13.2 干扰的分类 305
13.2.1 按噪声产生的原因分类 306
13.2.2 按噪声传导模式分类 306
13.2.3 按噪声波形及性质分类 307
13.3 干扰的耦合方式 308
13.4 单片机系统可靠性的设计任务与方法 310
13.4.1 单片机系统可靠性设计的任务 310
13.4.2 可靠性设计一般方法 311
13.5 本章小结 313
第14章 单片机系统硬体抗干扰技术 314
14.1 无源滤波器抗干扰 314
14.1.1 电容滤波器 315
14.1.2 电感滤波器 316
14.1.3 RC低通滤波器 316
14.1.4 1LC低通滤波器 318
14.1.5 低通滤波器的结构选择 319
14.1.6 低通滤波器的平衡结构与串联形式 319
14.2 有源滤波器抗干扰 321
14.2.1 一级低通有源滤波器 321
14.2.2 二级低通有源滤波器 322
14.3 去耦电路 324
14.3.1 尖峰电流的形成原理 324
14.3.2 去耦电容的配置 325
14.3.3 光电隔离 326
14.3.4 继电器隔离 328
14.3.5 变压器隔离 328
14.3.6 布线隔离 329
14.4 接地技术 330
14.5 本章小结 334
第15章 单片机开发的软体可靠性 335
15.1 概述 335
15.2 指令冗余技术 336
15.2.1 单位元组指令冗余 337
15.2.2 重要指令冗余 337
15.3 软体陷阱技术 337
15.3.1 未使用的中断向量区设定陷阱 338
15.3.2 RAM数据区中设定陷阱 338
15.3.3 未使用的EPROM数据区设定陷阱 339
15.3.4 非EPROM单片机空间设定陷阱 339
15.3.5 运行程式区设定陷阱 339
15.4 看门狗技术 339
15.4.1 硬体看门狗技术 340
15.4.2 软体看门狗技术 342
15.5 本章小结 345