书名: 单片机快速入门

book

作者:徐玮 沈建良 编著

ISBN 978-7-81124-322-2

开本: 787*1 092 1/16 印张:20.75 字数:531千字

定价: 36.00元(含1CD) 光盘内容含实验器件数据手册、大量源程序例子、实验视频演示等。

2008年5月 北京航空航天大学出版社

book

    购买方式:目前全国各地新华书店均有销售,我们推荐用户到当地城市新华书店购读,如果买不到或有不便之处,也可以与我们直接联系购买。

现在单片机学习之类的书籍在新华书店一翻就是一大堆,让人看了眼花缭乱,相信大家也有这样的感受,经常会有很多单片机初学者朋友让我来推荐单片机入门的书籍,从这些朋友的要求来看,感觉大家已经厌倦了很多条教式书籍的枯燥与古板,至少站长在大学读书时就有这样的感受,文科的书相对理科的书来说要好些,但对于理科的特点,本来就是比较突出其技术性与特点,要想写出点新鲜感确实有点难;还有一点,相信大家和我也会有一个共识,现在很多书不仅多,而且厚,但到时我们真正所关心的问题是否真的有这么多呢,相信一般我们也不会把整本书全部读完,只是取其一部分对自己有用的内容来阅读,至少有些书对于我来讲有点像字典,需要用的时候去翻一下而已。看完了书,有很多朋友可能还是会说,书我看了一大堆,但到头来还是一团迷茫,而感到无从下手,呵呵,因为我本人也遇到过这样的情况,对于单片机,在此我们必须提到的就是实践动手,否则书就算看10遍甚至20遍还是不能完成具体的应用任务,这等于白学,因为不能做到学以致用。针对以上这些现状,站长萌发了写书的念头,找了很多材料,并将积累的经验,花了无数的日夜于2007年写下了这本《C51单片机高效入门》一文,一年之后,我们又总结了相关的教学经验,把目前流行的新知识作了补充,于2008年写下《单片机快速入门》一书,写书的思路是以理论与实践相结合为主导,以我们网站提供的单片机学习全套餐D为硬件平台,一一介绍单片机各方面的理论知识与具体实践动手方法,建议初学者朋友先将此书大致翻一遍,对整体有个了解,掌握理论基础知识,然后再对照着书上的实践例子,一个课时一个课时地学习下去,相信看完了此书,你已经跨入了单片机这个领域的大门了。

本书是以目前最为流行的8051系列单片机为主体,同时使用C程序设计语言来进行描述的。全书共分为五大部分内容:单片机基础知识、C程序设计知识、单片机入门基础实例、单片机高级应用实例和配套学习套件使用说明。以理论与实践相结合的方式来进行讲解,避免了传统教科书给人枯燥、乏味的感觉。讲解风格通俗易懂、条理清晰、实例丰富、图文并茂,既使是没有任何单片机基础的人,也可以通过本书的学习,踏入单片机世界的大门。 作者为本书的出版开发了相应的学习编程、仿真及实验板,以方便读者朋友进行学习,同时以大量实例照片记录了实验的过程且现象,以激发读者朋友对单片机的兴趣爱好。 本书的配套光盘包含了所有实验的源程序代码、一些常用的电子工具软件、芯片资料、实验过程照片以及试验演示视频录像。因此,通过本书,读者获得的是教程和学习平台的结合,不仅可以用于学习,而且还可以用于工厂、企业的产品研发。 本书可供电子爱好者和大学、中专相关专业学生参考。

book

该书配套使用的实验设备为本站单片机学习全套餐D,套餐D是最新产品。

book

book

前言

当今世界科学技术飞速发展,以前需要花费大量时间和精力来搭建一个需要大量的元器件的模拟电路;而现在只需要一块小小的单片机芯片,再写入相应功能的程序,便可以代替以前分立元件组成的电路了。相信您掌握了单片机技术后,无论在今后开发或是工作上,都会带来意想不到的惊喜。

本书作者着眼于“快递入门”、“通俗易懂”、“趣味学习”、“学以致用”的指导思想,以理论与实践相结合为主线,能够使读者轻松地掌握单片机的基础知识,并使读者具有初步开发、设计单片机产品的能力。本书讲解风格通俗易懂,条理清晰,实例丰富,图文并茂,同时配套光盘包含各程序实例的视频演示录像,使读者的学习更为方便,查看演示效果更为直观,即使读者是一位单片机的门外汉,相信看了本书以后,也能运用单片机知识来解决一些实际问题,将知识转为生产力。

