单片机技术基础与应用(txt+pdf+epub+mobi电子书下载)


发布时间:2020-11-24 10:46:57

点击下载

作者:胡伶俐,何建铵

出版社:重庆大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

单片机技术基础与应用

单片机技术基础与应用试读:

前言

单片机是微型计算机应用技术的一个分支,在智能仪表、家用电器、医用设备、航空航天、汽车电子等各个领域都有着广泛的应用,已经成为了当今电子信息领域应用最广泛的技术之一。可以说,在我们周围的电子电器产品中,单片机无处不在。

当前我国正在进行职业教育教学改革,打破了传统的学科体系课程结构,建立基于工作过程的课程体系,采用行动导向,教学合一为指导的教学方法。职业教育注重学生专业技能实践性和专业技能转变为职业能力的可持续性。本书本着精讲、实用、易懂的教学原则,以任务驱动作为教材编写的主线,按任务实施组织教学,做到学以致用,有利于发挥学生的学习主动性并提高学生的学习效率。

本书一共有6个项目,分别是单片机及其开发工具的认识、灯光控制、按键控制、继电器控制、数码管显示控制、点阵显示控制。其中每个任务包括任务分析、任务目的、任务准备工作、任务相关知识、任务实施、任务拓展、任务评价、思考与练习。本书结构清晰明了,项目详尽具体,学生只需要一步一步实施即可完成。知识拓展能够延伸学生的视野;任务评价能够使学生对自己的项目过程进行总结,加深学习的印象;思考与练习为学生的应用留有发挥空间。

在项目的选择上面,充分考虑了各学校的教学设备状况,具有实验材料易得,制作简易,由浅入深,实用性强等特点。在实验过程中,既可以使用万能实验板制作,也可以在已有的实验板、试验箱或试验台上完成。

本书由重庆市工贸高级技工学校胡伶俐、何建铵主编,欧汉福、张芳任副主编,刘洋、曾璐、刘宗赫等老师参与了编写。黔江区职教中心、渝北职教中心、巫溪职教中心、梁平职教中心等同类学校老师也积极参与了本书的编写。

由于单片机是一门飞速发展并不断更新的技术,加之时间仓促,编者水平有限,书中难免有疏漏和不足之处,希望读者在使用本书的过程中提出宝贵的意见。编者2014年12月项目一单片机及其开发工具的认识

目前,单片机已渗透到人们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。手机、电话机、洗衣机、冰箱、空调、电视、玩具、电子表、电子秤、MP3、MP4、数码相机、录音笔、汽车防盗器等常用设备,给我们带来了许多方便和生活情趣,可你了解在这些设备中,发挥主要作用的单片机(如图1.1所示)吗?图1.1 单片机效果图注:本书默认情况下,单片机为51系列单片机。●知识目标(1)能了解单片机的基础知识。(2)能掌握51系列单片机常用引脚及功能。(3)能了解常用型号单片机的特点。(4)熟悉单片机的开发环境。●技能目标(1)能识别不同类型的单片机芯片。(2)能查阅单片机型号和引脚功能。(3)能安装及熟练操作Keil软件,进行程序的编写和调试。●情感目标(1)能养成谦虚、好学的态度,能利用各种信息媒体,获取新知识、新技术。(2)能激发学生分析问题、解决问题的能力。(3)能提高学生对专业的学习兴趣。(4)能提高学生沟通、交流的能力。任务一 认识单片机【任务分析】

单片机因将计算机的主要组成部分集成在一块芯片上而得名,如图1.2所示,为单片机芯片的外形结构,别看它体积很小,有了它,可以使我们的生活更加丰富多彩。在开始学习单片机之前,首先来认识一下单片机,了解单片机的型号;基本引脚及功能、特点;了解单片机的应用领域。下面以51系列单片机为例。图1.2 单片机芯片外形图【任务目的】(1)了解单片机的历史及发展。(2)了解单片机的应用领域。(3)能识别不同类型的单片机芯片。(4)能查阅单片机型号和引脚功能。【任务准备工作】(1)器材准备:芯片AT89S51系列单片机两块。(2)工具准备:白色A4纸一张、作图工具一套、笔一支。【任务相关知识】

1.电子计算机的发展概述(1)1946年2月15日,第一台电子数字计算机问世,如图1.3所示,这标志着计算机时代的到来。图1.3 第一台电子数字计算机

①ENIAC是电子管计算机,时钟频率仅有100 kHz,但能在1 s的时间内完成5000次加法运算。

