第1章 单片机的认知 1
1.1 单片机概述 2
1.1.1 单片机的概念 2
1.1.2 主流单片机介绍 2
1.1.3 单片机的应用 3
1.2 数制与编码 4
1.2.1 数制 4
1.2.2 数制的C语言表述 7
1.2.3 原码、反码和补码 9
1.2.4 常用编码 11
小结 13
习题 14
第2章 单片机的初步应用 15
2.1 89C51单片机最小系统 16
2.1.1 89C51单片机硬件结构 16
2.1.2 89C51单片机存储器结构 22
2.2 89C51单片机I/O系统 26
2.2.1 并行端口结构 26
2.2.2 指令系统简介 31
2.3 Keil C51软件简介 33
2.3.1 Keil C51软件的安装 33
2.3.2 程序录入与编辑 34
2.3.3 reg51.h头文件详解 42
小结 46
习题 46
第3章 89C51单片机汇编语言简介 47
3.1 89C51单片机指令系统 48
3.1.1 89C51单片机指令分类 48
3.1.2 汇编指令格式 49
3.1.3 寻址方式 50
3.1.4 数据传送指令 52
3.1.5 算术运算指令 54
3.1.6 逻辑运算指令 56
3.1.7 控制转移指令 58
3.1.8 位操作指令 60
3.1.9 伪指令 61
3.2 汇编语言程序结构 63
3.2.1 顺序结构 63
3.2.2 分支结构 64
3.2.3 循环结构 65
3.2.4 子程序 67
小结 72
习题 72
第4章 C51程序设计 75
4.1 C51语言概述 76
4.1.1 C语言和C51语言 76
4.1.2 C51的特点 77
4.1.3 简单C51程序介绍 77
4.2 C51数据类型和数据存储类型 80
4.2.1 常量与变量 80
4.2.2 整型数据 81
4.2.3 实型数据 82
4.2.4 字符型数据 83
4.2.5 数组类型 84
4.2.6 指针类型 86
4.2.7 Keil C51中特有的数据类型 87
4.2.8 数据的存储类型 88
4.3 运算符和表达式 89
4.3.1 算术运算符和算术表达式 89
4.3.2 赋值运算符和赋值表达式 90
4.3.3 逗号运算符和逗号表达式 90
4.3.4 关系运算符和关系表达式 91
4.3.5 逻辑运算符和逻辑表达式 91
4.3.6 位操作运算符和表达式 92
4.4 C51程序结构 93
4.4.1 顺序结构 93
4.4.2 选择结构 94
4.4.3 循环结构 98
4.5 函数 102
4.5.1 函数的定义 102
4.5.2 函数的调用 103
4.5.3 局部变量和全局变量 105
4.5.4 intrins.h库函数介绍 106
4.5.5 中断程序的编写 108
4.5.6 寄存器组的切换 109
小结 112
习题 112
第5章 单片机中断应用 113
5.1 中断的概念 114
5.2 中断控制 115
5.3 单片机中断处理过程 119
5.4 中断系统C51语言编程要点 121
小结 128
习题 128
第6章 单片机定时/计数器应用 129
6.1 定时/计数器的结构及其工作原理 130
6.2 定时/计数器的工作寄存器 131
6.3 定时/计数器的工作方式 133
6.4 定时/计数器C51语言编程要点 136
小结 139
习题 140
第7章 单片机串行口应用 141
7.1 串行通信及其总线标准 142
7.1.1 串行通信的基本概念 142
7.1.2 串行通信总线标准及其
接口 144
7.2 单片机串行口及其控制 147
7.2.1 89C51单片机串行口的结构 147
7.2.2 89C51单片机串行口
控制寄存器 147
7.2.3 89C51单片机串行口
工作方式 148
7.2.4 波特率的设定及串行口
初始化 149
7.2.5 串行口C51语言编程要点 150
小结 156
习题 156
第8章 单片机接口技术 157
8.1 I/O口扩展 158
8.1.1 任务一:简单I/O口
扩展的实现 158
8.1.2 任务二:可编程I/O口
扩展的实现 161
8.2 人机交互接口 170
8.2.1 任务三:简单的键盘
接口的实现 170
8.2.2 任务四:LED数码管显示
接口的实现 172
8.3 任务五:A/D转换器及接口技术 186
8.4 任务六:D/A转换器及接口技术 196
小结 204
习题 204
第9章 单片机综合应用实例 205
9.1 任务一:简易四路智力抢答器 206
9.2 任务二:多功能智能温度测量仪 221
小结 238
习题 238
附录 239
附录1 ASCII码表 240
附录2 51单片机汇编指令速查表 241
附录3 Keil C51常用库函数 246
附录4 Keil C51常见错误警告
提示信息 250
参考文献 2552100433B
了“以项目为载体”的编写思路,以及以项目引导教学的编写原则。经过与多所高职高专教学一线教师的深入切磋,我们对教学内容进行了整合,将合适的应用实例与具体知识点相融合,尽量做到学以致用,并适当降低了理论难度,丰富了实践内容。
本书以常用的89C51为典型机型讲述单片机原理及接口技术,以提高学生实际应用能力为目的丰富了常用串行口芯片扩展的内容。书中还利用一章的篇幅具体对两个设计实例进行了详尽的实施过程描述,可使学生熟悉设计过程中的思路与方法。本书采用C51语言作为设计语言,为学生能够早日掌握单片机的实际开发技术做出了较好的铺垫。
本书共分为9章,第1、2章介绍单片机的认知和初步应用,第3、4章介绍单片机的汇编语言及C51语言程序设计,第5~7章介绍单片机的中断系统、定时/计数器和串行接口,第8、9章介绍单片机接口技术和单片机应用系统开发。附录中的ASCII码表、51单片机汇编指令速查表、Keil C51常用库函数和Keil C51常见错误警告提示信息可供查询。全书参考学时为84学时,第3章可作为选学内容。
本书可作为高职高专、中等职业学校电类专业“单片机原理及应用”课程以及实践的教学用书,同时也非常适合自学单片机的读者作为参考。
本书由承德石油高等专科学校邓立新担任主编,承德石油高等专科学校董国增、衡水职业技术学院曹月真任副主编。具体编写分工如下:第1章、第5章、第6章和第7章由曹月真编写,第2章和第3章由钱彬编写,第4章由邓志辉编写,第8章由董国增编写,第9章和附录由邓立新编写。
由于作者水平及能力有限,加之时间仓促,书中难免出现错误和不妥之处,恳请读者批评指正,并欢迎来函来电探讨,一并感谢。
编 者
本书以89C51为典型机型,结合大量实例,并以Keil C51作为主要编程和调试工具,由浅入深地讲解了单片机的工作原理及应用技术。全书共分为9章,主要内容包括:单片机基础知识与数制编码、单片机汇编语言程序设计、单片机C51语言程序设计、中断系统与定时/计数器、串行接口、单片机接口技术、单片机应用系统开发。本书将单片机技术的硬件和软件、理论和实践、情境化设计项目等进行了有机的结合,使读者可以在接近实际开发的过程中较完整地学习单片机技术及开发工具的使用,实现了教、学、做的合一。
8051单片机在一块芯片上集成了一个微型计算机的主要部件,它包括以下几部分: 1个8位微处理器(CPU)。 1个时钟电路。 4KB程序存储器。 256B数据存储器。 2个16位定时/计数器。 64KB...
#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit spk=P3^0;sbit k0=P3^...
第2版前言第1版前言第1章 土方工程1.1 土的分类与工程性质1.2 场地平整、土方量计算与土方调配1.3 基坑土方开挖准备与降排水1.4 基坑边坡与坑壁支护1.5 土方工程的机械化施工复习思考题第2...
基于高职学院学生的特点,利用项目式的教学方法对《单片机原理及应用》课程进行了整体设计,提出了以\"单片机最小开发系统\"为主线的1344的教学模式,初步实现了课程的整体设计,提高了学生学习的主动性和积极性,达到较好的教学效果。
单片机原理及应用11LED数码管显示
本书作为《单片机原理及应用——基于Proteus和Keil C》的姊妹篇,在保持原教材结构和风格的基础上,取消了其中的汇编语言内容,将节省的空间用于加强C51语言内容。
本书在C51内容编排上做了较大改进:在集中介绍了执行语句、变量、指针、数组和函数等C51基本内容之后,安排了LED控制、独立开关检测、行列式键盘扫描、数码管静态和动态显示等与单片机I/O口相关的C51应用内容,以此缩短编程语言与单片机应用的教学时间差。中断函数及片外RAM访问等与单片机硬件相关的C51内容则穿插到后续原理章节里介绍。采用这种集中与分散相结合,理论与应用相结合的方案,有望促使读者更好地掌握C51与单片机内容,为今后的工程应用打下扎实基础。 为方便读者学习,本书每章都有小结和习题,书末附有与教学进度相呼应的实验指导及相关阅读材料,还配有相关课程网站。
本书可作为高等工科院校机械类、电气与电子信息类、计算机类各专业48~64学时要求的教材,也可作为从事嵌入式应用系统设计、生产从业人员的岗位培训教材及自学参考书。
《高职高专“十二五”规划教材:单片机原理及应用(基于C语言)》以C语言(C51)为主线,同时兼顾汇编语言,详细介绍了51系列单片机的原理及应用知识。《高职高专“十二五”规划教材:单片机原理及应用(基于C语言)》主要内容包括单片机基础知识、MCS-51单片机的基本结构、MCS-51单片机的指令系统及汇编程序设计、单片机的C51程序设计、MCS-51的定时和中断系统、串行接口及串行通信技术、AT89C51单片机系统扩展、AT89C51单片机的接口技术以及单片机应用系统设计等。同时,选用了信号灯、流水灯、数字钟、计数器、数字电压表、信号发生器、单片机双机通信、球赛记分牌等十个单片机典型应用作为实训,并且所有实训均在Keil C51 Vision4和ISIS7 professional环境下调试通过。
《高职高专“十二五”规划教材:单片机原理及应用(基于C语言)》内容简洁实用,讲解通俗易懂,并有大量应用实例,实用性强,既可作为高职高专院校通信类、信息类、应用电子类、控制类、仪器仪表类以及机电类等专业单片机课程的教材,也可作为从事单片机开发应用的工程技术人员的参考书。
第1章 单片机基础知识概述
1.1 单片机概述
1.1.1 单片机及其发展概况
1.1.2 单片机的特点和应用
1.1.3 单片机的发展趋势
1.1.4 MCS-51单片机的学习
1.2 单片机学习的预备知识
1.2.1 数制及其转换
1.2.2 有符号数的表示方法
1.2.3 位、字节和字
1.2.4 BCD码
1.2.5 ASCII码
1.2.6 基本逻辑门电路
1.3 Proteus应用简介
1.3.1 ISIS模块应用举例
1.3.2 ARES模块应用举例
本章小结
思考与练习题1
第2章 MCS-51单片机的结构及原理
2.1 MCS-51单片机的结构
2.1.1 MCS-51单片机的内部结构
2.1.2 MCS-51外部引脚及功能
2.2 MCS-51的存储器结构
2.2.1 存储器划分方法
2.2.2 程序存储器
2.2.3 数据存储器
2.3 单片机的复位、时钟与时序
2.3.1 复位与复位电路
2.3.2 时钟电路
2.3.3 单片机时序
2.4 并行I/O口
2.4.1 P1口
2.4.2 P3口
2.4.3 P0口
2.4.4 P2口
本章小结
思考与练习题2
第3章 单片机的C51基础知识
3.1 C51语言概述
3.2 Keil软件开发工具
3.2.1 μVision5的软件界面
3.2.2 μVision5的使用方法
3.3 C51的基本执行语句
3.3.1 表达式语句
3.3.2 选择语句
3.3.3 循环语句
3.3.4 注释语句
3.4 C51的变量
3.4.1 变量概述
3.4.2 变量名
3.4.3 数据类型
3.4.4 存储类型
3.4.5 存储种类
3.5 C51的指针
3.6 C51的数组
3.6.1 一维数组的定义
3.6.2 一维数组的使用
3.6.3 字符数组
3.6.4 二维数组
3.7 C51的函数
3.7.1 函数的基本概念
3.7.2 函数的定义
3.7.3 函数的调用
本章小结
思考与练习题3
第4章 单片机I/O口方式的应用
4.1 C51联合仿真方法
4.2 I/O端口的简单应用
4.2.1 发光二极管与应用编程
4.2.2 数码管静态显示原理与编程
4.3 I/O端口的进阶实践
4.3.1 数码管动态显示原理与编程
4.3.2 行列式键盘原理与编程
本章小结
思考与练习题4
第5章 单片机的中断系统
5.1 中断的概念
5.2 中断控制系统
5.2.1 中断系统的结构
5.2.2 中断控制
5.3 中断处理过程
5.4 中断的编程和应用举例
5.4.1 中断程序设计举例
5.4.2 扩充外部中断源
本章小结
思考与练习题5
第6章 单片机的定时/计数器
6.1 定时/计数器的结构与 工作原理
6.1.1 定时/计数器的基本原理
6.1.2 定时/计数器的结构
6.2 定时/计数器的控制
6.2.1 TMOD寄存器
6.2.2 TCON寄存器
6.3 定时/计数器的工作方式
6.3.1 方式1
6.3.2 方式2
6.3.3 方式0
6.3.4 方式3
6.4 定时/计数器的编程和应用
本章小结
思考与练习题6
第7章 单片机的串行口及应用
7.1 串行通信概述
7.2 MCS-51的串行口控制器
7.2.1 串行口内部结构
7.2.2 串行口控制寄存器
7.3 串行工作方式0及其应用
7.4 串行工作方式1及其应用
7.5 串行工作方式2及其应用
7.6 串行工作方式3及其应用
本章小结
思考与练习题7
第8章 单片机接口技术
8.1 单片机的系统总线
8.1.1 三总线结构
8.1.2 地址锁存原理及实现
8.2 简单并行I/O口扩展
8.2.1 访问扩展端口的软件方法
8.2.2 简单并行输出接口的扩展
8.2.3 简单并行输入接口的扩展
8.3 可编程并行I/O口扩展
8.3.1 8255A的内部结构、引脚及地址
8.3.2 8255A的控制字
8.4 D/A转换与DAC0832应用
8.4.1 DAC0832的工作原理
8.4.2 DAC0832与单片机的接口及编程
8.5 A/D转换与ADC0809应用
8.5.1 逐次逼近式模数转换器的工作原理
8.5.2 ADC0809与单片机的接口及编程
8.6 开关量功率接口技术
8.6.1 开关量功率驱动接口
8.6.2 开关量功率驱动接口应用举例
本章小结
思考与练习题8
第9章 单片机应用系统的设计与开发
9.1 单片机系统的设计开发过程
9.1.1 单片机典型应用系统
9.1.2 单片机应用系统的开发过程
9.2 单片机系统的可靠性技术
9.2.1 硬件抗干扰技术概述
9.2.2 软件抗干扰技术概述
9.3 单片机系统设计开发应用 举例——智能仪器
9.3.1 功能概述
9.3.2 硬件电路设计
9.3.3 软件系统设计
9.3.4 仿真开发过程
9.4 单片机串行扩展单元介绍
9.4.1 串行A/D转换芯片MAX124及应用
9.4.2 串行D/A转换芯片LTC145X及应用
9.4.3 串行E2PROM存储器AT24CXX及应用
9.4.4 字符型液晶显示模块LM1602及应用
9.4.5 串行日历时钟芯片DS1302及应用
本章小结
思考与练习题9
附录A 实验指导
实验1 计数显示器
实验2 指示灯/开关控制器
实验3 指示灯循环控制
实验4 指示灯/数码管的中断控制
实验5 电子秒表显示器
实验6 双机通信及PCB设计
实验7 直流数字电压表设计
实验8 步进电机控制设计
附录B 阅读材料 2100433B