全书总共分为五大部分:单片机基础知识、C程序设计知识、单片机入门基础实例、单片机高级应用实例和配套学习套件使用说明。

(1) 单片机基础知识(第1、2章):介绍单片机的发展历史,揭开它的神秘之处。相信初学者最关心的一个实际问题是:单片机到底能够做哪些事?这也是我们要学习单片机技术的理由。当明确了学习目标后,您肯定需要做好学习实践平台的准备,在此,我们会一一进行讲解,并讲解学习单片机的有效方法与途径。其次,讲解单片机的内部结构、引脚定义、存储器、寄存器、定时/计数器、中断系统和串行通信等相关知识,让读者对单片机有一个实质性的了解。

(2) C程序设计知识(第3~7章):经常会有人问,单片机应用开发用C语言好,还是用汇编语言好,其实这两种语言都有各自的特点。汇编语言的优点是比较灵活,但程序不易理解,对产品的升级、维护不太有利;而C语言有非常丰富的库函数供用户使用,因为它是高级语言,程序代码的编写也非常人性化,易于阅读、理解,C语言已成为在整个计算机界普遍应用的语言。因此,本书也以C语言来进行描述,介绍C语言的数据类型、运算符和表达式、分支与循环控制语句、编译预处理与位运算、数组与函数、指针、结构体与共用体等知识,使大家具有C语言程序设计的能力。

(3) 单片机入门基础实例(第9章):前面几章讲的都是理论知识内容,由于单片机是一门实践性非常强的学科,即使您有再多的理论基础,也必须通过较多的实践操作才能真正学好这门技术。因此,在第9章中,先引入一系列具有趣味性且简单易懂的基础实验实例,如点亮一个发光管,流水灯控制,按键、蜂鸣器、数码管、继电器的操作和使用,串行通信等。在此暂时不求技术深,只求让读者明白单片机到底如何来实现我们所需要的特定功能,又如何通过软件程序来最终从硬件功能上反映出来。

(4) 单片机高级应用实例(第10章):熟悉了前面介绍的基础实例,想必读者已经对单片机有了一定程度的认识,知道自己实现怎么样的功能,应该编写怎样的程序。这部分内容将做一些单片机高级应用实例的介绍,让读者从单片机知识学习的水平升华到产品开发的程度。有液晶显示,步进电机控制,I2C总线原理,数字温度传感器应用,无线通信控制,多功能器件X25045/5045应用,红外线遥控的软件解码,模/数转换器应用,DS1302时钟芯片应用等。看完这部分内容后,相信读者已经跨入了单片机世界的大门,并具有初步的产品开发能力了,剩下的就是靠时间来积累实践经验了,只要发挥您的想象力,一定可以将单片机发挥出它更大的潜力。

(5) 配套学习套件使用说明(第8章):详细介绍了与本书相配套的51单片机综合学习系统的原理与使用方法。51单片机综合学习系统是作者综合多年经验开发出的多功能 8051单片机平台。集成了常用的单片机外围硬件、ISP下载线、单片机仿真器、单片机试验板、编程器功能于一身。系统附带的众多汇编和C语言例子程序,可以让您在最短时间内,全面地了解掌握单片机编程技术,特别适合于单片机初学者、大中专院校学生、单片机工程师和实验室选用。本章详细解说了如何使用51单片机综合学习系统来编写程序,仿真执行,烧写芯片的开发,以及设计全过程。

为方便广大读者的学习交流,读者可以访问我们的网站https://www.hificat.com。同时,如果读者对本书中所用到的学习器材、设备有兴趣,也可以访问我们的网站查看购买方法。当然,更详细的学习资料及内容,也都会定期放到网上供大家使用。

由于作者水平有限,难免会有错误与不妥之处,恳请广大读者批评指正。

作者

2008年4月

目录

第1章 什么是单片机

1.1 单片机的概念及其发展历史 1

1.2 单片机能够做哪些具体应用 2

1.3 单片机学习的软、硬件实验设备 7

1.3.1 51单片机综合学习系统主机 7

1.3.2 51单片机综合学习系统仿真组件 10

1.3.3 51单片机综合学习系统实验附件 11

1.4 单片机学习的有效方法与途径 13

