已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
教你轻松学会单片机电路图随着微控技术的日益完善和发展,单片机的应用在不断走向深入。它的应用比定导致传统的控制技术从根本上发生变革。也就是说单片机应用的出现是对传统控制技术的革命。它在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领路得到了广泛应用,极大的提高了这些领域的技术水平和自动化控制。因此单片机的开发应用已成为高技术工程领域的一项重大课题。因此了解单片机知识,掌握单片机的应用技术具有重大的意义。当前,在世界范围内,一个以微电子技术,计算机的通讯技术为先导的,一信息技术及信息产业的信息革命时期。而计算机技术怎样与实际应用更有效的结合并有效地发挥其作用是科学界最热门的话题,也是当今计算机应用中空前活跃的领域。本文主要从计算机的应用上来实现十字路口交通灯智能化的管理,用以控制过往车辆的正常运作。2.硬件设计2.1单片机及其外围2.1.1单片机的选择 单片微机(Single-Chip Microcomputer)简称为单片机。它在一块芯片上集中成了中央处理单元CPU、随机存储器RAM、只读存储器ROM、定时/计数和多功能输入/输出I/O口,如并行口I/O、串行口I/O和转换A/D等。就其组成而言,一块单片机就是一台计算机。其典型结构如图所示。由于它具有体积小、功能强和价格便宜等优点,因而被广泛地应用于产品智能化和工业控制自动化上。MCS-51系列单片机在我国得到了广泛的应用,是单片机的主流系列,软硬件应用设计资料丰富齐全。为了提高指令的执行速度和效率,采用了面向控制的结构和指令系统的独立CPU,即选择MSC-51系列中的8031单片机。8031内部包括一个8位CPU、128个字节的RAM,21个特殊功能寄存器(SFR)、4个8位I/O口,一个全双工串行口,2个16位定时器/记数器,但片内无程序存储器,须外扩EPROM芯片。MCS-51系列的引脚均为40只引脚双列直插封装(DIP)40只引脚按其功能来分,可分为3类: (1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。 (2)控制引脚: /PSEN、/EA、ALE、RESET (即RST)。 (3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的外部引脚。MCS-51存储器的结构采用了哈佛(Har-vard)结构。存储器空间可划分为如下5类:1. 程序存储器(8031无内部程序存储器。)2. 内部数据存储器3. 特殊功能寄存器(SFR-Special Function Register)4. 位地址空间 ,211个可寻址位。5. 外部数据寄存器,片外可扩展64K字节RAM。2.1.2单片机的特点及其应用范围单片机特点:a) 单片机体积小巧、使用灵活、成本低,易于真正产品化。组装各种智能式控制设备和仪器,能做到机电仪一体化。b) 面向控制。能有针对性地解决各种从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。c) 抗干扰能力强,适应温度范围宽,在各种恶劣的环境下都能可靠的工作。这是其它微机集中无法比拟的。d) 可以方便的实现多机、分布式的集散控制,使整个控制系统的效率大大地提高。e) 单片机应用产品的研制周期短,所开发出来的样机就是以后批量生产的产品,可以避免不必要的二次开发过程。单片机应用:a) 工业方面:电机控制,工业机器人,过程控制,智能传感器,机电仪一体化等。b) 仪器仪表方面:智能仪器,医疗仪器,色谱仪,示波器等。c) 家用电器:高级电子玩具,微波灶,洗衣机,录像机等。d) 电讯方面:调制解调器,智能通讯设备等。e) 导航与控制方面:导弹控制,鱼雷制导控制,智能武器装置,航天导航系统等。f) 数据处理方面:图形终端,彩色与黑白复印机,温式硬盘驱动器,磁带机,打印机等。g) 汽车方面:点火控制,变速器控制,防滑刹车,排气控制等。2.1.3存储器的扩展MCS-51单片机片内集成了各种存储器和I/O功能部件,但有时候根据应用系统的功能需求,片内的资源还不能满足需要。8031单片机片内缺少程序存储器(ROM)。存储器的扩展:MCS-51单片机外部存储器结构,采用的是哈佛结构。即程序存储妻的空间和数据存储器的空间是截然分开,分别寻址的结构。系统扩展的首要问题是构造三大系统总线,然后再往系统总线上“挂”存储器芯片或I/O接口芯片,“挂”存储器芯片就是存储器扩展,“挂”I/O接口芯片就是I/O扩展。受引脚数目的限制,数据线和低8位地址线复用。由P0口线兼用。为了将它们分离出来,需要外加地址锁存器,从而构成与一般CPU相类似的片外三总线。如图所示:8031P2APEP0PSENWERD地址锁存器A8A15A0A7D0D7地址总 线数据总 线控制总 线 图2-1构成图地址锁存器一般采用74LS373。锁存器74LS373带有三态门的8D锁存器,引脚说明:D7D0: 8位数据输入线。Q7Q0: 8位数据输出线。G:数据输入锁存选通信号,。OE: 数据输出允许信号。采用74LS373的地址总线的扩展电路如下。1以P0口作为低8位地址/数据总线。2. 以P2口的口线作高位地址线。 3. 控制信号线。 使用ALE信号作为低8位地址的锁存控制信号。 以PSEN*信号作为扩展程序存储器的读选通信号。 以EA*信号作为内外程序存储器的选择控制信号。 由RD*和WR*信号作为扩展数据存储器和I/O口的读选通、写选通信号。尽管MCS-51有4个并行I/O口,共32条口线,但由于系统扩展需要,真正作为数据I/O使用的,就剩下P1口和P3口的部分口线。优点:串行接口器件体积小,与单片机接口时需要的I/O口线很少(仅需3-4根),提高可靠性。常用的存储器地址分配的方法有两种:线性选择法(简称线选法)和地址译码法(简称译码法)。1、线选法直接利用系统的高位地址线作为存储器芯片(或I/O接口芯片)的片选信号。优点:电路简单,不需要地址译码器硬件,体积小,成本低。缺点:可寻址的器件数目受到限制,地址空间不连续,地址不唯一。2、译码法最常用的译码器芯片:74LS138(3-8译码器)74LS139(双2-4译码器)74LS154(4-16译码器)。完全可根据设计者的要求,产生片选信号。全译码:全部高位地址线都参加译码;部分译码:仅部分高位地址线参加译码。由于线选法具有简单明了,不需另外增加硬件电路的特点。适于外扩芯片不多,规模不大的单片机系统。所以选择线选法扩展存储器。2.2.4内存的扩展程序存储器EPROM的扩展程序存储器一般采用只读存储器,。根据编制程序的方式不同,ROM分为掩膜ROM,可编程ROM(PROM),EPROM,E2ROM,Flash ROM等几种。目前EPROM的典型芯片是27系列产品,例如2716(16KB8)、2732(32 KB8),2764(8 KB8)、27128(16 KB8)、27256(32 KB8)、27512(64 KB8)。 这里选择2764(8 KB8)芯片。静态数据存储器的扩展MSC-51单片机的内部有128个字节的RAM。在实际应用中,仅仅靠片内的RAM往往不够用,必须扩展外部数据存储器。常用的数据存储器有静态数据存储器(SRAM)和动态数据存储器(DRAM),在单片机应用系统中,外扩的数据存储器都采用静态数据存储器。常见的静态RAM(SRAM)芯片的典型型号有:6116(2 KB8)、6264(8 KB8)、62128(16 KB8)、62256(32 KB8)。它们都用单一+5V电源供电,双列直插封装。这里选择6264(8 KB8),为28引脚封装。EPROM和RAM综合扩展的硬件接口电路设计扩展接口电路如图: 图2-2扩展接口电路图1. 控制信号及片选信号地址线P2.5直接接到2764和6264)的片选CE端。当P2.6=0,P2.5=1时2764和6264的CE端全为高电平。当P2.6=1,P2.5=0时2764和6264的CE端全为低电平。具体哪个芯片工作还要通过PSEN、WR、RD控制线控制。当片外程序存储区读选通信号PSEN为低电平,肯定到EPROM中读程序;当读、写通信号RD或WR为低电平则到RAM中读数据或者向RAM写入数据。PSEN、WR、RD三个信号是在是在执行指令的时候产生的,但任何一个时刻,只能执行一条指令,所以只能一个信号有效,其他信号不可能同时有效。2. 各芯片地址空间分配硬件电路一旦确定,各个芯片的地址范围实际就已经确定,编写程序的时候只要给出选择芯片的地址就能准确的选中该芯片。程序和数据存储器地址均用16位,P0口确定低8位,P2口确定高8位地址。2.2.5MSC-51的I/O接口扩展常用的I/O接口芯片MCS-51单片机是Intel公司的产品,而Intel公司的配套可编程I/O接口芯片的种类齐全,这就为MCS-51单片机扩展I/O接口提供了很大的方便。Intel公司常用的外围I/O接口芯片有:(1)8255A:可编程的通用并行接口电路(3个8位I/O口)。(2)8155H:可编程的IO/RAM扩展接口电路(2个8位I/O口,1个6位I/O口, 256个RAM字节单元,1个14位的减法定时器/计数器)。它们都可以和MCS-51单片机直接连接,且接口逻辑十分简单。此外,74LS系列的TTL电路也可以作为MCS-51的扩展I/O口,如74LS244、74LS273等。除了上述各种I/O接口电路与MCS-51单片机的接口设计,还可以利用MCS-51的串行口来扩展并行I/O口。本次设计选择可编程的通用并行接口芯片8255A。8255A芯片介绍:8255A是Intel公司生产的可编程并行I/O接口芯片,它具有3个8位的并行I/O口,三种工作方式,可通过编程改变其功能,因而使用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。引脚说明:8255A共有40只引脚,采用双列直插式封装,各引脚功能如下:D7D0:三态双向数据线,与单片机数据总线连接,用来传送数据信息。CS :片选信号线,低电平有效,表示本芯片被选中。RD:读出信号线,低电平有效,控制8255A中数据的读出。WR :写入信号线,低电平有效,控制向8255A数据的写入。Vcc:+5V电源。PA7PA0:A口输入/输出线。PB7PB0:B口输入/输出线。PC7PC0:C口输入/输出线。 A1A0:地址线,用来选择8255A内部的4个端口。8255A包括三个并行数据输入/输出端口,两个工作方式的控制电路,一个读/写控制逻辑电路和8位数据总线缓冲器。各部件的功能如下:1.端口A、B、C8255A有三个8位并行口,PA、PB和PC。都可以选择作为输入输出工作模式,但在功能和结构上有些差异。PA口:一个8位数据输出锁存器和缓冲器;一个8位数据输入锁存器。PB口:一个8位数据输出锁存器和缓冲器;一个8位数据输入缓冲器。PC口:一个8位的输出锁存器;一个8位数据输入缓冲器。通常PA口、PB口作为输入输出口,PC口可作为输入输出口,也可在软件的控制下,分为两个4位的端口,作为端口A、B选通方式操作时的状态控制信号。2. A组和B组控制电路这是两组根据CPU写入的“命令字”控制8255A工作方式的控制电路。A组控制PA口和PC口的上半部(PC7PC4);B组控制PB口和PC口的下半部(PC3PC0),并可根据“命令字”对端口的每一位实现按位“置位”或“复位”。3. 数据总线缓冲器数据总线缓冲器是一个三态双向8位缓冲器,作为8255A与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。4读/写控制逻辑电路读/写控制逻辑电路接收CPU发来的控制信号、RESET、地址信号A1A0等,然后根据控制信号的要求,将端口数据读出,送往CPU或者将CPU送来的数据写入端口。各端口的工作状态与控制信号的关系如表所示。表2-1各端口的工作状态与控制信号的关系A1A2RDWRCS工作状态00010A口数据数据总线(读端口A)B口数据数据总线(读端口B)C口数据数据总线(读端口C)010101001000100总线数据A口(写端口A)总线数据B口(写端口B)总线数据C口(写端口C)总线数据控制字寄存器(写控制字)011001010011100XXXX1数据总线为三态11010非法状态XX110数据总线为三态8031单片机和8255A的接口 硬件接口电路如图2-3所示是8031单片机扩展一片8255A的电路图。图中,74LS373是地址锁存器,P0.1、P0.0经74LS373与8255A的地址线A1、A0连接; P0.7经74LS373与片选端相连,其他地址线悬空;8255A的控制线RD*、WR*直接接于8031的RD*和WR*端;数据总线P0.0P0.7与 8255A的数据线 D0D7连接。8255A端口地址的确定图2-3中8255A只有3根线与地址线相接。片选端CS*、地址选择端A1、A0。分别接于P0.7、P0.1、P0.0,其它地址线全悬空。显然只要保证P0.7为低电平时,选中该8255A,若P0.1、P0.0再为“00”则选中8255A的A口,同理P0.1、P0.0为“01”、“10”、“11”分别选中B口、C口及控制口。图2-3 8031扩展图2.2电路部分2.2.1元器件的选用在该电路中,为了实现交通灯的功能,采用了OPTOTRIAC(光电隔离开关),和TRIAC(晶闸管)等,下面分别进行介绍 光电隔离器的主要性能与工作原理:主要性能:1 保护串行口,有效地防止因带电插拔几其他原因引起的串行口损坏。2 RS-232C实现远距离通讯,通讯距离可延长至120公里。9600Bmp时大于1公里。3 两个RS-232C串行口之间实现电隔离,隔离电压脉冲1500V,持续电压700 V。4 不用外接电源,内部采用信号电平作DC-DC变换后供电,使用方便。5 传输线无需屏蔽。SK系列串口光隔离器的传输线中是IPP=20Ma的电流环传送数据,有很强的抗电场干扰能力。工作原理利用RS-232C输出信号与光耦器件组成电流环,接收电路将光耦合进来的信号还原成满足RS-232C接口要求的信号电平。接收电路由DC-DC供给接近12V的电源,RS-232C的供电取自串口的RTS或DTR信号。晶闸管:晶闸管的工作条件:1. 晶闸管承受反向阳极电压时,不管门极承受和种电压,晶闸管都处于关短状态。2. 晶闸管承受正向阳极电压时,仅在门极承受正向电压的情况下晶闸管才导通。3. 晶闸管在导通情况下,只要有一定的正向阳极电压,不论门极电压如何,晶闸管保持导通,即晶闸管导通后,门极失去作用。4. 晶闸管在导通情况下,当主回路电压(或电流)减小到接近于零时,晶闸管关断。晶闸管的内部分析工作过程:晶闸管是四层三端器件,它有J1、J2、J3三个PN结,可以把它中间的NP分成两部分,构成一个PNP型三极管和一个NPN型三极管的复合管。当晶闸管承受正向阳极电压时,为使晶闸管导铜,必须使承受反向电压的PN结J2失去阻挡作用。每个晶体管的集电极电流同时就是另一个晶体管的基极电流。因此,两个互相复合的晶体管电路,当有足够的门机电流Ig流入时,就会形成强烈的正反馈,造成两晶体管饱和导通,晶体管饱和导通。设PNP管和NPN管的集电极电流相应为Ic1和Ic2;发射极电流相应为Ia和Ik;电流放大系数相应为a1=Ic1/Ia和a2=Ic2/Ik,设流过J2结的反相漏电电流为Ic0,晶闸管的阳极电流等于两管的集电极电流和漏电流的总和:Ia=Ic1+Ic2+Ic0 或Ia=a1Ia+a2Ik+Ic0若门极电流为Ig,则晶闸管阴极电流为Ik=Ia+Ig从而可以得出晶闸管阳极电流为:I=(Ic0+Iga2)/(1-(a1+a2)(11)式,硅PNP管和硅NPN管相应的电流放大系数a1和a2随其发射极电流的改变而急剧变化。当晶闸管承受正向阳极电压,而门极未受电压的情况下,式(11)中,Ig=0,(a1+a2)很小,故晶闸管的阳极电流IaIc0 晶闸关处于正向阻断状态。当晶闸管在正向阳极电压下,从门极G流入电流Ig,由于足够大的Ig流经NPN管的发射结,从而提高起点流放大系数a2,产生足够大的极电极电流Ic2流过PNP管的发射结,并提高了PNP管的电流放大系数a1,产生更大的极电极电流Ic1流经NPN管的发射结。这样强烈的正反馈过程迅速进行。当a1和a2随发射极电流增加而(a1+a2)1时,式(11)中的分母1-(a1+a2)0,因此提高了晶闸管的阳极电流Ia.这时,流过晶闸管的电流完全由主回路的电压和回路电阻决定。晶闸管已处于正向导通状态。式(11)中,在晶闸管导通后,1-(a1+a2)0,即使此时门极电流Ig=0,晶闸管仍能保持原来的阳极电流Ia而继续导通。晶闸管在导通后,门极已失去作用。在晶闸管导通后,如果不断的减小电源电压或增大回路电阻,使阳极电流Ia减小到维持电流IH以下时,由于a1和a1迅速下降,当1-(a1+a2)0时,晶闸管恢复阻断状态。2.2.2电路完成功能图2-4 电路部分电路完成功能是:车辆放行方向上(A线)绿灯亮15 s,亮灭各0.75秒,闪烁3次灭,黄灯亮3秒灭,红灯亮;东西组红灯灭,绿灯亮。如此周而复始。各方向上计数器从30开个电路由光电隔离开关所控制,6个晶闸管控制灯泡用来模拟双向十字路口的红、黄、绿灯。软件设计3.1软件概述 本次设计,编写软件使用的是汇编语言。因为汇编语言是面向机器硬件的语言,助记符指令和机器指令一一对应,用汇编语言编写的程序效率高,占用存储空间小,运行速度快,用汇编语言能编写出最优化的程序。能直接管理和控制硬件设备(功能部件),它能处理中断,也能直接访问存储器及I/O接口电路。下面即是十字路口交通灯的原理图。开始程序初始化东西红灯亮南北绿灯亮东西红灯闪烁南北黄灯亮东西绿灯亮南北红灯亮东西黄灯亮南北红灯闪烁返回3-1流程图3.2汇编语言指令说明AJMP 功能:绝对转移。ANL功能:对字节变量做逻辑“与”。ANLC功能:对位变量做逻辑“与”。CJNE功能:比较且不相等则转移。CPL功能:累加器取反。DEC 功能:减量。DJNZ 功能:减量且如果不等于零则转移。INC功能:增量。MOV功能:传送字节变量。MOVX 功能:外部传送。NOP 功能:空操作。ORL 功能:对字节变量进行逻辑或。RETI 功能:从中断返回。3.3定时计数器的原理3.3.1定时计数器的概述80C51系列单片机内部都设有2个16位的可编程定时计数器,可分别称为“定时器0(T0)”和“定时器1(T1)”。16位的定时计数器实质上是一个加计数器,其控制电路受软件控制、切换。通过软件可以设置为种工作方式,每种方式都可以用作定时或计数。当选择定时计数器作为定时器工作时,计数器的加1信号有震荡器的12分频信号产生,即每经过个机器周期,计数器增1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因为个机器周期等于12个振荡周期,所以计数频率fCOUNT=(1/12)fOSC。如果晶振频率为12MHz,则计数周期:T=1/(121000000)Hz(1/2)=1S这是最短的定时周期。若要延长定时时间,则须改变定时期的初值,并要适当选择定时器的长度(如8位、13位或16位等)。TCON用语控制定时器的启动、停止以及标明定时器的溢出和中断情况。表3-1 TCON各功能定义TCON8FH8EH8DH8CH8BH8AH89H88H(88H)TF0TR1TF0TR0IE1IT1IE0IT0TF1:定时器溢出标志。T1溢出时由硬件置1,并申请中断。CPU响应中断后,由硬件清0,TH1也可由软件清0。TR1:定时器1运行控制位,可由软件置1或清0来启动或停止T1。TF0:定时器0溢出标志,功能与TF1相同。TR0:定时器0运行控制位,功能与TR1相同。IE1:外部中断1请求标志。IT1:外部中断1触发方式选择位。IE0:外部中断0请求标志。IT0:外部中断0触发方式选择位。程序中令T0位定时工作方式1。机器周期为2s,通过公式和定时时间t可计算出TH、TL初始值。、T0引脚震荡器图3-2 逻辑结构图T0在工作方式1的逻辑结构如图所示。工作方式1是以16位计数器参加计数。TL0计满后想TH0进位,而TH0溢出后对中断标志位TF0置1,并申请中断。T0是否溢出可用软件查询TF0是否为1来判断在图中,C/T=0时控制开关接通内部振荡器,T0对机器周期加1计数当C/T=0时,多路开关连续震荡器的12分频输出,T0对机器周期记数,这就是定时工作方式。其定时时间为:t=(65536-T0初值)时钟周期12C/T=1时,控制开关接通外部输入信号,当外部输入信号电平发生从1到0跳变时,加1计数器加1,即处于计数工作方式当GATE=0时,INT0被封锁仅由TR0便可控制T0开启和关闭。当GATE=1时,T0的开启和关闭取决于INT0和TR0相与的结果,即只有当INT0=1和TR0=1是,T0才被开启。75MS定时TH0=3CH,TL0=BOH。3.3.28255A片选及各端口地址表3-2 8255A片选及各端口地址状态A道放行B道禁止A道警告B道禁止A道禁止B道放行A道禁止B道警告控制码21H22H0CH14HPA70000PA60000PA51100B道红灯PA40001B道黄灯PA30010B道绿灯PA20011A道红灯PA10100A道黄灯PA01000A道绿灯3.3.3信号控制码由8255A的PA口接6个由晶闸管控制的电灯电路,由驱动电路可知当输出口为高电平是信号灯亮,反之输出低电平是信号灯熄。为了时间上述控制要求,PA口共输出4种控制码,如下表所示:令东西为A道,南北为B道表3-3 各口控制码和状态图PA7PA6PA5PA4PA3PA2PA1PA0控制码状态 空空B道红灯B道黄灯B道绿灯A道红灯A道黄灯A道绿灯0010000121HA道放行B道禁止0010001022HA道警告B道禁止000011000CHB道放行A道禁止0001010014HB道警告A道禁止3.3.4工作方式寄存器工作方式寄存器TMODTMOD为T0、T1的工作方式寄存器,其各位的格式如下:TMOD D7 D6 D5 D4 D3 D2 D1 D0(89H)GATEC/M1M0GATEC/M1M0 定时器T1 定时器T0 其各位功能如下: 位7 GATE-T1的门控位: 当GATA=0时,只要控制位TR1,即可启动定时器开始工作; 当GATE=1时,除需要将TR1置1外,还要使INTI引脚为高电平,才能启动相应的定时器开始工作。 位6 C/T-T1的功能选择位: 当C/T=0时,T1为定时器方式; 当C/T=1时,T1为计数器方式。 位5和位4M1和M0-T1的方式选择位:由这2位的组合可以定义T1的3种工作方式。位3 GATE-T0的门控制:当GATE=0时,只要控制TR0置1,即可启动定时器T0开始工作;当GATE=1时,除需要将TR0置1外,还要使INTO引脚为高电平,才能启动相应的定时器开始工作。位2 C/T-T0的功能选择位:当C/T=0时,T0为定时器方式;当C/T=1时,T0为计数器方式M1M0工作方式功能描述00方式013位计数器01方式116为计数器10方式2自动再装入8位计数器11定时器1:停止记数表3-4定时器T1工作方式选择表3-5 定时器T0工作方式选择M1M0工作方式功能描述10方式013位计数器11方式116位记数器10方式2自动再装入8位计数器11方式3定时器0:分为2个8位计数器TMOD不能进行位寻址,只能用字节传送指令设置定时器工作方式,低半字节定义定时器1。复位时,TMOD所有位均为0,定时器处于停止工作状态。3.3.5定时/计数器初值及定时器T0的工作方式定时/计数器初值的确定方法:由于不同工作方式下,计数器的位数不同,因而最大计数器也不同。下面介绍确定定时/计数器初值的具体方法。现假设最大记数值为M,那么各种方式下的M值如下:方式0:M=8192;方式1:M=65536;方式2:M=256;方式3:定时器T0分为2个8位计数器,所以2个M值均为256。因为定时/计数器是作“加1”记数,并在记满溢出时产生中断,故初值X可这样计算:X=M-记数值 定时器T0的工作方式: 通过对M1,M0位的设置,T0可选择4种工作方式,T1可选择3种工作方式。 定时器T0,T1都可以设置为方式1。在方式1下,定时器T0,T1均为16位的计数器。在方式1下,定时器的结构和操作与方式0基本相同。唯一不同的是:在方式1中,定时器是一全16位二进制参与操作的。 当TL0的低8位溢出时间向TH0进位,而TH0溢出时向中断标志TF0进位(称“硬件置位TF0”),并申请中断。通过查询TF0是否置位或是否产生定时器T0中断,可判断定时器T0记数是否溢出。3.4MCS-51的中断 中断的定义:CPU正在执行主程序时,单片机外部或内部发生的某一事件(如外部设备产生的一个电平的变化,一个脉冲沿的发生或内部计数器的计数溢出等)请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。中断服务处理程序处理完该事件后,再回到原来被中止的地方,继续原来的工作(例如,继续执行被中断的主程序),这称为中断。 CPU处理事件的过程,称为CPU的中断响应过程。能够实现中断处理功能的部件称为中断系统;产生中断的请求源称为中断请求源。中断源向CPU提出的处理请求,称为中断请求(或中断申请)。中断的工作:保护现场、恢复现场、中断返回。中断方式的优点是大大地提高了CPU的工作效率。中断请求源:五个中断请求源 :(1 )/INT0外部中断请求0,由引脚/INT0输入,中断请求标志为IE0。(2) /INT1外部中断请求1,由引脚/INT1输入,中断请求标志为IE1(3)定时器/计数器T0溢出中断请求,中断请求标志为TF0。(4)定时器/计数器T1溢出中断请求,中断请求标志为TF1。(5)串行口中断请求,中断请求标志为TI或RI。标志位分别由特殊功能寄存器TCON和SCON的相应位锁存。中断允许寄存器IECPU对中断源的开放或屏蔽,由片内的中断允许寄存器IE控制。IE的字节地址为A8H,可进行位寻址。IE对中断的开放和关闭实现两级控制总的开关中断控制位EA(IE.7位),当EA=0时,所有的中断请求被屏蔽。当EA=1时,CPU开放中断,但五个中断源的中断请求是否允许,还要由IE中的低5位所对应的5个中断请求允许控制位的状态来决定。IE中各位的功能如下:(1)EA:中断允许总控制位 0:CPU屏蔽所有的中断请求(CPU关中断); 1:CPU开放所有中断(CPU开中断)。(2)ES:串行口中断允许位 0:禁止串行口中断; 1:允许串行口中断。 (3)ET1:定时器/计数器T1的溢出中断允许位 0:禁止T1溢出中断; 1:允许T1溢出中断。(4)EX1:外部中断1中断允许位 0:禁止外部中断1中断; 1:允许外部中断1中断。(5)ET0:定时器/计数器T0的溢出中断允许位 0:禁止T0溢出中断; 1:允许T0溢出中断。(6)EX0:外部中断0中断允许位。 0:禁止外部中断0中断; 1:允许外部中断0中断。MCS-51复位以后,IE被清0,所有的中断请求被禁止。若使某一个中断源被允许中断,除了IE相应的位的被置“1”外,还必须使EA位=1,即CPU开放中断。改变IE的内容,可由位操作指令来实现,即SETB bit;CLR bit。格式如下图。 表3-6 IE操作指令D7D6D5D4D3D2D1D0IEEAESET1EX1ET0EX0A8HAFHACHABHAAHA9HA8H位地址00000000中断优先级寄存器IP两个中断优先级 ,可实现两级中断嵌套。就是CPU正在执行低优先级中断的服务程序时,可被高优先级中断请求所中断,去执行高优先级中断服务程序,待高优先级中断处理完毕后,再返回低优先级中断服务程序。一个正在执行的低优先级中断程序能被高优先级的中断源所中断,但不能被另一个低优先级的中断源所中断。若CPU正在执行高优先级的中断,则不能被任何中断源所中断。可归纳为下面两条基本规则: (1)低优先级可被高优先级中断,反之则不能。(2)任何一种中断(不管是高级还是低级),一旦得到响应,不会再被它的同级中断源所中断。某一中断源被设置为高优先级中断,则不能被任何其它的中断源的中断请求所中断。中断优先级寄存器IP,其字节地址为B8H,可位寻址。IP各个位的含义:(1)PS串行口中断优先级控制位 1:高优先级中断; 0:低优先级中断。(2)PT1定时器T1中断优先级控制位 1:高优先级中断; 0:低优先级中断。(3)PX1外部中断1中断优先级控制位 1:高优先级中断; 0:低优先级中断。(4)PT0定时器T0中断优先级控制位 1:高优先级中断; 0:低优先级中断。(5)PX0外部中断0中断优先级控制位 1:高优先级中断; 0:低优先级中断。 由用户程序置“1”和清“0”,以改变各中断源的中断优先级。MCS-51的中断优先级结构。中断系统有两个不可寻址的“优先级激活触发器”。其中一个指示某高优先级的中断正在执行,所有后来的中断均被阻止。另一个触发器指示某低优先级的中断正在执行,所有同级的中断都被阻止,但不阻断高优先级的中断请求。在同时收到几个同一优先级的中断请求时,哪一个中断请求能优先得到响应,取决于内部的查询顺序。这相当于在同一个优先级内,还同时存在另一个辅助优先级结构,其查询顺序如下: 中断源 中断级别 外部中断0 最高 T0溢出中断 外部中断1 T1溢出中断 串行口中断 最低响应中断请求的条件:一个中断请求被响应,需满足以下必要条件:(1)CPU开中断,即IE寄存器中的中断总允许位EA=1。(2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”。(3)该中断源的中断允许位=1,即该中断没有被屏蔽。(4)无同级或更高级中断正在被服务。 表3-7 操作指令D7D6D5D4D3D2D1D0IEEAESET1EX1ET0EX0B8H位地址AFHACHABHAAHA9HA8H00000000总结 计算机技术的发展对社会进步产生了巨大的影响。今天,计算机及其应用技术的发展速度、深度及其广度,都远远超过了历史上任何一种技术手段和装备,在国防、科学研究、政治经济、教育文化等方面无所不及。计算机应用技术不仅引起社会各领域的巨大变革,反过来又推动计算机技术本声不断向前发展。本次课程设计结合以前学过的相关课程,运用了大量的微机原理以及单片机方面的知识来对此次课程设计进行设计及说明,由于该门知识涉及面太广,又有些艰涩难懂,所以该说明书不免有些不足之处,望读者见谅。在课程设计期间,遇到了很多的困难,幸有指导老师的大力帮助,才使得次课程设计顺利完成,在此深深感谢老师的耐心指导。参考文献1 张毅刚.新编MCS-51单片机应用系统设计M.哈尔滨:哈尔滨工业大学出版社,20062 王义军.单片机原理及应用习题与实验指导书M.北京:中国电力出版社,20063 谭浩强.C程序设计M.北京:清华大学出版社,19994 吴宁.80X86/Pentium微型计算机原理及应用M.北京:电子工业出版社,20055 文艳,谭鸿.Protel 99SE 电子电路设计M.北京:机械工业出版社,20066 张伟,王力.Protel 99SE 基础教程M.北京:人民邮电出版社,20067 刘乐善.微型计算机接口技术及应用M.武汉:华中科技大学出版社,20008 张义和,陈敌北.例说8051M.北京:人民邮电出版社,20069 陈明荧.8051单片机课程设计实训教材M.北京,清华大学出版社,200410王玉琳.步进电机的软件脉冲分配J.中国科技信息,2005(18)11尤婷. 步进电机驱动电路研究J.电气开关,2005(5)12杨莉.基于单片机控制的步进电机转速控制系统J.南昌工程学院学报,2005(2)13王庆祝.步进电机控制系统的设计J.河北科技师范学院学报,2005(3)附录1原程序JTD1.ASM交通灯实验 ORG 4000H AJMP START ;初始化 ORG 400BH ;T0中断 AJMP INTT0 NOPSTART: MOV TMOD,#01H ;令T0为定时器方式1 MOV R1,#01H ;R1=01是 A道绿灯;03是A道黄灯;10是道绿灯;30是B道黄灯 NOP ;A道:PA0绿 PA1黄 PA2红 B道:PA3绿 P黄 PA5红 MOV DPTR,#06003H ;片选8255命令字 MOV A,#80H ;A口出 MOVX DPTR,A ;将A的内容写到指针缓存器DPTR所指的外部数据存储器内 MOV A,#21H ;21H传送给A(A道绿灯;B道红灯) MOV R6,A ;将A的内容传送到R6 MOV DPTR,#06000H ;片选8255数据A口 MOVX DPTR,A ;送A口数据 MOV R2,#00H ;15秒中断标志 01 MOV TH0,#3CH ;75MS定时 MOV TL0,#0B0H MOV IE,#82H ;开始中断 SETB TR0 ;开T0 MOV R4,#0AH ;立即数据0AH传送到R4 MOV R0,#00H ;R0清零 MOV R5,#00H ;R5清零LOOP4: NOP ;主循环空,等待中断 NOP NOP AJMP LOOP4INTT0: MOV TH0,#3CH MOV TL0,#0B0H INC R0 ;累加器R0内容加1 CJNE R0,#0C8H,LOOP ;0C8H与R0内容比较,不相等则转移到程序LOPP(15秒不到转) AJMP INTT1 ;转移到程序INTT1继续执行LOOP: CJNE R2,#01H, ZCHXED;01H与R2内容比较,不相等则转移到主程序 CJNE R1,#01H,BHDL ;01H与R1内容比较,不相等则转移程序BHDL DJNZ R3,BHDBL1 ;R3内容递减,不等于零则转移到程序BHDBL1 MOV R1,#03H ;数据03H传送到R1 MOV R5,#28H ;数据28H传送到R5 MOV A,#22H ;22H传送给A(A道黄 B道红) MOV R6,A ;A的内容传送到R6 MOVX DPTR,A ;将A的内容写到指针缓存器DPTR所指的外部数据存储器内 MOV R0,#00H ;将R0清零 AJMP ZCHXED ;转移到程序ZCHXEDBHDL: CJNE R1,#10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健身器材制作工岗位实操知识技能考核试卷含答案
- 收银员岗中团队合作考核试卷含答案
- 《肾癌的诊断与治疗》课件
- 医学课件-标准化病人问诊模板
- 腊梅主要病虫害的防治方法
- 医学课件-护理学专业介绍
- 127系统精讲-损伤中毒-第十五节 常见四肢骨折病人的护理-20250826-212411
- 医疗行业采购管理及谈判技巧培训
- 初中美术教资面试全真模拟题库及答案
- 2026初中道法教资面试答辩题库及答案
- 2026年上海数据交易所数据要素流通生态合作伙伴指南
- 《信息安全产品配置与应用》全套教学课件
- 2025年高校辅导员招聘面试题库及参考答案
- 2026秋人教版小学美术二年级上册第一单元 身边的自然第1课 树叶的血管教学课件
- 人教版五年级上册语文单元同步测试题(附答案)
- 江西财经大学《Java》2025-2026学年期末试卷
- 2025年老年人冬季防摔倒培训
- 产品质量检验与追溯系统操作手册
- 2026年辽宁生态工程职业学院单招综合素质笔试备考试题附答案详解
- 幼教考试历年真题及答案
- 钢结构制作车间安全生产必知常识
评论
0/150
提交评论