当前位置:在线查询网 > 在线百科全书查询 > 51单片机典型系统开发实例精讲

51单片机典型系统开发实例精讲_在线百科全书查询


请输入要查询的词条内容:

51单片机典型系统开发实例精讲


本书根据作者多年积累的开发经验,通过大量类型丰富、工程实践性强的例子来讲解51单片机应用系统开发的流程与方法。

书名:51单片机典型系统开发实例精讲

作者:白延敏

ISBN:9787121078408

类别:计算机/程序设计

页数:332页

定价:45.00元(含光盘1张)

出版社:电子工业出版社

出版时间:2009-1-1

装帧:平装

开本:16开



内 容 简 介


本书通过大量系统实例精讲形式,介绍了51单片机应用系统开发的流程与方法。全书包括11章,首先讲述51系列的硬件结构、指令系统、开发过程中的常用单元、Keil 8051 C 编译器、51系统设计流程,引导读者进行基础知识学习。然后安排了7个典型实用的51单片机系统设计实例,具体为实时日历时钟系统、网络监控与采集系统、工厂环境监测系统、电热水器控制系统、无线智能抄表系统、汽车行驶状态记录仪系统、智能嵌入式网关设计等,读者通过学习,可以快速提高设计能力,步入高级工程师的行列。

本书语言简洁,层次清晰,内容从零开始、循序渐进。不但详细讲述了硬件系统设计及软件调试方法与流程,而且提供了综合系统设计思路,对实例的所有程序代码做了详细注释,利于读者理解和巩固知识点。配套光盘包含了本书所有实例的硬件原理图和软件代码,方便读者学习。本书适合计算机、自动化、电子及相关专业的大中专院校学生,以及从事51单片机设计应用的工程师、科研人员使用。

丛书说明


工程技术的电子化、集成化和系统化促进了电子工程技术的发展,同时也促进了电子工程技术在社会各行业中的广泛应用,从近年的人才招聘市场来看,电子工程师的人才需求更是一路走高。

电子工程师如此紧俏,除需求不断走高,人才供不应求外,另一重要原因则是电子工程师的门槛相对而言比较高,这个高门槛则来自于工程师的“经验”和“实践”!

因此,为了满足读者学习和工作需要,解决各种工作中的专业问题,我们紧紧围绕“经验”和“实践”,精心策划组织了此套丛书。

1.丛书范围

现代电子科学技术的一个特点是多学科交叉,因此,工程师应当了解、掌握两门以上的相关学科,知识既精深又广博是优秀的工程师成长为某领域专家的重要标志。本丛书内容涉及软件开发、研发电子以及嵌入式项目开发等,包括单片机、USB接口、ARM、CPLD/FPGA、DSP和移动通信系统等。

2.读者对象

本套书面向各领域的初、中级用户,具体为高校计算机、电子信息、通信工程、自动化控制专业在校大学生,以及从事电子开发和应用行业的科研人员。

3.内容组织形式

本套书紧紧围绕“经验”和“实践”,首先介绍一些相关的基础知识,然后根据不同的模块或应用领域,分篇安排应用程序实例的精讲。基础知识用来为一些初级读者打下一定的知识功底;基础好一点的读者则可以跳过这一部分,直接进入实例的学习。

4.实例特色

在应用实例的安排上,着重突出“应用”和“实用”两个基本原则,安排具有代表性、技术领先性以及应用广泛的典型实例,让读者学习借鉴。这些实例是从作者多年程序开发项目中挑选出的,也是经验的归纳与总结。

在应用实例的讲解上,既介绍了设计原理、基本步骤和流程,也穿插了一些经验、技巧与注意事项。特别在程序设计思路上,在决定项目开发的质量和成功与否的细节上,尽可能地用简洁的语言来清晰阐述大众易于理解的概念和思想;同时,程序代码部分做了很详细的中文注释,有利于读者举一反三,快速应用和提高。

5.光盘内容

本套书的光盘中包含了丰富的实例原图文件和程序源代码,读者稍加修改便可应用于自己的工作中或者完成自己的课题(毕业设计),物超所值。读者使用之前,最好先将光盘内容全部复制到电脑硬盘中,以便于以后可以直接调用,而不需要反复使用光盘,提高操作速度和学习效率。

6.学习指南