第2章 51系列单片机系统的结构和工作原理

2.1 51系列单片机的内部结构和引脚功能 14

2.1.1 单片机的内部结构 14

2.1.2 单片机的工作流程 16

2.1.3 单片机的引脚功能 17

2.1.4 单片机的存储器和寄存器 18

2.1.5 单片机I/O端口的结构及工作原理 21

2.2 中断系统 23

2.2.1 中断概述 23

2.2.2 中断系统结构 24

2.2.3 中断源 25

2.2.4 中断优先级 25

2.2.5 中断控制 25

2.2.6 中断响应过程 27

2.2.7 中断的撤消 28

2.2.8 中断系统应用举例 28

2.3 定时/计数器 30

2.3.1 定时/计数器概述 30

2.3.2 定时/计数器结构 30

2.3.3 定时/计数器控制寄存器 31

2.3.4 定时/计数器的工作方式 32

2.3.5 定时/计数器应用 34

2.4 串行通信 36

2.4.1 串行通信概述 36

2.4.2 串行口结构 38

2.4.3 串行口数据缓冲器SBUF 38

2.4.4 串行通信控制寄存器 39

2.4.5 波特率选择与设置 41

第3章 Keil软件、C语言概论、数据类型、运算符与表达式

3.1 Keil软件介绍 44

3.1.1 Keil软件版本 44

3.1.2 软件开发流程 44

3.2 Keil软件的安装 46

3.2.1 系统需求 46

3.2.2 安装详细说明 46

3.2.3 文件夹组织结构 47

3.3 C语言概论 47

3.3.1 C语言的发展过程 47

3.3.2 C语言的特点 47

3.3.3 C源程序的结构特点 48

3.3.4 C语言的字符集 49

3.3.5 C语言词汇 49

3.4 数据类型、运算符与表达式 50

3.4.1 C语言的数据类型 50

3.4.2 算术运算符和算术表达式 62

3.4.3 关系运算符和表达式 66

3.4.4 逻辑运算符和表达式 68

第4章 分支与循环控制

4.1 if语句 72

4.1.1 程序的三种基本结构 72

4.1.2 if语句的三种形式 73

4.1.2 if语句的嵌套 77

4.2 条件运算符和条件表达式 79

4.3 switch语句 80

4.4 循环控制 83

4.4.1 概述 83

4.4.2 goto语句和if语句构成循环 83

4.4.3 while语句 84

4.4.3 dowhile语句 86

4.4.5 for语句 88

4.4.6 循环的嵌套 91

4.4.7 break和continue语句 92

第5章 编译预处理与位运算预处理命令

5.1 概述 95

5.2 宏定义 95

5.2.1 不带参数的宏定义 95

5.2.2 带参数的宏定义 97

5.3 文件包含 99

5.4 条件编译 99

5.5 位操作运算符 101

第6章 数组与函数

6.1 一维数组的定义和引用 104

6.1.1 一维数组的定义方式 104

6.1.2 一维数组元素的引用 106

6.1.3 一维数组的初始化 107

6.1.4 一维数组程序举例 108

6.2 二维数组的定义和引用 109

6.2.1 二维数组的定义 109

6.2.2 二维数组元素的引用 109

6.2.3 二维数组的初始化 111

6.3 字符数组 111

6.3.1 字符数组的定义 111

6.3.2 字符数组的初始化 112

6.3.3 字符数组的引用 112

6.3.4 字符串和字符串结束标志 113

6.4 函数概述 113

6.4.1 函数定义的一般形式 113

6.4.2 函数的参数和函数的值 114

6.4.3 函数的返回值 115

6.4.4 函数的调用 116

6.4.5 被调用函数的声明和函数原型 116

6.4.6 函数的嵌套调用 117

6.4.7 函数的递归调用 118

6.4.8 数组作为函数参数 119

6.5 局部变量和全局变量 121

6.5.1 局部变量 122

6.5.2 全局变量 123

第7章 指针、结构体与共用体

7.1 指针和地址 125

7.2 指针变量和指针运算符 125

7.3 指针与函数参数 129

7.4 指针、数组和字符串指针 131

7.5 指针数组 134

7.6 多级指针 135

7.7 返回指针的函数 137

7.8 函数指针 137

7.9 结构与联合 138

7.9.1 结构的定义 138

7.9.2 结构数组 140

7.9.3 结构与函数 141