②与现代的计算机相比,ENIAC有许多不足,但它的问世开创了计算机科学技术的新纪元,对人类的生产和生活方式产生了巨大的影响。(2)匈牙利籍数学家冯·诺依曼在方案的设计上作出了重要的贡献。1946年6月,他又提出了“程序存储”和“二进制运算”的思想,进一步构建了计算机由运算器、控制器、存储器、输入设备和输出设备组成,这一计算机的经典结构,如图1.4所示。图1.4 冯·诺依曼结构(3)电子计算机技术的发展,相继经历了5个时代:

①电子管时代;

②晶体管时代;

③集成电路时代;

④大规模集成电路时代;

⑤超大规模集成电路时代。

计算机的结构仍然没有突破冯·诺依曼提出的计算机的经典结构框架。

2.微型计算机的应用形态

从应用形态上,微机可以分为3种:(1)多板机(系统机)。

将CPU、存储器、I/O接口电路和总线接口等,组装在一块主机板(即微机主板)上。各种适配板卡插在主机板的扩展槽上,并与电源、软/硬盘驱动器及光驱等装在同一机箱内,再配上系统软件,就构成了一台完整的微型计算机系统(简称系统机)。工业PC机也属于多板机。(2)单板机。

将CPU芯片、存储器芯片、I/O接口芯片和简单的I/O设备(小键盘、LED显示器)等装配在一块印刷电路板上,再配上监控程序(固化在ROM中),就构成了一台单板微型计算机(简称单板机),如图1.5所示。图1.5 单板机

单板机的I/O设备简单,软件资源少,使用不方便。早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用。(3)单片机。

在一片集成电路芯片上,集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。

3种应用形态的比较,如图1.6所示。图1.6 3种形态的比较图

系统机(桌面应用)属于通用计算机,主要应用于数据处理、办公自动化及辅助设计。

单片机(嵌入式应用)属于专用计算机,主要应用于智能仪表、智能传感器、智能家电、智能办公设备、汽车及军事电子设备等应用系统。

单片机体积小、价格低、可靠性高,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势。【任务实施】

1.单片机的发展过程及产品近况(1)单片机的发展过程。

单片机技术的发展过程可分为3个主要阶段:

①单芯片微机形成阶段。

1976年,Intel公司推出了MCS-48系列单片机。8位CPU、1 kBROM、64 BRAM、27根I/O线和1个8位定时/计数器。

特点是:存储器容量较小,寻址范围小(不大于4 kB),无串行接口,指令系统功能不强。

②性能完善提高阶段。

1980年,Intel公司推出了MCS-51系列单片机:8位CPU、4 kBROM、128 BRAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64 kB,并有控制功能较强的布尔处理器。

特点是:结构体系完善,性能已大大提高,面向控制的特点进一步突出。现在,MCS-51已成为公认的单片机经典机种。

③微控制器化阶段。

1982年,Intel推出MCS-96系列单片机。

芯片内集成:16位CPU、8 kBROM、232 BRAM、5个8位并口、1个全双工串行口、两个16位定时/计数器。寻址范围64 kB。片上还有8路10位ADC、1路PWM输出及高速I/O部件等。

其特点是:片内面向测控系统外围电路增强,使单片机可以方便灵活地应用于复杂的自动测控系统及设备。“微控制器”的称谓更能反映单片机的本质。(2)单片机产品近况。

①80C51系列单片机产品繁多,主流地位已经形成,近年来推出的与80C51兼容的主要产品有:

*ATMEL公司融入Flash存储器技术的AT89系列;

*Philips公司的80C51、80C552系列;

*华邦公司的W78C51、W77C51高速低价系列;

*ADI公司的ADμC8xx高精度ADC系列;

*LG公司的GMS90/97低压高速系列;

*Maxim公司的DS89C420高速(50MIPS)系列;

*Cygnal公司的C8051F系列高速SOC单片机。

②非80C51结构单片机新品不断推出,给用户提供了更为广泛的选择空间。近年来推出的非80C51系列的主要产品有:

*Intel的MCS-96系列16位单片机;

*Microchip的PIC系列RISC单片机;

*TI的MSP430F系列16位低功耗单片机。

2.MSC-51单片机的基本结构

MSC-51系列单片机把CPU、RAM、ROM、定时器/计数器和多功能的I/O接口等功能集成在一块芯片上,所构成的微型计算机,MSC-51单片机结构框图,如图1.7所示。图1.7 MSC-51单片机结构框图(1)CPU:中央处理器简称CPU,它是单片机的核心部件,由运算器和控制器等部件组成,能够完成各种运算和控制操作。(2)存储器:MSC-51单片机,包括编程存储器ROM和数据存储器RAM,他们的空间是相互独立的。(3)定时器/计数器:MSC-51单片机中,包含两个16位定时器/计数器,他们既作为定时器,用于定时、延时控制;也可作为计数器,用于对外部事件进行计数和检测等。(4)并行I/O口:MSC-51单片机共有4个8位I/O口(P0,P1,P2,P3),每一根I/O口线都可以独立地用作输入或输出。(5)串行I/O口:MSC-51单片机采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。(6)中断控制:MSC-51单片机具有完善的中断控制系统,用于满足实时控制的需要,共有5个中断源,两个中断优先级。

