邹显圣《单片机原理与应用项目式教程》多媒体课件项目53394273_第1页
邹显圣《单片机原理与应用项目式教程》多媒体课件项目53394273_第2页
邹显圣《单片机原理与应用项目式教程》多媒体课件项目53394273_第3页
邹显圣《单片机原理与应用项目式教程》多媒体课件项目53394273_第4页
邹显圣《单片机原理与应用项目式教程》多媒体课件项目53394273_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,微控制器技术应用,项目一 了解AT89C51单片机及其开发环境,项目一 了解AT89C51单片机及其开发环境,【能力目标】,1能够运用常用的系统联调方法进行单片机应用系统的软、硬件联合调试。 2能够进行伟福H51/L仿真器正确的连接,并且进行正确的参数设置。 3能够使用WAVE6000软件中的单步执行、执行到断点及全速执行程序等方法对汇编程序进行调试和编译。 4能够进行西尔特SUPERPRO/L+编程器的正确连接及调试。 5能够使用西尔特SUPERPRO/L+编程器对AT89C51单片机的目标程序进行读、写、编程、校验等操作。 6能够完成时钟电路设计,并且进行时钟电路的正确连接及调试。 7能够完成复位电路设计,并且进行复位电路的正确连接及调试。 8能够进行本项目单片机最小应用系统的开发,设计出硬件电路图,并且能够进行电路的正确连接及调试。,项目一 了解AT89C51单片机及其开发环境,【知识目标】,1明确单片机应用系统的开发流程,掌握单片机应用系统的开发原则。 2掌握单片机应用系统的软、硬件调试方法。 3掌握伟福H51/L仿真器的功能及使用方法。 4掌握WAVE6000软件的安装方法。 5明确西尔特SUPERPRO/L+编程器的作用。 6掌握西尔特SUPERPRO/L+编程器系统的安装方法。 7明确单片机的概念,了解其发展趋势。 8掌握AT89C51单片机的硬件组成和各功能部件的作用。 9总体了解AT89C51单片机的内部结构和引脚的分类。 10掌握AT89C51单片机内部数据存储器的地址空间分配。 11掌握AT89C51单片机中字节地址与位地址的区别。 12掌握AT89C51单片机程序状态字寄存器的位顺序及位含义。 13熟悉AT89C51单片机并行I/O口的特点和功能。 14理解时钟周期和机器周期的概念,明确时序的含义。 15掌握AT89C51单片机应用系统的复位方法及复位后各寄存器的状态。,项目一 了解AT89C51单片机及其开发环境,一、项目引入,二、相关理论知识,三、项目实施,四、项目小结,五、自测题,一、项目引入,单片机开发系统是一种专门用来开发单片机应用系统或目标系统的微型计算机开发系统,而微型计算机开发系统实际上是一种特殊的微型计算机系统,专门用来调试微机应用系统的硬件和开发应用软件。无论是学习还是工程应用,单片机开发系统都是必不可少的工具。 单片机在控制、测量领域有着广泛的应用。单片机的应用系统一般包括硬件电路和程序设计两个部分,而这两个部分是通过调试最终实现一个完整的系统功能。在调试过程中,开发环境可以对电路和程序进行纠错、调试和运行,掌握单片机开发环境的使用技能是学习单片机的第一步。 本项目从对单片机芯片开始,手把手地教读者建立单片机开发环境;通过项目实例引领读者进入开发环境,体验开发环境的使用方法。在实际操作中让读者由内到外、由浅到深,逐步认识单片机及其开发环境。,二、相关理论知识,二、相关理论知识,(一)单片机应用开发环境,二、相关理论知识,(一)单片机应用开发环境,1单片机应用系统开发的硬件条件,硬件通常需要有:计算机一台、编程器一只、AT89C51芯片一片、万能实验板(或者面包板)一块,再准备一只仿真器和其他常规电工工具。本套教材所使用的开发工具如下:1)编程器:选用西尔特SUPERPRO/L+。2)仿真器:选用伟福H51/L。3)仿真头:使用伟福POD-8X5XP。,二、相关理论知识,(一)单片机应用开发环境,2单片机应用系统开发的软件条件,一些常用软件是必须具备的。 程序开发软件有伟福6000、Keil Vison3等;硬件电路板制作软件有Protel 99 SE、Protel DXP 2004等。,二、相关理论知识,(一)单片机应用开发环境,3单片机应用系统的开发流程,单片机应用系统的设计主要由硬件和软件两部分组成。硬件除单片机本身的芯片外,还包括单片机扩展的存储器、输入/输出通道、人机交互通道以及单片机基本系统必须的常规芯片等。软件则是各种工作程序的集合,概括起来包括系统软件和应用软件两个部分。只有将硬件和软件有机地紧密配合起来才能设计出高性能的单片机应用系统。归纳起来,单片机应用系统的设计过程大致有以下几个方面。,(1)确定任务,(2)方案设计,二、相关理论知识,(一)单片机应用开发环境,3单片机应用系统的开发流程,单片机应用系统的设计主要由硬件和软件两部分组成。硬件除单片机本身的芯片外,还包括单片机扩展的存储器、输入/输出通道、人机交互通道以及单片机基本系统必须的常规芯片等。软件则是各种工作程序的集合,概括起来包括系统软件和应用软件两个部分。只有将硬件和软件有机地紧密配合起来才能设计出高性能的单片机应用系统。归纳起来,单片机应用系统的设计过程大致有以下几个方面。,在系统设计前,首先要进行广泛的市场调查,了解该系统的市场应用概况,分析系统当前存在的问题,研究系统的市场前景,确定系统开发设计的目的和目标。简单地说,就是通过调研克服缺点,开发新功能。 在确定了大方向的基础上,就应该对系统的具体实现进行规划,包括应该采集信号的种类、数量和范围;输出信号的匹配和转换;控制算法的选择;技术指标的确定等。,(1)确定任务,(2)方案设计,二、相关理论知识,(一)单片机应用开发环境,3单片机应用系统的开发流程,单片机应用系统的设计主要由硬件和软件两部分组成。硬件除单片机本身的芯片外,还包括单片机扩展的存储器、输入/输出通道、人机交互通道以及单片机基本系统必须的常规芯片等。软件则是各种工作程序的集合,概括起来包括系统软件和应用软件两个部分。只有将硬件和软件有机地紧密配合起来才能设计出高性能的单片机应用系统。归纳起来,单片机应用系统的设计过程大致有以下几个方面。,1)单片机机型和元器件的选择。性能、特点要适合所要完成的任务,避免过多的功能闲置。 性能价格比要高,以提高整个系统的性能价格比。 结构原理要熟悉,以缩短开发周期。 资源要稳定,有利于批量的增加和系统的维护。2)硬件与软件功能划分。系统的硬件和软件要做统一的规划。因为一种功能往往是既可以由硬件实现,又可以由软件实现。要根据系统的实时性和系统的 性能价格比进行综合确定。,(1)确定任务,(2)方案设计,二、相关理论知识,(一)单片机应用开发环境,4硬件设计与调试,(1)单片机电路设计,(2)扩展电路设计,(3)输入/输出通道设计,(4)控制面板设计,(5)硬件调试,主要完成时钟电路、复位电路和电源电路的设计。,(1)单片机电路设计,(2)扩展电路设计,(3)输入/输出通道设计,(4)控制面板设计,(5)硬件调试,二、相关理论知识,(一)单片机应用开发环境,4硬件设计与调试,主要完成程序存储器、数据存储器、I/O 接口电路的 设计。注意:在单片机选型时,尽量考虑单片机内部有足够的程序存储器和数据 存储器,以免增加系统的复杂程度和硬件成本。,(1)单片机电路设计,(2)扩展电路设计,(3)输入/输出通道设计,(4)控制面板设计,(5)硬件调试,二、相关理论知识,(一)单片机应用开发环境,4硬件设计与调试,主要完成传感器电路、放大电路、多路开关、A/D 转换电路、D/A转换电路、开关量接口电路、驱动电路和执行机构的设计。,(1)单片机电路设计,(2)扩展电路设计,(3)输入/输出通道设计,(4)控制面板设计,(5)硬件调试,二、相关理论知识,(一)单片机应用开发环境,4硬件设计与调试,主要完成按键、开关、显示器和报警等电路的设计。,(1)单片机电路设计,(2)扩展电路设计,(3)输入/输出通道设计,(4)控制面板设计,(5)硬件调试,二、相关理论知识,(一)单片机应用开发环境,4硬件设计与调试,硬件调试分为静态调试和动态调试。1)静态调试。包括目测、采用万用表测试、加电检查。2)动态调试。动态调试是在目标系统工作的状态下进行的。,二、相关理论知识,(一)单片机应用开发环境,5软件设计与调试,(1)程序的总体设计,(2)程序的编制,(3)软件调试,1)模块化程序设计。,2)自顶向下逐步求精程序设计。,1)先独立后联机。,2)先分块后组合。,3)先“单步”后“连续” 。,二、相关理论知识,(一)单片机应用开发环境,6系统联调,系统联调是指目标系统的软件在其硬件上实际运行,将软件和硬件联合起来进行调试,从中发现硬件故障或软、硬件设计错误。 系统联调主要解决以下问题:1)软、硬件是否按设计的要求配合工作。 2)系统运行时是否有潜在的、设计时难以预料的错误。 3)系统的动态性能指标(包括精度、速度等参数)是否满足设计要求。,二、相关理论知识,(二)伟福 H51/L仿真器,1仿真系统的作用,2仿真器的连接,3仿真软件,单片机应用系统由硬件和软件组成。硬件连接完成后,将程序输入到单片机程序存储器中,系统加电并完成复位后,CPU开始执行程序。此后CPU只能在程序的控制下运行,使用者不能干预CPU的工作。如果程序有错误,系统不能完成预定的工作,只能断电后重新修改程序,但是对于比较复杂的程序很难观察到错误所在。单片机应用系统本身无开发能力,所以需要借助于开发工具进行软件编辑、汇编和调试。为了方便检查程序,一般要使用一种称为“仿真器”的专用设备,使用仿真器可以控制程序运行过程。目前国内用于AT89C51单片机开发系统很多,伟福H51/L仿真器属于专用的开发系统,如图2-1所示。它主要有以下功能:,二、相关理论知识,(二)伟福 H51/L仿真器,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,(1)单步执行程序使程序在控制下每次执行一条指令。 (2)设置断点在程序中设置断点(指令地址),当程序执行到此位置时暂时停止执行。 (3)全速执行程序指不受仿真器控制,按照系统的速度执行程序。 使用第1、2种功能时可以使程序暂停,这时可检查系统各存储器的数据以及外部接口的状态,方便观察程序运行情况。该功能为调试程序和检查程序运行情况提供了有效的手段。,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,(1)计算机与仿真器的连接,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,(2)仿真器与用户板的连接,图2-3 仿真器与仿真头的连接,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,(2)仿真器与用户板的连接,图2-4 POD-8X5XP仿真头,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,图2-5 计算机、仿真器、用户板的连接,计算机、仿真器、用户板三者之间的连接关系如图2-5所示。,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,单片机的程序设计可以使用机器语言、单片机汇编语言和高级语言三种编程语言。机器语言是CPU唯一能够识别的语言,其他语言必须通过编译后形成机器码后CPU才能够识别。 将源程序转换为最终的程序代码需要使用汇编程序和连接程序。市面上的仿真器都配有集成开发环境,用户通过该软件可以很方便地对源程序进行编译和连接,同时还能控制仿真器的工作和系统的运行。本教材选用WAVE6000集成汇编仿真电缆及仿真头23软件,具体的安装过程如下:,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(二)伟福 H51/L仿真器,1仿真系统的作用,2仿真器的连接,3仿真软件,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,编程器一般具有以下功能: 1)能调入多种类型的目标代码(二进制、十六进制等格式)。 2)能将目标代码写入单片机或EPROM、E2PROM等。 3)能将写入单片机或EPROM、E2PROM的目标代码与原目标代码进行比较。 4)能从单片机或EPROM、E2PROM中读出目标代码。 5)能直接修改目标代码并以文件形式存入计算机。 6)能对单片机的加密位进行编程。,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(1)软件安装,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(2)硬件安装,用随机电缆将编程器与计算机并行口连接好,然后插上电 源,打开电源开关,红色发光二极管亮。注意:确认此时没有芯片放在编程器插座上。,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(3)运行程序,运行主程序。如果一切安装正常,计算机屏幕上不会出现错误提示信息。这样,就可以开始进行选择器件、编程等操作了。,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(4)通讯错误信息,如果计算机与编程器通讯失败,弹出通讯错误信息提 示框,如图 2-21 所示。请重新检查安装,并检查是否有芯片放在插座上。有时 编程器出现故障时,这种现象也会发生。,图2-21 通讯错误信息提示框,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(1)选择器件,启动编辑器操作软件之后,在主屏幕上单击Select图标,弹出 Select(器件选择)窗口。首先应选择器件类型(E/EPROM、BPROM、SRAM、 PLD或MCU),然后选择厂家和器件名,单击OK或双击器件名均可。也可通过在Search(查找)编辑框中,键入器件名来选择。,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(2)装入文件,1)从文件读取。单击主屏幕中File(文件)菜单和Load下拉菜单,可装入文件到缓冲区。在Search(搜寻)对话框中键入相应的文件夹和文件名,在随后出现的数据类型选择对话框中选取相应的文件格式,这样所选数据文件将自动装入。 2)从母片中读取数据。选择相应器件名并放置好母片,在主窗口中单击Run图标即弹出功能对话框。单击Read功能项,它将芯片中的数据复制到缓冲区。此时可进入缓冲区编辑窗口,检验数据是否正确。这些数据可存盘,以备后需。,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(三)西尔特 SUPERPRO/L+编程器,(3)编程,放置好芯片后,单击Program(编程)图标,即开始编程,然后进行校验。除非器件是新的,否则编程前需进行Blank-check(空检查)。,1编程器的作用,2SUPERPRO/L+型编程器系统安装,3编程操作,二、相关理论知识,(四)AT89C51单片机的结构与引脚,1AT89C51单片机的基本组成,2AT89C51芯片引脚,AT89C51单片机的基本组成如图2-22所示。,地址总线AB,数据总线DB,控制总线CB,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(1)中央处理器(CPU) 中央处理器是单片机的核心,主要用来完成运算和控制功能。AT89C51单片机的CPU能处理8位二进制数或代码。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(2)内部数据存储器(内部RAM) AT89C51芯片中共有256个RAM单元,但其中后128单元被特殊功能寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(3)内部程序存储器(内部 ROM) AT89C51芯片中共有4KB的Flash形式的ROM,用于存放程序、原始数据或表格。因此称为程序存储器,简称内部ROM。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(4)定时器/计数器 AT89C51芯片中共有2个16位的定时器/计数器,以实现定时或计数功能,并以其定时或计数结果对单片机进行控制。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(5)并行I/O口 AT89C51单片机共有4个并行的I/O口(P0、P1、P2、P3),以实现数据的并行输入或输出。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(6)串行口 AT89C51单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(7)中断控制系统 AT89C51单片机的中断功能较强,以满足控制应用的需要。AT89C51单片机共5个中断源,即外部中断2个,定时/计数中断2个,串行中断1个。全部中断分为高级和低级共两个优先级别。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(8)时钟电路 AT89C51芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为AT89C51单片机产生时钟脉冲序列。系统允许的最高晶振频率为12MHz。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,AT89C51芯片是标准的40引脚双列直插式集成电路芯片,引脚排列如图2-23所示。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(1)引脚介绍,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(2)引脚的第二功能,由于工艺及标准化等原因,芯片的引脚数目是有限的。例如,AT89C51 单片机芯片的引脚数限定为40条,但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾。如何解决这个矛盾?“兼职”是唯一可行的办法,即给一些信号引脚赋以双重功能。如果把前述的信号定义为引脚的第一功能的话,则根据需要再定义的信号就是它的第二功能。下面主要介绍P3口线的第二功能,见表2-1。,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(四)AT89C51单片机的结构与引脚,(2)引脚的第二功能,1AT89C51单片机的基本组成,2AT89C51芯片引脚,二、相关理论知识,(五)AT89C51的内部存储器,1内部数据存储器低128单元,2内部数据存储器高128单元,3内部程序存储器,二、相关理论知识,(五)AT89C51的内部存储器,1内部数据存储器低128单元,AT89C51单片机芯片的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址为00H7FH)和高128单元(单元地址为80HFFH)。如图2-24所示。,二、相关理论知识,(五)AT89C51的内部存储器,1内部数据存储器低128单元,低128单元是单片机的真正RAM存储器,按其用途划分为三个区域:,(1)寄存器区,(2)位寻址区,(3)用户RAM区,共有四组寄存器,每组8个寄存器,各组都以R0R7作寄存单元编号。寄存器常用于存放操作数及中间结果等,由于它们的功能及使用不作预先规定,因此称为通用寄存器,有时也叫工作寄存器。四组通用寄存器占据内部RAM的00H1FH单元地址。在任意时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称为当前寄存器组。到底是哪组,由程序状态字寄存器PSW中RS1和RS0位的状态组合来决定。,二、相关理论知识,(五)AT89C51的内部存储器,1内部数据存储器低128单元,低128单元是单片机的真正RAM存储器,按其用途划分为三个区域:,(1)寄存器区,(2)位寻址区,(3)用户RAM区,二、相关理论知识,(五)AT89C51的内部存储器,1内部数据存储器低128单元,低128单元是单片机的真正RAM存储器,按其用途划分为三个区域:,在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这就是供用户使用的一般RAM区,其单元地址为30H7FH。对用户RAM区的使用没有任何规定或限制。但应当提及,在一般应用中常把堆栈开辟在此区中。,(1)寄存器区,(2)位寻址区,(3)用户RAM区,二、相关理论知识,(五)AT89C51的内部存储器,2内部数据存储器高128单元,(1)特殊功能寄存器简介,AT89C51单片机共有22个特殊功能寄存器,现将其中部分寄存器简单介绍如下:,1)程序计数器(Program Counter,PC),2)累加器(Accumulator,ACC),3)B寄存器。,4)程序状态字(Program Status Word,PSW),5)数据指针(DPTR),二、相关理论知识,(五)AT89C51的内部存储器,2内部数据存储器高128单元,(2)特殊功能寄存器的字节寻址,AT89C51的22个特殊功能寄存器,有21个是可字节寻址的。这些寄存器的名称、符号及单元地址见表2-3。,二、相关理论知识,(五)AT89C51的内部存储器,2内部数据存储器高128单元,(3)特殊功能寄存器的位寻址,在21个可寻址的特殊功能寄存器中,有11个寄存器是可以位寻址的。各寄存器的字节地址及位地址见表2-4。,二、相关理论知识,(五)AT89C51的内部存储器,3内部程序存储器,AT89C51芯片内有4KB的ROM存储单元,地址为0000H0FFFH,这就是所说的内部程序存储器(内部ROM)。在程序存储器中有些特殊单元,使用时应予注意。 其中一组特殊单元是0000H0002H。系统复位后,(PC)=0000H,单片机从 0000H单元开始取指令执行程序。如果程序不从0000H单元开始,应在这三个单元中存放一条无条件转移指令,以便直接转去执行指定的程序。 还有一组特殊的单元是0003H002AH。共40个单元,这40个单元被均匀地分为五段,作为五个中断源的中断地址区。其中: 1)0003H000AH:外部中断0中断地址区。 2)000BH0012H:定时器/计数器0中断地址区。 3)0013H001AH:外部中断1中断地址区。 4)001BH0022H:定时器/计数器1中断地址区。 5)0023H002AH:串行中断地址区。 中断响应后,按中断种类,自动转到各中断区的首地址去执行程序。因此在中断地址区中理应存放中断服务程序。但通常情况下,8个单元难以存下一个完整的中断服务程序,因此通常也是从中断地址区开始存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务程序的实际入口地址去。,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,1P0口,2P1口,3P2口,4P3口,P0口的口线逻辑电路如图2-25所示。由图可见,电路中包含有一个数据输出锁存器和两个三态数据输入缓冲器。此外,还有数据输出的驱动和控制电路。当对P0口进行写操作时,由锁存器和驱动电路构成数据输出通路。由于通路中已有输出锁存器,因此数据输出时可以与外设直接连接,而不需要再加锁存电路。,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,P1口的口线逻辑电路如图2-26所示。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,因为P1口通常是作为通用I/O口使用的,所以在电路结构上与P0口有一些不同之处。首先它不再需要多路转接电路MUX;其次是电路的内部有上拉电阻,与场效应管共同组成输出驱动电路。为此P1口作为输出口使用时,已能向外提供推拉电流负载,无需再外接上拉电阻。当P1口作为输入口使用时,同样也需先向其锁存器写入“1”,使输出驱动电路的FET截止。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,P2口的口线逻辑电路如图2-27所示。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,P2口电路中比P1口多了一个多路转接电路MUX,这又正好与P0口一样。P2口可以作为通用I/O口使用。这时多路转接开关倒向锁存器Q端。但通常应用情况下,P2口是作为高位地址线使用,此时多路转接开关应倒向相反的方向。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,P3口的口线逻辑电路如图2-28所示。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(六)AT89C51单片机并行 I/O口输入/输出,P3口的特点在于为适应引脚信号第二功能的需要,增加了第二功能控制逻辑。由于第二功能信号有输入和输出两类,因此分两种情况说明。 对于第二功能为输出的信号引脚,当作为I/O使用时,第二功能信号引线应保持高电平,与非门开通,以维持从锁存器到输出端数据输出通路的畅通。当输出第二功能信号时,该位的锁存器应置“1”,使与非门对第二功能信号的输出是畅通的。从而实现第二功能信号的输出。 对于第二功能为输入的信号引脚,在口线的输入通路上增加了一个缓冲器,输入的第二功能信号就从缓冲器的输出端取得。而作为I/O使用的数据输入,仍取自三态缓冲器的输出端。,1P0口,2P1口,3P2口,4P3口,二、相关理论知识,(七)AT89C51单片机时钟与时序,1时钟电路,2时序定时单位,3AT89C51指令时序,(1)时钟信号的产生,在AT89C51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。如图2-29所示。,二、相关理论知识,(七)AT89C51单片机时钟与时序,(1)时钟信号的产生,图2-29 时钟振荡电路,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,(2)引入外部脉冲信号,在由多片单片机组成的系统中,为了各单片机之间时钟信号同步,应当引入唯一的公用外部脉冲信号作为各单片机的振荡脉冲。这时外部的脉冲信号是经XTAL2引脚注入,其连接如图2-30所示。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,(2)引入外部脉冲信号,图2-30 外部脉冲源接法,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,(1)拍节与状态,把振荡脉冲的周期定义为拍节(用P表示)。振荡脉冲经过二分频后,就是单片机的时钟信号,把时钟信号定义为状态(用S表示)。这样,一个状态就包含两个拍节,其前半周期对应的拍节叫拍节1(P1),后半周期对应的拍节叫拍节2(P2)。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,(2)机器周期,AT89C51采用定时控制方式,因此它有固定的机器周期。规定一个机器周期的宽度为6个状态,并依次表示为S1S6。由于一个状态又包括两个拍节,因此一个机器周期总共有12个拍节,分别记作S1P1、S1P2、S2P1、S6P2。由于一个机器周期共有12个振荡周期,因此机器周期就是振荡脉冲的十二分频。 当振荡脉冲频率为12MHz时,一个机器周期为1s;当振荡脉冲频率为6MHz 时,一个机器周期为2s。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,(3)指令周期,指令周期是最大的时序定时单位,执行一条指令所需要的 时间称为指令周期。AT89C51单片机的指令周期根据指令的不同,可包含一、二、 四个机器周期。四周期指令只有乘法和除法指令两条,其余都为单机器周期和双 机器周期指令。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,单片机执行任何一条指令时都可以分为取指令阶段和执行指令阶段。AT89C51的取指/执行时序如图2-31所示。 由图2-31可见,ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。第一次出现在S1P2和S2P1期间,第二次出现在S4P2和S5P143期间。ALE信号每出现一次高电平,CPU就进行一次取指操作,但由于不同指令的字节数和机器周期数不同,因此取指令操作也随指令不同而有小的差异。 按照指令字节数和机器周期数,AT89C51单片机的111条指令可分为6类,分别是:单字节单周期指令、单字节双周期指令、单字节四周期指令、双字节单周期指令、双字节双周期指令、三字节双周期指令,可以参见附录B。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(七)AT89C51单片机时钟与时序,图2-31a、b分别给出了单字节单周期和双字节双周期指令的时序。单周期指令的执行始于S1P2,这时操作码被锁存到指令寄存器内。若是双字节,则在同一机器周期的S4读第二字节。若是单字节指令,则在S4仍有读操作,单被读入的字节无效,且程序计数器PC并不增量。图2-31c给出了单字节双周期指令的时序,两个机器周期内进行了四次读操作码操作。因为是单字节指令,所以,后三次操作都是无效的。,1时钟电路,2时序定时单位,3AT89C51指令时序,二、相关理论知识,(八)AT89C51单片机复位,1复位工作状态,2复位电路,AT89C51单片机的复位(RST)引脚上只要出现两个以上机器周期的高电平时,单片机就实现复位。复位的功能是把程序计数器PC值初始化为0000H,使单片机从0000H单元开始执行程序。除此之外,复位操作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论