您好,欢迎访问三七文档
单片机倒计时器第10页第二章硬件系统的设计第一节89C51单片机最小系统AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。一.主要特性:·与MCS-51兼容·4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年·全静态工作:0Hz-24Hz·三级程序存储器锁定·128*8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路二.芯片引脚排列及说明:1.芯片的封装形式89C51是40引脚双列直插式单片机倒计时器第10页图2-1-1引脚排列2.芯片的引脚介绍Vcc:供电电压+5V。Vss:接地。输入/输出口线;P0.0~P0.7P0口8位双向口线P1.0~P1.7P1口8位双向口线P2.0~P2.7P2口8位双向口线P3.0~P3.7P3口8位双向口线P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻的输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。P0口常作为扩展系统的数据/低8位地址的复用口。在使用时,需外接上拉电阻。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P1口常作为通用I/O口。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进单片机倒计时器第10页行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口常作为扩展系统的高8位地址。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口常作为第二功能使用。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0RXD(串行数据接收)P3.1TXD(串行数据发送)P3.2/INT0(外部中断0申请)P3.3/INT1(外部中断1申请)P3.4T0(定时器/计数器0输入)P3.5T1(定时器/计数器1输入)P3.6/WR(外部数据存储器RAM写选通)P3.7/RD(外部数据存储器RAM读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。复位信号端RST:当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。当输入的复位信号延续2个机器周期以上高电平时即为有效,用于完成单片机的复位操作。地址锁存控制信号ALE:在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。此外由于ALE是一1/6晶振频率的固定频率输出的正脉冲,因此,可作为外部时钟外部定时脉冲使用。外部程序存储器读选通信号/PSEN:在读外部ROM时/PSEN有效(低电平),以实现外部ROM单元的操作。访问程序存储器控制信号/EA:单片机倒计时器第10页当/EA信号为第电平时,对ROM的读操作是针对外部程序存储器的;而当/EA信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器。外接晶体引线端XTAL1和XTAL2:XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。当使用芯片内部时钟时,XTAL1和XTAL2用于外接石英晶体谐振器和微调电容;当使用外部时钟时,用于接入外部时钟脉冲信号。三.振荡电路:89C51芯片中的高增益反相放大器,其输入端为引脚XTAL1,输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容器。石英晶体为一感性元件,与电容构成振荡回路,为片内放大器提供正反馈和振荡所需的相移条件,从而构成一个稳定的自激振荡器,如图2-1-2所示图2-1-289C51单片机的振荡电路振荡电路产生的振荡信号并不直接为单片机所用,而要进行分频,经分频后才能得到单片机各种相关的时钟信号XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。除使用石英晶体振荡器外,若对时钟频率要求不高,还可以用电感或陶瓷振荡器,但使用陶瓷振荡器时要把电容的容量稍微提高一些。四.单片机的系统复位复位式单片机的硬件初始化操作。经复位操作后,单片机系统才能开始正常单片机倒计时器第10页工作。1.复位方式89C51有复位信号引脚RST,用于从外界引入复位信号。复位操作比较简单,只有两种复位方式,即加电复位和手动复位。(1)加电复位加电复位式指通过专用的复位电路产生复位信号。它是系统的原始复位方式,发生在开机加电时,是系统自动完成的。加电复位的基本的、任何单片机系统都具有的功能。(2)手动复位手动复位也应通过专用的复位电路实现。在单片机系统中,手动复位是必须具有的功能,在调试或运行程序时,若遇到死机,死循环或程序“跑飞”等情况,手动复位时摆脱这种尴尬局面的最常用方法,这时,手动复位所完成的是一次重新启动操作。2.复位电路概述(1)积分电路型积分型复位电路是在积分电路的基础上形成的,用于产生低电平复位信号。图2-1-3是最基本的积分型复位电路及其演化过程。图2-1-3积分型复位电路(2)微分电路型微分型复位电路是在微分电路的基础上形成的,用于产生高电平复位信号。图2-1-4是最基本的微分型复位电路。单片机倒计时器第10页图2-1-4微分型复位电路3.89C51基本复位电路89C51基本复位电路共有上电复位、按键电平复位和按键脉冲复位3种。其中上电自动复位是通过电容充电来实现的,比较简单的上电复位电路如图2-1-5(a)所示。只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源即可完成系统的复位初始化。手动复位是通过按键实现的,有电平方式和脉冲方式两种。其中按键复位是通过使复位端经电阻与Vcc电源接通而实现的,电路如图2-1-5(b)所示。而按键脉冲则是利用RC微分电路产生的正脉冲来实现的,电路如图2-1-5(c)所示。图2-1-5各种复位电路单片机倒计时器第10页图2-1-6手动复位本次采用的是手动复位如图2-1-6所示。在单片机系统中,手动复位是必须具有的功能,在调试或运行程序时,若遇到死机,死循环或程序“跑飞”等情况,手动复位时摆脱这种尴尬局面的最常用方法,这时,手动复位所完成的是一次重新启动操作。五、定时功能定时功能也是通过计数器的技术来实现的,不过此时的计数脉冲来自单片机芯片内部,每个机器周期有一个计数脉冲,即每个机器周期计数器加1。由于一个机器周期等于12个振荡脉冲周期,因此,计数频率为振荡频率的1/12。如果单片机采用12MHz晶振,则计数频率为1MHz,即每微秒计数器加1。这样,在使用定时器时既可以根据计数值计算出定时时间,也可以通过定时时间的要求算出计数器的预置值。(1)定时器控制寄存器(TCON)TCON寄存器地址为88H,位地址为8FH~88H。该寄存器位定义及位地址表示如下:位地址8FH8EH8DH8CH8BH8AH89H88H位符号TF1TR1TF0TR0IE1IT1IE0IT0定时器控制寄存器中,与定时器/计数器有关的控制位共有4位,即TF1、TR1、TF0、TR0,其中TR0和TR1——运行控制位。TR0(TR1)=0,停止定时器/计数器工作;单片机倒计时器第10页TR0(TR1)=1,启动定时器/计数器工作。控制计数启停只需用软件方法使其置1或清0即可。TF0和TF1——计数溢出标志位。当计数器产生计数溢出时,相应溢出标志位由硬件置1。计数溢出标志用于表示定时/计数是否完成,因此,它是供查询的状态位。当采用查询方法时,溢出标志位被查询,并在后续处理程序中应以软件方法及时将其清0。而当采用中断方法时,溢出标志位不但能自动产生中断请求,而且连清0操作也能在转向中断服务程序时由硬件自动进行,。(2)定时器方式选择寄存器(TMOD)TMOD寄存器用于设定定时器/计时器的工作方式。寄存器地址为89H,但它没有位地址,不能进行位寻址,只能用字节传送指令设置其内容。该寄存器位定义表示如下:B7HB6HB5HB4HB3HB2HB1HB0HGATEM1M0GATEM1M0定时器/计数器1定时器/计数器0它的低半字节定时器/计数器0,高半字节对应定时器/计数器1,前后半字节的位格式完全对应。位定义如下:GATE——门控位。GATE=0,以运行控制位TR启动定时器;GATE=1,以外中断请求信号(INT1非或INT0非)启动定时器,这可以用于外部脉冲宽度测量。C/T非——定时方式或计数方式选择位。C/T非=0,定时工作方式;C/T非=1,计数器工作方式。M1M0——工作方式选择位。M1M0=00,工作方式0;M1M0=01,工作方式1;M1M0=10,工作方式2;M1M0=11,工作方式3六、中断功能中断技术是计算机中一个很重要的技术,它既与硬件电路有关,也与软件有关。正是因为有了中断功能,才能够很好地解决快速CPU与慢速外设之间的矛盾;才能够随时响应外部设备提出的请求;才能够及时处理计算机在运行过程中出现的故障,保障计算机的安全。在单片机中,中断系统并不是独立存在的,而是与其他部分相关联。中断系统被分成三大类:外部中断、定时中断和串行中断。外部中断有两个中断源(也可以称之为中断向量),占用I/O端口中的P3.2和P3.3:定时中断有两个中断源,当定时/计数器计满溢出时便回产生中断;串行中断只有一个中断源,但无论是单片机倒计时器第10页发送中断还是接收中断,都只使一个中断源(主要是由于发送SBUF与接收SBUF同一个寄存器),当产生中断后需要进行判别。中断系统在使用时有一些问题需要注意:①中断优先级的设置;②中断允许位的设置;③中断发生后,现场的保护、中断的屏蔽;④中断返回前,现场的恢复、中断的重新允许等。⑴中断允许控制寄存器IE该寄存器用于控制是否允许使用中断。中断允许寄存器地址为A8H,位地址为AFH~A8H。寄存器位定义及位地址表示如下:位地址AFHAEHADHACHABHAAHA9HA8H位符号EA——ESET1EX1ET0EX0EA——中断允许总控制位。EA=0,中断总禁止,禁止所有中断。EA=1,中断总允许,起后中断的禁止或允许由各类中断自行设置。EX0和EX1——外部中断允许控制位。EX0(EX1)=0,禁止外中断。EX0(EX1)=1,允许外中断。ET0和ET1——定时器中断允许控制位。ET0(ET1)=0,禁止定时器中断。ET0(ET1)=1,允许定时器中断。ES——串行中断允许控制位。ES=0,禁止串行中断
本文标题:硬件系统的设计
链接地址:https://www.777doc.com/doc-3655913 .html