对于有一定基础的读者,建议直接从实例部分入手,边看边上机练习,这样印象会比较深,效果更好。基础差一点的读者请先详细学习书中基础部分的理论知识,然后再进行应用实例的学习。在学习中,尽量做到反复理解和演练,以达到融会贯通、举一反三的功效;特别希望尽量和自己的工作设计联系起来,以达到“即学即会,学以致用”的最大化境界。

本套丛书主要偏重于实用性,具有很强的工程实践指导性。期望读者在学习中顺利、如意!

前 言


写作背景

单片机是在一块硅片上集成了各种部件的微型计算机。随着大规模集成电路技术的发展,包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器及输入/输出(I/O)接口电路等主要计算机部件,都可集成在一块电路芯片上。虽然单片机只是一个芯片,但从组成和功能上,它已具有了微机系统的含义。由于单片机能独立执行内部程序,所以又称它为微型控制器(Microcontroller)。

随着科学技术的日新月异,单片机也从一开始的8位单片机发展到16位、32位等诸多系列,其中51系列单片机由于其灵活方便、价格便宜的优点,在众多制造厂商的支持下已经发展成为具有上百个品种的大家族,如今51单片机是应用最广泛的单片机,是大学里电子、自动化及相关专业的必修学科。迄今为止,其他任何一个单片机系列都无法与它媲美。

虽然目前市场同类单片机书很多,但是贴近企业实用的内容偏少,读者学习起来不易上手。本书根据作者多年积累的开发经验,通过大量类型丰富、工程实践性强的例子来讲解,便于读者学习透彻,掌握深入,并学会举一反三。

本书结构

本书共分为11章,主要内容安排如下:

第1章~第4章为基础知识内容,主要讲述51系列的硬件结构、指令系统、开发过程中的常用单元、Keil 8051 C编译器、51系统设计流程,引导读者进行基础知识学习。已经具有了一定单片机基础的读者,可以跳过这几章,直接进入后面实例的学习。

第5章~第11章,重点通过7个不同的实例,介绍了51单片机应用系统设计的流程、应用技术和开发技巧。这些例子典型实用,全部来自于实践,并且调试通过,方便读者学懂学透。具体为实时日历时钟系统、网络监控与采集系统、工厂环境监测系统、电热水器控制系统、无线智能抄表系统、汽车行驶状态记录仪系统、智能嵌入式网关设计等,读者学习后可以快速提高设计能力,步入高级工程师的行列。

本书配光盘一张,包含了本书所有实例的硬件原理图和软件代码,方便读者学习。

本书适合计算机、自动化、电子以及相关专业的大中专院校学生,以及从事51单片机设计应用的工程师、科研人员使用。

写作特色

与同类51单片机的图书相比,本书拥有以下一些特色:

 语言简洁,层次清晰,内容从零开始、循序渐进。读者即使是刚刚接触51单片机,只要按照书的章节顺序进行依次学习,也可快速入门,进而提高。

 本书理论为辅,实践为主,应用为纲。开发技术与大量系统实例结合,深入浅出地剖析单片机C语言系统项目设计的流程与技巧。

 本书安排的7个应用系统实例类型丰富、典型实用、代表性强,利于读者举一反三,实现从入门到精通。

 本书不但详细介绍了硬件电路设计和软件编程,而且提供了应用系统设计思路与流程,对实例的所有程序代码做了详细注释,利于读者理解和巩固知识点。

光盘说明

1.光盘的组成内容

本书附赠光盘一张,包括三部分内容:程序代码、电路图和部分章节插图。

2.使用说明

(1)光盘里面的程序需要采用C语言的编译软件打开阅读,也可以使用“UltraEdit”等软件打开阅读或编辑。

(2)电路图建议读者安装Protel DXP打开。

3.系统要求

光盘运行只需一般的PC就可以。操作系统推荐为Windows 2000或Windows XP系统,但不能是Linux或者UNIX系统。

本书主要由白延敏编写。另外参加编写的人还有:唐清善、邱宝良、周克足、刘斌、李亚捷、李永怀、李宁宇、刘伟捷、黄小欢、严剑忠、黄小宽、李彦超、付军鹏、张广安、贾素龙、王艳波、金平、徐春林、谢正义、郑贞平、张小红等。他们在资料收集、整理和技术支持方面做了大量的工作,在此一并向他们表示感谢!