7.9.4 结构的初始化 143

7.9.5 联合(union) 143

第8章 51单片机综合学习系统快速入门

8.1 51单片机综合学习系统入门说明 145

8.2 51单片机综合学习系统仿真操作指南 149

8.3 建立第一个项目(软件操作指南) 151

8.4 51单片机综合学习系统芯片烧写(ISP下载)操作指南 154

8.5 51单片机综合学习系统数码管原理与应用实例篇 157

8.6 51单片机综合学习系统常见问题解答 162

第9章 单片机基础实例

9.1 发光二极管闪动实验 164

9.1.1 实例功能 164

9.1.2 器件和原理 165

9.1.3 硬件电路 165

9.1.4 程序设计 165

9.1.5 代码分析 167

9.2 流水灯实验 167

9.2.1 实例功能 167

9.2.2 器件和原理 168

9.2.3 硬件电路 169

9.2.4 程序设计 169

9.2.5 代码分析 170

9.3 按键实验 172

9.3.1 实例功能 172

9.3.2 器件和原理 173

9.3.3 硬件电路 173

9.3.4 程序设计 174

9.3.5 代码分析 174

9.4 蜂鸣器实验 176

9.4.1 实例功能 176

9.4.2 器件和原理 176

9.4.3 硬件电路 176

9.4.4 程序设计 177

9.4.5 代码分析 177

9.5 继电器实验 178

9.5.1 实例功能 178

9.5.2 器件和原理 178

9.5.3 硬件电路 179

9.5.4 程序设计 180

9.5.5 代码分析 180

9.6 数码管实验 180

9.6.1 实例功能 181

9.6.2 器件和原理 181

9.6.3 硬件电路 183

9.6.4 程序设计 183

9.6.5 代码分析 184

9.7 串行口实验 186

9.7.1 实例功能 186

9.7.2 器件和原理 187

9.7.3 硬件电路 189

9.7.4 程序设计 189

第10章 单片机高级应用实例

10.1 矩阵键盘应用实例 191

10.1.1 矩阵键盘简介 191

10.1.2 矩阵键盘的工作原理 191

10.1.3 矩阵键盘软硬件设计实例 192

10.2 步进电机应用实例 197

10.2.1 步进电机简介 197

10.2.2 步进电机的控制 201

10.2.3 步进电机的程序设计 202

10.3 单总线数字温度传感器DS18B20应用实例 206

10.3.1 单总线技术简介 206

10.3.2 单总线温度传感器DS18B20简介 207

10.3.3 DS18B20软、硬件设计 213

10.4 24CXX系列存储器应用实例 218

10.4.1 I2C总线简介 218

10.4.2 I2C总线器件工作原理及时序 220

10.4.3 24C01存储器的软硬件设计实例 222

10.5 93CXX系列存储器应用实例 229

10.5.1 SPI总线简介 229

10.5.2 93C46存储器的软硬件设计实例 232

10.6 DS1302时钟芯片应用实例 240

10.6.1 实时时钟(RTC)简介 240

10.6.2 DS1302时钟芯片简介 241

10.6.3 DS1302的软硬件设计实例 244

10.7 ADC0832应用实例 250

10.7.1 模/数转换(ADC)简介 250

10.7.2 8位串行A/D转换器ADC0832简介 253

10.7.3 ADC0832软硬件设计实例 255

10.8 1602字符型LCD应用实例 259

10.8.1 液晶显示简介 260

10.8.2 1602字符型LCD简介 261

10.8.3 1602字符型LCD的软硬件设计实例 266

10.9 12864点阵型LCD应用实例 271

10.9.1 点阵LCD的显示原理 271

10.9.2 12864点阵型LCD简介 272

10.9.3 12864点阵型LCD软硬件设计实例 278

10.10 红外遥控软件解码应用实例 288

10.10.1 红外遥控概述 288

10.10.2 3010红外接收的软件解码应用实例 294

10.11 无线通信模块应用 300

10.11.1 无线通信概述 300

10.11.2 PT2262/PT2272无线模块简介 301

10.11.3 无线模块的软硬件设计应用 306

附录 Keil开发软件介绍 310

参考文献 322

【图书目录】 - 单片机快速入门 点击图片放大查看

book

book_catalog

book_catalog

book_catalog

以下是部分章节内容扫描图,点击图片放大观看。

bookbook

bookbook

bookbook