3.MSC-51单片机的引脚及功能

各类型的MSC-51单片机的端子相互兼容,用HMOS工艺制造的单片机大多采用40端子双列直插式(DIP)封装,当然,不同芯片之间的端子功能会略有差异,用户在使用时应注意。

AT89S51单片机是高档8位单片机,但是由于受到集成电路芯片引脚数目的限制,所以许多引脚具有第二功能,AT89S51的引脚和实物图如图1.8所示。图1.8 AT89S51的引脚和实物图

AT89S51的40个引脚大致可分为电源、时钟、I/O口,控制总线几个部分,各引脚功能如下:(1)电源引脚(Vcc和Vss)。

Vcc:电源输入端。作为工作电源和编程校验。

Vss:接公共地端。(2)时钟振荡电路引脚(XTAL1和XTAL2)。

XTAL1、XTAL2:晶体振荡电路反相输入端和输出端。

XTAL1:接外部晶振和微调电容的一端,在单片机内部,它是构成片内振荡器的反向放大器的输入端。当采用外部振荡器时,该引脚接收振荡器的信号,即把此信号直接接到内部振荡器的输入端。

XTAL2:接外部晶振和微调电容的另一端,在单片机内部,它是构成片内振荡器的反向放大器的输出端。当采用外部振荡器时,此引脚应悬空。(3)控制信号引脚(RST/VPD, ALE/PROG, PSEN和EA/VPP)。

①RST/VPD:RST是复位信号输入端,高电平有效。当此输入端保持两个机器周期的高电平时,就可以完成复位操作。RST引脚的第二功能,是备用电源的输入端。当电源Vcc一旦断电,或者电压降到一定值时,可以通过VPD为单片机内部RAM提供电源,以保护片内RAM中的信息不丢失,且上电后能够继续正常运行。

②ALE/PROG:(Address Latch Enable/Programming)ALE为地址锁存信号,当单片机上电正常工作后,ALE引脚不断向外输出正弦脉冲信号,此频率为振荡器频率的1/6。CPU访问外部存储器时,ALE作为锁存低8位地址的控制信号。此引脚的第二功能PROG作为8751编程脉冲输入端使用。

③PSEN:(Program Store Enable)为外部程序存储器的读选通信号,在访问片外存储器时,此端定时输出负脉冲作为片外存储器的选通信号。

④EA/VPP:(Enable Address/Voltage Pulse of Programming)EA为访问程序存储器的控制信号,当EA接高电平时,CPU访问片内ROM,并执行内部程序存储器中的指令,但当PC(程序计数器)的值超过4 kB时,将自动转去执行片外存储器内的程序。当EA脚接低电平时, CPU只访问片外ROM,并执行外部程序存储器中的指令,而不管是否有片内程序存储器。VPP是对8751片内ROM固化程序时,作为施加较高编程电压(12~21 V)的输入端。(4)I/O口引脚(P0,P1,P2,P3)。

MSC-51单片机有4个8位并行输入/输出接口,简称I/O口。P0,P1,P2,P3口共计32根输入/输出线。这4个接口可以并行输入/输出8位数据,也可以按位使用,即每一位均能独立输入或输出。使用中,每一个可表示为“口”名称加“.”加位。如P0口的第0位表示为P0.0 ,P2口的第3位表示为P2.3等。

①P0口。作为输出口:当P0口用作输出口时,因输出级处于开漏状态,必须外接上拉电阻。

作为输入口:当P0口用作输入口时,必须先向该端口锁存器写入“1”。

地址/数据总线输出:P0口用于低8位地址总线和数据总线(分时传送)。

②P1口。用作通用I/O口,用作输入时,均须先写入“1”。

③P2口。第一功能是作为8位双向I/O口使用,第二功能是在访问外部存储器时,输出高8位地址A8—A15。

④P3口。第一功能是作为8位双向I/O口使用,在系统中,8个引脚又有各自的第二功能。

P3.0(RXD):串行口输入端。

P3.1(TXD):串行口输出端。

P3.2(INT0):外部中断0请求输入端。

P3.3(INT1):外部中断1请求输入端。

P3.4(T0):定时/计数器0外部信号输入端。