由于时间仓促,再加之作者的水平有限,书中难免存在一些不足之处,欢迎广大读者批评和指正。

目 录


第1章 51单片机入门基础

1.1 51单片机的发展与应用领域 1

1.1.1 发展阶段 1

1.1.2 应用领域 2

1.2 51单片机产品兼容系列 3

1.2.1 Intel公司产品系列 3

1.2.2 Atmel公司产品系列 4

1.2.3 Philips公司产品系列 6

1.3 51单片机的硬件结构 7

1.3.1 引脚及其功能 7

1.3.2 内部结构 9

1.4 51单片机工作方式和指令系统 29

1.4.1 单片机的工作方式 29

1.4.2 单片机指令系统简介 34

1.4.3 单片机的寻址方式 34

1.4.4 单片机的指令格式与符号 37

1.5 分析与总结 54

第2章 51单片机开发的常用单元

2.1 单片机的键盘输入单元 55

2.1.1 行列式键盘 55

2.1.2 键识别方法 56

2.1.3 键识别法举例 56

2.1.4 程序代码与注释 60

2.2 单片机数码显示单元 61

2.2.1 如何驱动8段数码管 61

2.2.2 8段数码管动态显示举例 62

2.2.3 程序代码与注释 64

2.3 单片机液晶显示单元 65

2.3.1 液晶模块 65

2.3.2 液晶模块的电源设计 67

2.3.3 如何显示液晶模块 68

2.3.4 液晶显示模块举例 70

2.3.5 程序代码与注释 71

2.4 单片机串行通信单元 78

2.4.1 单片机串行通信的原理 78

2.4.2 单片机串行通信举例 81

2.4.3 程序代码与注释 83

2.5 数学运算 84

2.5.1 限幅滤波算法 85

2.5.2 中值滤波算法 85

2.5.3 算术平均滤波算法 86

2.5.4 加权平均滤波算法 86

2.5.5 滑动平均滤波算法 87

第3章 Keil 8051 C编译器

3.1 Keil编译器简介 88

3.2 如何使用Keil开发 89

3.2.1 建立工程 90

3.2.2 工程的设置 92

3.2.3 编译与连接 95

3.3 dScope for Windows的使用 95

3.3.1 如何启动 95

3.3.2 如何调试 97

3.3.3 调试窗口 98

第4章 单片机应用系统开发流程

4.1 单片机系统设计分析 101

4.2 单片机软件开发流程 103

4.3 单片机硬件开发流程 109

4.4 分析与总结 112

第5章 实时日历时钟系统设计实例

5.1 实例说明 113

5.2 设计思路分析 115

5.2.1 日历时钟芯片SD2000A 115

5.2.2 电源电路设计 116

5.3 硬件电路设计 117

5.4 软件设计 118

5.4.1 接口时序与操作指令 118

5.4.2 寄存器 120

5.4.3 程序代码说明 124

5.5 分析与总结 129

第6章 网络远程监控与采集系统设计实例

6.1 实例功能说明 130

6.2 Keil RTX51 Tiny介绍 130

6.2.1 RTX51的概述 131

6.2.2 系统要求和任务定义 134

6.2.3 建立RTX51 Tiny应用程序 137

6.2.4 RTX51 Tiny系统函数详解 139

6.2.5 RTX51 Tiny系统调试 145

6.3 系统设计思路 146

6.3.1 远程监控与采集连接图 146

6.3.2 Modbus协议简介 146

6.3.3 传输方式 148

6.3.4 协议内容 150

6.4 硬件电路设计 152

6.4.1 总体硬件框图 152

6.4.2 单片机电路设计 152

6.4.3 从设备地址配置电路设计 153

6.4.4 485接口设计 154

6.4.5 状态量采集电路 155

6.4.6 模拟量采集电路 155

6.5 软件设计与代码分析 157

6.5.1 软件流程 158

6.5.2 初始化任务 159

6.5.3 定时采集任务 159

6.5.4 测试帧任务 160

6.5.5 轮询处理任务 161

6.5.6 状态量采集子程序 162

6.5.7 模拟量采集子程序 162

6.5.8 485发送、接收子程序 163

6.5.9 CRC校验 164

6.5.10 串口发送接收模块 165

