1第1、3章单片机应用概述与开发步骤第4章80C51单片机硬件基础知识第5章80C51单片机软件基础知识第6章80C51单片机内部资源及应用第7章单片机外部扩展资源及应用21.电子计算机的发展概述2.单片机的发展过程及产品近况3.单片机的特点4.单片机应用系统开发简介第1、3章单片机应用概述与开发步骤单片机简介3单片机及其展过程单片机是什么?单片机是单片微型计算机的简称,它是在一块半导体芯片上,集成了CPU、半导体存储器、I/O(Input/Output)接口、中断系统和定时器等计算机必备部件,所构成的一个完整的数字电子计算机。第1、3章单片机应用概述与开发步骤4单片机现状单片机经过约30年的发展,已经形成有几千种型号上百种品牌的半导体产业,对电子信息技术、工业控制技术、军事技术的发展起到巨大的推动作用。目前主流的单片机:51内核的系列单片机Microchip公司的PIC系列单片机Motorola公司的68系列TexasInstrument公司的MSP16bit系列单片机ARM内核的32bit系列单片机第1、3章单片机应用概述与开发步骤5单片机应用系统开发简介单片机应用系统是以单片机为核心构成的智能化产品。为了实现产品的智能化处理与智能化控制,还要嵌入相应的控制程序,称之为单片机应用软件。嵌入了应用软件的单片机系统称为单片机应用系统。单片机是单片机系统中的一个器件,单片机系统是构成某一单片机应用系统的全部硬件电路,单片机应用系统是单片机系统和应用软件相结合的产物。第1、3章单片机应用概述与开发步骤6•单片机应用系统的研制步骤和方法•单片机应用系统开发的软硬件环境•KeilC51高级语言集成开发环境•基于Proteus的单片机系统仿真4.单片机应用系统开发简介•Proteus开发环境第1、3章单片机应用概述与开发步骤7单片机应用系统的研制流程如图所示:第1、3章单片机应用概述与开发步骤8硬件系统根据总体设计中确立的功能特性要求,确定单片机的型号、所需外围扩展芯片、存储器、I/O电路、驱动电路,可能还有A/D和D/A转换电路以及其它模拟电路,设计出应用系统的电路原理图。第1、3章单片机应用概述与开发步骤9硬件设计硬件电路做成目标板运用PROTEUS、PROTEL等软件第1、3章单片机应用概述与开发步骤10软件系统•系统资源分配•程序结构•数学模型•程序流程•编制程序第1、3章单片机应用概述与开发步骤11程序设计通常是C语言或者汇编语言,在特定的集成开发环境(IDE)中编程调试,比如应用最广泛的KEILuVision3第1、3章单片机应用概述与开发步骤12单片机应用系统的研制步骤和方法简介。第1、3章单片机应用概述与开发步骤13一个典型的单片机系统开发环境组成如图所示。单片机系统开发环境组成第1、3章单片机应用概述与开发步骤144.1MCS-51系列及80C51系列单片机简介4.280C51系列单片机外引脚功能4.380C51单片机内部结构4.4低功耗运行方式4.580C51单片机最小系统重点重点重点154.1MCS-51系列及80C51系列单片机简介MCS-51系列和80C51系列单片机Intel公司推出的系列单片机有:MCS-48、MCS-51、MCS-96系列。Intel公司单片机系列的符号包括51和52两个子系列。第4章80C51单片机硬件基础知识16基于HMOS工艺,它们的指令系统与芯片引脚完全兼容,只是片内程序存储器(ROM)有所不同。51系列单片机80318051875l80C3180C5187C5l第4章80C51单片机硬件基础知识17MCS-51系列单片机内部组成8位CPU。片内带振荡器及时钟电路。128B片内数据存储器。4KB片内程序存储器(8031/80C31无)。程序存储器的寻址范围为64KB。片外数据存储器的寻址范围为64KB。21B特殊功能寄存器。4×8根I/O线。1个全双工串行I/O接口,可多机通信。2个16位定时器/计数器。中断系统有5个中断源,可编程为两个优先级。111条指令,含乘法指令和除法指令。布尔处理器。使用单+5V电源。51子系列的主要功能为:第4章80C51单片机硬件基础知识18与51子系列的不同之处在于:片内数据存储器增至256B,片内程序存储器增至8KB(8032/80C32无),有26B的特殊功能寄存器,有3个16位定时器/计数器,有6个中断源。其他性能均与5l子系列相同。52系列单片机80328052875280C3280C5287C52第4章80C51单片机硬件基础知识19Intel80C51系列单片机产品命名规则第4章80C51单片机硬件基础知识204.280C51系列单片机外引脚功能常用两种封装为双列直插式DIP40和方形封装式LCC44P1口P3口P0口P2口时钟端复位端控制信号接VCC(+5V)接地端214.280C51系列单片机外引脚功能第4章80C51单片机硬件基础知识22地址、数据和控制:三总线结构80C51三总线具有以下特点:(1)P0口的地址/数据复用。(2)两个独立的并行扩展空间。(3)外围数据存储器扩展的统一编址。锁存器第4章80C51单片机硬件基础知识2380C51单片机内部结构框图24中央处理器CPU单片机最核心的部分是CPU,可以说CPU是单片机的大脑和心脏。第4章80C51单片机硬件基础知识25存储器组织(哈佛结构)26在程序存储器中,以下单元具有特殊功能0000H0FFFH1000HFFFFHEA=1内部EA=0外部外部PSEN0000HFFFFHROM0003H000BH0013H001BH0023H复位入口INT0中断入口T0中断入口INT1中断入口T1中断入口串口中断入口0000H:80C51复位后,PC=0000H,即程序从0000H开始执行指令。0003H:外部中断0入口。000BH:定时器0溢出中断入口。0013H:外部中断1入口。001BH:定时器1溢出中断入口。0023H:串行口中断入口。002BH:定时器2入口(仅52子系列有)。程序存储器(51子序列)程序存储器用于存放编好的程序或表格常数27数据存储器数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。80C51系列单片机数据存储器有片内和片外之分。片内又有RAM和SFR之分,这几个部分的访问指令不同的,从这一点看,数据存储器的使用比程序存储器略微复杂点。采用C51语言编程则要简单许多。第4章80C51单片机硬件基础知识28这样可把数据存储器分为片外数据存储器、片内数据存储器、特殊功能存储器,以下分别加以介绍。1)片内数据存储器片内数据存储器分为工作寄存器区、位寻址区、数据缓冲器区等三个区域。第4章80C51单片机硬件基础知识29•工作寄存器区00H~1FH单元为工作寄存器区。工作寄存器也称通用寄存器,供用户编程时使用,临时寄存8位信息。80c51单片机片内RAM配置1)片内数据存储器30•位寻址区20H~2FH单元是位寻址区,该区的每一位都赋予了一个位地址。•数据缓冲区30H~7FH是数据缓冲区,即用户RAM区,共80个单元。•堆栈与堆栈指针•片内RAM的部分单元还可以用作堆栈。1)片内数据存储器312)特殊功能寄存器所有单片机片内外设是依靠对内部特殊功能寄存器的操作实现其功能的,80C51也不例外,特殊功能寄存器(SFR,SpecialFunctionRegister)也称专用寄存器,专用于控制、管理单片机内部算术逻辑部件、并行I/O口、串行I/O口、定时器/计数器、中断系统等功能模块的工作,用户在编程时可以置数设定,不能移作他用。通过特殊功能寄存器可实现对单片机内部资源的操作和管理。第4章80C51单片机硬件基础知识32常用特殊功能寄存器33常用特殊功能寄存器第4章80C51单片机硬件基础知识34端口P0~P3特殊功能寄存器P0~P3分别是I/O端口P0~P3的锁存器。80C51单片机是把I/O当作一般的特殊功能寄存器使用,不专设端口操作指令,使用方便。常用特殊功能寄存器第4章80C51单片机硬件基础知识354.580C51单片机最小系统单片机最小系统就是能使单片机工作的最少的器件构成的系统,是大多数控制系统所必不可少的关键部分。36图为80C32单片机的外部扩展总线。扩展外部接口电路第4章80C51单片机硬件基础知识37将80C32单片机的外部扩展总线接到外部程序存储器的地址总线、数据总线和控制总线,即构成80C32单片机最小系统。扩展外部接口电路第4章80C51单片机硬件基础知识385.1计算机语言概述5.280C51单片机寻址方式5.380C51单片机指令系统5.480C51汇编语言程序设计5.580C51单片机C51程序设计语言5.6C51的运算符和表达式5.7C51的库函数5.8C51的应用技巧暂时不讲39单片机应用系统硬件软件程序设计的最终结果是软件。第5章80C51单片机软件基础知识40机器语言是计算机唯一能识别的语言,用汇编语言和高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(称为目标程序),计算机才能识别。•计算机语言e10033f6bf020b510f3a58cc85025068131cbe1fbea11bf01e11b657b8111bb21138974b4b4879f9ad86e08bc8bdffffe820e13403d01741a7f3aaebf32dff050e8f05af7d88bd8268a1aae14f4a75f9ebdecb57bb21138bc140f727f7f58bfbba1114f4f4ae1683957ff9528bc5f725f7372bc895f7652f737952be8feefee18110796c66fe10746d014d1d1d1e579ec5ab8111ff74b4b48e19b3bd075f75fc383f783a65d5982cdb284246957a9c5caaa1be1b44f52b4923fab6e9ea81dc63fce6ae7aebb5f7b10b8b4f78e1cde2bf364e399d79293faf9365216fb5e8e5a6c2e9b043d3a3e1e6cfd3fdfdcbd14c5ee0635886bb3e9c120bccc91a3478170b3e1ffd61a9ec2c912e74eadf45fe330e9939d7e8f9f4d244e8d722e218bee2ce8825cf304aa829ae3f47c62d85e9735413be6e03465第5章80C51单片机软件基础知识41汇编语言是能够利用单片机所有特性直接控制硬件的唯一语言,对于一些需要直接控制硬件的场合,汇编语言是必不可少的。但汇编语言不是一种结构化的程序设计语言,对于较复杂的单片机应用系统,它的编写效率很低。第5章80C51单片机软件基础知识42许多型号的单片机内部ROM已经达到64KB甚至更大,且具备在系统编程(ISP,InSystemProgrammable)功能,进一步推动了C语言在单片机应用系统开发中的应用。开发人员首先必须对C语言有较透彻的掌握,其次还应该对实际单片机硬件系统有深入的理解。•高级语言第5章80C51单片机软件基础知识43C51的特点和功能主要是80C51单片机自身特点引起的。头文件:为了实现这些功能,只需将相应的功能寄存器的头文件加载在程序中,就可实现指定的功能。因此,C51系列头文件集中体现了各系列芯片的不同功能。数据类型:由于80C51系列器件包含了位操作空间和丰富的位操作指令,因此C51比ANSIC多一种位类型。C51特点:第5章80C51单片机软件基础知识44数据存储类型:80C51系列单片机有程序存储器和数据存储器。数据存储器又分片内和片外数据存储器。片内数据存储器还分直接寻址区和间接寻址区,分别对应code、data、idata、xdata以及根据80C51系列特点而设定的pdata类型。第5章80