P3.5(T1):定时/计数器1外部信号输入端。

P3.6(WR):外RAM写选通信号输出端。

P3.7(RD):外RAM读选通信号输出端。

4.单片机的特点(1)控制性能和可靠性高。

单片机的位操作能力,是其他计算机无法比拟的。另外,由于CPU、存储器及I/O接口集成在同一芯片内,各部件间的连接紧凑,数据在传送时受干扰的影响较小,且不易受环境条件的影响,所以单片机的可靠性非常高。

近期推出的单片机产品,内部集成有高速I/O口、ADC、PWM、WDT等部件,并在低电压、低功耗、串行扩展总线、控制网络总线和开发方式(如在系统编程ISP)等方面都有了进一步的增强。(2)体积小、价格低、易于产品化。

单片机芯片即是一台完整的微型计算机,对于批量大的专用场合,一方面可以在众多的单片机品种间进行匹配选择;同时还可以专门进行芯片设计,使芯片的功能与应用具有良好的对应关系;在单片机产品的引脚封装方面,有的单片机引脚已减少到8个或更少。从而使应用系统的印制板减小、接插件减少、安装简单方便。

5.单片机的应用领域(1)智能仪器仪表。

单片机用于各种仪器仪表,一方面提高了仪器仪表的使用功能和精度,使仪器仪表智能化,同时还简化了仪器仪表的硬件结构,从而可以方便地完成仪器仪表产品的升级换代。如各种智能电气测量仪表、智能传感器等。(2)机电一体化产品。

机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。单片机在机电一体化产品的开发中,可以发挥巨大的作用。典型产品如机器人、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、复印机等。(3)实时工业控制。

单片机还可以用于各种物理量的采集与控制。电流、电压、温度、液位、流量等物理参数的采集和控制,均可以利用单片机方便地实现。在这类系统中,利用单片机作为系统控制器,可以根据被控对象的不同特征,采用不同的智能算法,实现期望的控制指标,从而提高生产效率和产品质量。典型应用如电机转速控制、温度控制、自动生产线等。(4)分布式系统的前端模块。

在较复杂的工业系统中,经常要采用分布式测控系统完成大量的分布参数的采集。在这类系统中,采用单片机作为分布式系统的前端采集模块,系统具有运行可靠,数据采集方便灵活,成本低廉等一系列优点。(5)家用电器。

家用电器是单片机的又一重要应用领域,前景十分广阔。如空调器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具等。

另外,在交通领域中,汽车、火车、飞机、航天器等均有单片机的广泛应用。如汽车自动驾驶系统、航天测控系统、黑匣子等。【知识拓展】

MSC-51系列与80C51系列的概述

1.MCS-51系列(1)MCS-51是Intel公司生产的一个单片机系列名称。属于这一系列的单片机有多种,如:

*8051/8751/8031;

*8052/8752/8032;

*80C51/87C51/80C31;

*80C52/87C52/80C32等。(2)该系列生产工艺有两种:一是HMOS工艺(高密度短沟道MOS工艺)。二是CHMOS工艺(互补金属氧化物的HMOS工艺)。

CHMOS是CMOS和HMOS的结合,既保持了HMOS高速度和高密度的特点,还具有CMOS的低功耗的特点。在产品型号中凡带有字母“C”的即为CHMOS芯片,CHMOS芯片的电平既与TTL电平兼容,又与CMOS电平兼容。(3)在功能上,该系列单片机有基本型和增强型两大类。

基本型:

①8051/8751/8031。

②80C51/87C51/80C31。

增强型:

①8052/8752/8032。

②80C52/87C52/80C32。(4)在片内程序存储器的配置上,该系列单片机有3种形式,即掩膜ROM、EPROM和ROMLess(无片内程序存储器)。如:

①80C51有4 kB的掩膜ROM;

②87C51有4 kB的EPROM;

③80C31在芯片内无程序存储器。

2.80C51系列

80C51是MCS-51系列中CHMOS工艺的一个典型品种;其他厂商以8051为基核,开发出的CMOS工艺单片机产品,统称为80C51系列。当前常用的80C51系列单片机主要产品有:

①Intel的:80C31、80C51、87C51,80C32、80C52、87C52等;

②ATMEL的:89C51、89C52、89C2051等;

③Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品。【任务评价】表1.1 任务评价表【思考与练习】(1)查阅相关资料,列出几种单片机的型号。(2)简述单片机的常用领域。(3)单片机的特点有哪些?任务二 安装并使用Keil uVision软件【任务分析】