6.6 分析与总结 168

第7章 工厂环境智能监测系统设计实例

7.1 系统功能说明 169

7.2 系统整体设计方案 170

7.3 硬件设计 171

7.3.1 微控制器模块 171

7.3.2 温度测量模块 174

7.3.3 湿度测量模块 175

7.3.4 LCD显示模块 177

7.3.5 通信模块 179

7.4 软件设计 181

7.4.1 温度测量软件 181

7.4.2 湿度测量软件 184

7.4.3 LCD显示软件 185

7.5 分析与总结 187

第8章 电热水器控制系统设计实例

8.1 系统功能说明 188

8.2 系统整体设计方案 189

8.3 硬件设计 191

8.3.1 微控制器模块 191

8.3.2 温度测量 192

8.3.3 实时时钟 195

8.3.4 看门狗复位电路 196

8.3.5 LED显示电路 198

8.4 软件设计 199

8.4.1 模数转换软件设计 199

8.4.2 实时时钟软件设计 202

8.4.3 LED显示软件设计 205

8.5 分析与总结 208

第9章 无线智能抄表系统设计实例

9.1 系统功能说明 209

9.2 系统整体设计方案 210

9.3 硬件设计 211

9.3.1 楼栋集中器硬件结构 211

9.3.2 微控制器模块 211

9.3.3 存储模块 212

9.3.4 人机接口模块 214

9.3.5 抄表接口模块 217

9.3.6 无线模块 218

9.4 软件设计 222

9.4.1 楼栋集中器系统软件流程 222

9.4.2 SPI与UART转换 224

9.4.3 中断程序 226

9.4.4 FM3130的读写 227

9.4.5 键盘输入 230

9.4.6 LCD显示 232

9.5 分析与总结 235

第10章 汽车行驶状态记录仪系统设计

10.1 实例说明 237

10.1.1 功能和技术指标 237

10.1.2 面板介绍和使用方法 238

10.2 设计思路分析 239

10.2.1 获取行驶状态信息 239

10.2.2 系统总体结构 239

10.3 硬件设计 240

10.3.1 记录仪的供电 240

10.3.2 信号采集模块 242

10.3.3 单片机模块 243

10.3.4 可编程逻辑器件 245

10.3.5 日历时钟芯片 248

10.3.6 液晶显示模块LCD 252

10.3.7 信息的存储 254

10.4 软件设计 256

10.4.1 软件流程 256

10.4.2 中断子程序 257

10.4.3 获取状态信息 258

10.4.4 时间信息的设置和获取 259

10.4.5 键盘输入 260

10.4.6 液晶显示 261

10.4.7 IC卡操作 264

10.5 分析与总结 267

第11章 RS485-CAN智能嵌入式网关设计实例

11.1 系统功能说明 268

11.2 系统整体设计方案 269

11.3 硬件设计 270

11.3.1 RS485-CAN智能嵌入式网关硬件结构 270

11.3.2 微控制器模块 271

11.3.3 CAN接口模块 272

11.3.4 RS485接口模块 277

11.3.5 存储模块 278

11.4 软件设计 279

11.4.1 CAN接口软件设计 279

11.4.2 RS485接口软件设计 287

11.4.3 AT93C46存储器读写 290

11.4.4 参数配置 292

11.5 分析与总结 292

附录A C与汇编语言混合编程 294

文摘


Intel公司在20世纪80年代初发布了用于取代先前功能简单的8048和8049微控制器的MCS-51系列的单片机,其代表的芯片包括8051、8031、8052、8032、8751和8752,这些通称为51系列单片机。单片机的发展历史大致可分为三个阶段。

第一阶段(1976--1978年):初级单片机微处理阶段。以Intel公司的MCS--48为代表。此系列的单片机具有8位CPU、并行I/O端口、8位时序同步计数器,寻址范围不大于4KB,但是没有串行口。

第二阶段(1978--1982):高性能单片机微处理阶段,如Intel MCS-- 51、Motorola公司的6801和Zilog公司的Z8等。该类型单片机具有串行I/O端口,有多级中断处理系统,16位时序同步计数器,RAM、ROM容量加大,寻址范围可达64KB,有的芯片甚至还带有A/D转换接口。由于该系列单片机应用领域极其广泛,各公司正大力改进其结构与性能。