书 名 | 单片机原理与应用开发教程 | 作 者 | 李桂林 |
---|---|---|---|
ISBN | 9787121293818 | 出版社 | 电子工业出版社 |
出版时间 | 2016-08-01 |
基 础 篇
第1章 单片机基础知识 2
1.1 单片机概述 2
1.1.1 单片机的组成 2
1.1.2 单片机的特点 3
1.1.3 单片机系统 4
1.1.4 单片机的程序设计语言 4
1.2 单片机的历史和发展 5
1.2.1 单片机的发展历史 5
1.2.2 单片机的发展趋势 6
1.3 典型单片机简介 7
1.3.1 MCS-51系列单片机 7
1.3.2 AT89系列单片机 8
1.3.3 PIC系列单片机 9
1.3.4 MSP430系列单片机 9
1.4 单片机的应用 10
1.4.1 单片机的应用特点 10
1.4.2 单片机的应用领域 11
知识结构图 12
思考与练习 13
第2章 单片机基本结构和工作原理 14
2.1 单片机的组成和内部结构 14
2.1.1 单片机的组成 14
2.1.2 单片机的内部逻辑结构 15
2.1.3 CPU的内部结构 15
2.1.4 单片机其他结构模块 17
2.2 单片机的外部引脚及功能 18
2.2.1 I/O端口 19
2.2.2 控制引脚 19
2.2.3 电源与晶振引脚 19
2.3 单片机的存储器结构 19
2.3.1 程序存储器 20
2.3.2 数据存储器 21
2.3.3 特殊功能寄存器 23
2.4 单片机的I/O电路 26
2.4.1 P0口 26
2.4.2 P1口 27
2.4.3 P2口 28
2.4.4 P3口 29
2.5 单片机的辅助电路 30
2.5.1 时钟电路 30
2.5.2 复位方式和复位电路 31
2.5.3 单片机最小系统 33
2.6 单片机的工作时序和工作方式 34
2.6.1 时序的基本概念 34
2.6.2 单片机的工作时序 35
2.6.3 单片机的工作方式 36
知识结构图 38
思考与练习 39
第3章 指令系统和汇编程序设计 40
3.1 指令系统概述 40
3.1.1 指令的表达形式 40
3.1.2 指令中的常用符号 41
3.2 单片机的寻址方式 42
3.2.1 立即寻址 43
3.2.2 直接寻址 43
3.2.3 寄存器寻址 44
3.2.4 寄存器间接寻址 45
3.2.5 变址寻址 46
3.2.6 相对寻址 47
3.2.7 位寻址 48
3.3 单片机的指令系统 49
3.3.1 数据传送类指令 49
3.3.2 算术运算类指令 55
3.3.3 逻辑运算类指令 59
3.3.4 控制转移类指令 63
3.3.5 位操作类指令 66
3.4 汇编语言程序的设计基础 69
3.4.1 汇编语言的语句格式 70
3.4.2 伪指令 70
3.4.3 汇编语言程序结构 72
3.4.4 汇编语言的编辑和汇编 73
3.4.5 汇编语言程序设计方法 73
3.5 汇编语言程序的基本结构形式 74
3.5.1 顺序程序 75
3.5.2 分支程序 76
3.5.3 循环程序 80
3.5.4 子程序 84
3.6 常用程序设计举例 85
3.6.1 数制转换子程序 85
3.6.2 定时子程序 88
3.6.3 均值滤波子程序 88
3.6.4 数据极值查找子程序 90
3.6.5 算术运算子程序 91
知识结构图 94
思考与练习 95
第4章 单片机内部标准功能单元 98
4.1 单片机的中断系统 98
4.1.1 中断系统的基本概念和基本结构 98
4.1.2 中断系统的控制与实现 100
4.1.3 中断系统的处理过程 104
4.1.4 中断系统的应用 108
4.2 单片机的定时器/计数器 113
4.2.1 定时器/计数器的基本结构和工作原理 113
4.2.2 定时器/计数器的控制与状态 115
4.2.3 定时器/计数器的工作方式 116
4.2.4 定时器/计数器初值计算和初始化 119
4.2.5 定时器/计数器的应用 119
4.3 单片机的串行通信接口 128
4.3.1 串行通信基础知识 128
4.3.2 串行口的内部结构和工作原理 130
4.3.3 串行口的控制与状态 132
4.3.4 串行口的工作方式 133
4.3.5 串行口波特率的确定和初始化 135
4.3.6 串行口的应用 136
4.3.7 单片机与PC机之间的通信 142
知识结构图 149
思考与练习 150
第5章 单片机外部扩展技术 151
5.1 并行总线扩展及编址 151
5.1.1 单片机外总线的结构 151
5.1.2 单片机外总线的扩展规则 153
5.1.3 常用扩展器件 153
5.1.4 地址译码方法 157
5.2 存储器及其扩展 160
5.2.1 半导体存储器简介 160
5.2.2 EPROM程序存储器的扩展 162
5.2.3 E2PROM程序存储器的扩展 164
5.2.4 数据存储器及其扩展 164
5.3 人机交互接口及其扩展 169
5.3.1 键盘接口 169
5.3.2 LED显示接口 177
5.4 并行I/O端口扩展及应用 183
5.4.1 简单I/O扩展 183
5.4.2 接口芯片8155及扩展 185
5.4.3 I/O接口芯片8255及扩展 191
5.5 模拟量I/O通道扩展及应用 196
5.5.1 A/D转换器基本知识 196
5.5.2 A/D转换接口芯片ADC0809 197
5.5.3 D/A转换器基本知识 202
5.5.4 D/A转换接口芯片DAC0832 204
知识结构图 208
思考与练习 209
第6章 单片机串行总线扩展技术 211
6.1 串行总线概述 211
6.2 单总线接口及其扩展 211
6.2.1 单总线基础知识 211
6.2.2 单总线的数据传输时序 213
6.2.3 数字温度传感器DS18B20 214
6.3 I2C总线接口及其扩展 220
6.3.1 I2C总线基础知识 220
6.3.2 I2C总线的数据传输时序 221
6.3.3 I2C总线的时序模拟 223
6.3.4 串行程序存储器AT24C04 224
6.4 SPI总线接口及其扩展 230
6.4.1 SPI总线基础知识 230
6.4.2 SPI总线的数据传输时序 231
6.4.3 E2PROM芯片X25045 232
6.4.4 A/D转换器芯片TLC549 237
知识结构图 239
思考与练习 240
开 发 篇
第7章 快速开发入门知识 242
7.1 单片机应用系统开发技术 242
7.1.1 单片机应用系统的开发过程 242
7.1.2 单片机开发工具 244
7.2 Keil集成开发平台 247
7.2.1 创建一个应用程序 248
7.2.2 应用程序的编辑、编译和链接 252
7.2.3 应用程序的仿真和调试 253
7.2.4 应用程序调试的常用窗口 256
7.2.5 调试实例 258
思考与练习 262
第8章 单片机C51程序设计基础 263
8.1 C51的概述 263
8.1.1 C51程序结构概述 263
8.1.2 C51对标准C的扩展 264
8.2 C51的编译和编译预处理 265
8.2.1 编译 265
8.2.2 编译预处理 266
8.3 C51的基本语法 267
8.3.1 常量 267
8.3.2 变量 268
8.3.3 常用运算符与表达式 273
8.4 C51的程序结构 275
8.4.1 分支语句 275
8.4.2 循环语句 277
8.5 C51的函数 280
8.5.1 函数的定义和分类 280
8.5.2 函数的调用 281
8.6 C51的库函数 283
8.6.1 字符函数CTYPE.H 283
8.6.2 内部函数INTRINS.H 284
8.6.3 标准输入/输出函数STDIO.H 285
8.6.4 标准函数STDLIB.H 285
8.6.5 字符串处理函数STRING.H 286
8.6.6 绝对地址访问函数ABSACC.H 286
8.6.7 专用寄存器REGxx.H 287
8.7 C51的数组 287
8.7.1 数组的定义 287
8.7.2 数组的应用 288
8.8 C51的指针 289
8.8.1 指针与地址 289
8.8.2 指针的定义 290
8.8.3 指针的引用 291
8.9 C51编程举例 291
8.9.1 读写I/O端口的C51编程 292
8.9.2 中断系统的C51编程 292
8.9.3 定时器/计数器的C51编程 293
8.9.4 串行接口通信的C51编程 295
8.9.5 I2C总线的C51编程 298
思考与练习 302
第9章 单片机学习板及功能模块 304
9.1 单片机学习板的用途和特点 304
9.2 单片机学习板的整体设计 305
9.3 STC-ISP烧录软件的使用方法 306
9.4 单片机学习板的功能模块 307
9.4.1 流水灯控制单元 307
9.4.2 数码管显示单元 309
9.4.3 蜂鸣器单元 310
9.4.4 独立按键单元 312
9.4.5 矩阵键盘单元 313
9.4.6 液晶显示单元 315
9.4.7 I2C总线单元 320
9.4.8 A/D和D/A单元 320
9.4.9 温度测量单元 325
9.4.10 串口通信单元 326
第10章 电子万年历设计 328
10.1 功能要求 328
10.2 总体设计 328
10.2.1 时间的获取方法 328
10.2.2 电子万年历的设计说明 329
10.3 硬件电路设计 329
10.4 软件设计 330
10.4.1 延时程序 330
10.4.2 液晶初始化及显示程序 331
10.4.3 定时器中断初始化和工作程序 334
10.4.4 键盘设置程序 337
10.4.5 闹钟设置与启动程序 342
第11章 超声波测距仪设计 345
11.1 功能要求 345
11.2 总体设计 345
11.2.1 超声波简介 345
11.2.2 超声波测距原理 345
11.3 硬件电路设计 346
11.3.1 HC-SR04超声波模块电路 346
11.3.2 电源电路 348
11.4 软件设计 349
11.4.1 超声波发送程序和超声波接收中断程序 349
11.4.2 距离计算程序 350
11.4.3 LCD1602液晶显示程序 351
第12章 智能循迹小车设计 354
12.1 功能要求 354
12.2 总体设计 354
12.3 硬件电路设计 355
12.3.1 红外检测模块电路 356
12.3.2 稳压电源电路 357
12.3.3 电机驱动电路 357
12.4 软件设计 359
12.4.1 各端口及变量定义 359
12.4.2 相关子函数定义 359
12.4.3 循迹小车主函数 362
第13章 数据采集和无线传输系统设计 364
13.1 功能要求 364
13.2 总体设计 364
13.3 硬件电路设计 365
13.3.1 nRF24L01无线收发模块单元 366
13.3.2 A/D转换单元 368
13.4 软件设计 368
13.4.1 相关参数定义 368
13.4.2 相关函数设计 370
13.4.3 数据采集及无线传输系统主函数 373
附录A ASCII表 375
附录B MCS-51指令表 378
附录C 学习板电路图 381
参考文献 382
本书以MCS-51系列单片机原理和应用开发为主线,分为基础篇和开发篇基础篇采用汇编语言,重点介绍单片机的结构、指令系统、程序设计、内部标准功能单元、系统扩展等内容,并精心设计了大量例题和多种解题思路,突出教学重点、叙述准确精炼,完全可以满足教师课堂教学和学生课程学习需要。开发篇采用C语言,重点阐述单片机应用系统的开发方法,对应用系统设计、开发、调试方法以及开发工具的使用都进行了深入的讨论,并给出大量应用实例,强调初学者通过C语言快速上手、由浅入深。基础篇和开发篇既独立成篇,又相互关联。
全书结构规范、系统性强、实例丰富,注重逻辑思维的培养,突出工程实践和实际应用,可以满足应用型人才培养的要求,也可以满足大学生电子竞赛训练需要。
8051单片机在一块芯片上集成了一个微型计算机的主要部件,它包括以下几部分: 1个8位微处理器(CPU)。 1个时钟电路。 4KB程序存储器。 256B数据存储器。 2个16位定时/计数器。 64KB...
怎么答啊、
谁设计的啊?LED电路有点问题哦!现在也可以点亮,比如,当tenp out 对应的MCU引脚用程序给低电平0,则tenp out对应的led亮!但是应该一个LED一个电阻的,你现在的电路会随着LED点...
根据高职高专培养应用型人才的目标,采用项目教学法探索单片机原理课程设计教学新模式。以\"交通信号灯模拟控制系统\"项目为例,通过确定项目任务、项目实施方案和项目验收及综合评价3个过程,阐述项目教学法在单片机原理课程设计中的具体应用。在单片机原理课程设计中应用项目教学法,有利于学生理解和掌握课程要求的知识和技能,体验创新的艰辛与乐趣,培养分析问题和解决问题的能力以及团队合作能力,可充分发掘学生的创造潜能。
基于高职学院学生的特点,利用项目式的教学方法对《单片机原理及应用》课程进行了整体设计,提出了以\"单片机最小开发系统\"为主线的1344的教学模式,初步实现了课程的整体设计,提高了学生学习的主动性和积极性,达到较好的教学效果。
第1章 单片机实验系统简介
1.1 单片机应用系统的开发与开发系统
1.1.1 单片机的开发与开发系统
1.1.2 单片机开发系统的功能
1.2 单片机实验系统
1.2.1 DICE实验系统面板结构
1.2.2 键盘监控程序简介
1.3 键盘/显示方式下的实训操作方法
1.4 PC机连机方式下的实训操作方法
1.5 脱机方式下的实训操作方法
第2章 单片机的硬件结构实训
2.1 实训概要
2.1.1 实训要求与重点
2.1.2 实训预备知识
2.2 实训实例分析
2.2.1 实例名称
2.2.2 实训目的
2.2.3 实训内容
2.2.4 实训仪器设备
2.2.5 实训步骤
2.2.6 实训结果记录与分析
2.3 实训项目一工作寄存器操作
2.3.1 实训目的
2.3.2 实训内容
2.3.3 实训仪器设备
2.3.4.实训步骤
2.3.5 实训结果记录与分析
2.3.6 实训思考题
2.4 实训项目二位单元操作
2.4.1 实训目的
2.4.2 实训内容
2.4.3 实训仪器设备
2.4.4 实训步骤
2.4.5 实训结果记录与分析
2.4.6 实训思考题
2.5 实训项目三P1口控灯
2.5.1 实训目的
2.5.2 实训内容
2.5.3 实训仪器设备
2.5.4 线路图
2.5.5 实训步骤
2.5.6 实训结果记录与分析
2.5.7 实训思考题
2.6 实训项目四P1口循环控灯
2.6.1 实训目的
2.6.2 实训内容
2.6.3 实训仪器设备
2.6.4 线路图
2.6.5 实训步骤
2.6.6 实训结果记录与分析
2.6.7 实训思考题
2.7 实训项目五P1口控制继电器
2.7.1 实训目的
2.7.2 实训内容
2.7.3 实训仪器设备
2.7.4 线路图
2.7.5 实训步骤
2.7.6 实训结果记录与分析
2.7.7 实训思考题
第3章 MCS-51单片机指令系统实训
3.1 实训概要
3.1.1 实训要求与重点
3.1.2 实训预备知识
3.2 实训实例分析
3.2.1 实例名称
3.2.2 实训目的
3.2.3 实训内容
3.2.4 实训仪器设备
3.2.5 实训步骤
3.2.6 实训结果观察与记录
3.3 实训项目一寻址方式
3.3.1 实训目的
3.3.2 实训内容
3.3.3 实训仪器设备
3.3.4 实训步骤
3.3.5 实训结果记录与分析
3.3.6 实训思考题
3.4 实训项目二数据传送指令
3.4.1 实训目的
3.4.2 实训内容
3.4.3 实训仪器设备
3.4.4 实训步骤
3.4.5 实训结果记录与分析
3.4.6 实训思考题
3.5 实训项目三逻辑运算指令
3.5.1 实训目的
3.5.2 实训内容
3.5.3 实训仪器设备
3.5.4 实训步骤
3.5.5 实训结果记录与分析
3.5.6 实训思考题
3.6 实训项目四算术运算指令
3.6.1 实训目的
3.6.2 实训内容
3.6.3 实训仪器设备
3.6.4 实训步骤
3.6.5 实训结果记录与分析
3.6.6 实训思考题
3.7 实训项目五位操作指令
3.7.1 实训目的
3.7.2 实训内容
3.7.3 实训仪器设备
3.7.4 实训步骤
3.7.5 实训结果记录与分析
3.7.6 实训思考题
第4章 MCS-51单片机程序设计实训
4.1 实训概要
4.1.1 实训要求与重点
4.1.2 实训预备知识
4.2 实训实例分析
4.2.1 实例名称
4.2.2 实训目的
4.2.3 实训内容
4.2.4 实训仪器设备
4.2.5 实训步骤
4.2.6 实训结果观察与记录
4.3 实训项目一分支程序设计
4.3.1 实训目的
4.3.2 实训内容
4.3.3 实训仪器设备
4.3.4 线路图
4.3.5 实训步骤
4.3.6 实训结果观察与记录
4.3.7 实训思考题
4.4 实训项目二数据求极值
4.4.1 实训目的
4.4.2 实训内容
4.4.3 实训仪器设备
4.4.4 实训步骤
4.4.5 实训结果观察与记录
4.4.6 实训思考题
4.5 实训项目三数码转换程序
4.5.1 实训目的
4.5.2 实训内容
4.5.3 实训仪器设备
4.5.4 实训步骤
4.5.5 实训结果观察与记录
4.5.6 实训思考题
4.6 实训项目四多字节无符号数加法程序
4.6.1 实训目的
4.6.2 实训内容
4.6.3 实训仪器设备
4.6.4 实训步骤
4.6.5 实训结果观察与记录
4.6.6 实训思考题
4.7 实训项目五查找程序
4.7.1 实训目的
4.7.2 实训内容
4.7.3 实训仪器设备
4.7.4 实训步骤
4.7.5 实训结果观察与记录
第5章 中断与定时实训
5.1 实训概要
5.2 实训实例分析
5.3 实训项目一 外中断控灯
5.4 实训项目二 脉冲周期测量
5.5 实训项目三 模拟时钟
5.6 实训项目四 脉冲计数测量
5.7 实训项目五 电子乐曲
5.8 实训项目六 脉冲信号发生器
5.9 实训项目七 堆栈操作
第6章 存储器扩展实训
6.1 实训概要
6.2 实训实例分析
6.3 实训项目一 片外RAM数据传送
6.4 实训项目二 查表程序
第7章 单片机I/O口扩展实训
7.1 实训概要
7.2 实训实例分析
7.3 实训项目一 简单I/O口扩展
7.4 实训项目二 8255PB口控制PA口
7.5 实训项目三 模拟交通灯控制
第8章 单片机输入输出设备接口实训
8.1 实训概要
8.2 实训实例分析
8.3 实训项目一 8279扩展板循环显示程序
8.4 实训项目二 8279扩展板键盘程序
8.5 实训项目三 8155接口显示程序
8.6 实训项目四 8155接口键盘程序
第9章 单片机的串行通信实训
9.1 实训概貌
9.2 实训实例分析
9.3 实训项目一 串行口扩展
9.4 实训项目二 串行口模拟音响
第10章 单片机与D/A、A/D转换器的接口实训
10.1 实训概要
10.2 实训实例分析
10.3 实训项目一 0832 D/A转换线性度测量
10.4 实训项目二 0809模数转换实训
第11章 单片机应用系统设计实训
11.1 实训概要
11.2 实训项目一 单片机-PC机通信系统
11.3 实训项目二 单片机模拟防盗系统
11.4 实训项目三 公交车语音提示报站系统
11.5 实训项目四 步进电机控制
参考文献
《单片机原理与应用:基于C语言》主要是采用一个全新的方式,带领学生从零基础开始学习单片机和c语言编程,让学生不仅能在学习过程中认识常用的电子元器件及其识别方式,而且能快速地掌握8051单片机原理以及如何使用C语言来为其编写程序。
《单片机原理与应用:基于C语言》定位于职业院校学生或电子爱好者的入门指导书,读者有无编程基础都可以在短时间内入门8051系列单片机的开发。《单片机原理与应用:基于C语言》使用流行的c语言编写全部代码,因此它也是一本学习C语言的开发实践书,为读者今后进行嵌入式开发和程序代码移植打下坚实基础。
《LED屏开发实训教程》是高等职业教育电子信息类专业"十二五"规划教材,高职示范院校创新型教材之一。