在任务一中,我们认识了单片机,掌握了单片机的引脚分布及其作用。而且也学会了简单控制原理图的连接和绘画。然而,仅仅这样是不够的。我们只是有了电路,但是还没有实现对电路的控制。要实现对电路的控制,编写控制程序是很重要的环节,通常我们使用Keil C51软件。下面就介绍一下Keil uVision2。【任务目的】(1)会按要求安装软件。(2)能快速进行软件启动。(3)会正确使用编程软件。【任务准备工作】(1)器材准备:计算机一台(奔腾级以上的家用计算机即可)。(2)工具准备:KeilC8.05软件安装光盘一张。【任务相关知识】

Keil uVision2是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统C语言的语法来开发,与汇编语言相比,C语言在功能性、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大地提高了工作效率和项目开发周期。C语言还能嵌入汇编语言,可以在关键的位置嵌入,使程序达到接近于汇编语言的工作效率。Keil C51标准C编译器,为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码的高效性、快速性。C51编译器的功能不断增强,使你可以更加贴近CPU本身,以及其他的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含编译器、汇编器、实时操作系统、项目管理器、调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。

Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面,使用户很快就能学会使用Keil C51来开发单片机的应用程序。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时,更能体现高级语言的优势。【任务实施】

1.软件安装

软件安装如图1.9—图1.17所示。图1.9 启动安装桌面图1.10 进入安装界面图1.11 许可证选择界面图1.12 同意界面图1.13 目录选择界面图1.14 用户资料填写界面图1.15 用户填写完成界面图1.16 安装进度界面图1.17 安装完成界面

2.Keil uVision2软件的使用(1)进入主界面。

单击桌面快捷图标,可以直接进入主界面,如图1.18所示。图1.18 Keil uVision2主界面(2)新建一个工程项目,并命名为Test。

单击Keil uVision2主界面的“工程”菜单,选择“新建工程”即可进入新建工程界面,如图1.19所示。图1.19 新建工程界面

新建的工程要起个与工程项目意义一致的名字,可以是中文名;这里的程序是实验测试程序,所以起的名字为Test,并将Test工程“保存”到C:\Keil下,如图1.20所示。图1.20 工程命名窗口

Keil环境要求为Test工程选择一个单片机型号;这里选择Atmel公司的89C51(虽然我们使用的是89S51,但由于89S51与89C51内、外部结构完全一样,所以这里依然选择“89C51”)。单击“确定”按钮后工程项目就算建立了,如图1.21所示。图1.21 单片机型号选择窗口(3)源程序编写与保存。

单击“文件”中的“新建”,新建一个空白文档;这个空白文档就是编写单片机源程序的场所。在这里你可以进行编辑、修改等操作,如图1.22所示。图1.22 源程序编写窗口

保存文件时,其文件名最好与前面建立的工程名相同(当然,这里为Test),其扩展名必须为.Asm!“文件名”一定要写全,如:Test.Asm,如图1.23所示。图1.23 文件保存窗口

注:如果是C语言,扩展名为.c。(4)将Asm文件添加到工程中。

具体做法如下:

鼠标右击“Source Group 1”,在弹出的菜单中选“增加文件到组Source Group 1”,如图1.24所示。图1.24 工程中添加文件窗口

在接下来出现的窗口中,选择“文件类型”为“Asm源文件(*.a*,*.src)”(由于我们使用的是汇编语言,所以选择Asm源文件),选中刚才保存的Test.Asm,按“Add”,再按“关闭”,文件就添加到了工程中,如图1.25所示。图1.25 文件类型选择窗口(5)设置目标属性。

向工程添加了源文件后,鼠标右击“TarGet1”,在弹出的菜单中选“目标Target1属性”,如图1.26所示。图1.26 目标属性设置窗口

然后在打开的对话框中,选择“输出”选项卡,在这个选项卡中,“E生成hex文件”选项前要打钩,按“确定”退出,完成目标属性的设置,如图1.27所示。图1.27 输出选项卡设置窗口(6)工程项目的运行。

从菜单的“工程”中,执行“R重新构造所有目标”,或者按图1.28所示圈中的按钮,汇编、连接、创建hex文件,一气呵成;在工程文件的目录下就会生成与工程名相同的一些文件,其中大部分文件我们不必关心,而生成的hex文件才是所需要的文件。它是要烧写到单片机中的最终代码,也就是单片机可以执行的程序。图1.28 工程项目运行窗口

注意:若在下面的状态窗中有错误提示,就需要再次编辑、修改源程序(如语法、字符有错等)、保存、将文件添加到工程中、设置目标属性,重新运行工程项目,直至无错误。(7)模拟调试。

在没有语法错误的情况下,按图1.29所示圈中的按钮就可以进行。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载