欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机控制的倒计时显示器.docx

    • 资源ID:15507938       资源大小:210.97KB        全文页数:22页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机控制的倒计时显示器.docx

    1、单片机控制的倒计时显示器绪论在生活和生产的各个领域中,凡是有自动化控制要求的地方都会有单片机的身影,从简单到复杂,从空中地面到地下,凡是能想象到的地方几乎都有使用片机的需要,尽管现在单片机已经很普遍了,但仍有许多地方可以用单片机控制而尚未实现的项目,因此单片机的应用有很大的拓展空间。例如在工业自动化方面,仪器仪表方面,家用电器方面,信息通信方面,军事装备方面。单片机的应用有利于产品的小型化,多功能化,有利于提高劳动生产率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。随着科学技术的高速发展,单片机的发展也得到了较快发展,单片机课程在学校大量开设,人们开始运用所学单片

    2、机知识解决生活中的实际技术问题。一、控制要求(一)基本控制要求我设计的电路是利用单片机控制的时间继电器。电路的核心是单片机89C51芯片,首先该电路可实现0000-9999秒的长定时。按键电路中有两个按钮,一个按钮控制定时器的启动设定。一个按钮控制定时器定时时间修改,在设定状态下,时间修改按钮按一次定时值加1,当设定按键启动后定时开始,定时值每秒减1,直到0000停止。这样就实现了定时目的。当四位LED数码管显示时间减到0000时,即定时时间到,继电器得电工作。电路具体由复位电路,按键电路,晶振电路,动态显示组成,由于外部电路只有一继电器工作,所以本文不予过多说明。(二)电路框图设计89C51

    3、芯片外接复位电路,按键电路,晶振电路,等到数码显示管显示的时间为0时,继电器得电工作。根据以上思路设计出电路的大概框图。电路框图单片机电路原理图二、单片机简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多

    4、功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如左图所示 (一)主要特性 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器 5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 图2 89C51芯片引脚排列图(二)管脚说明: VCC:供电电压。 GND:接地。 P0口

    5、:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P

    6、2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下

    7、拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口。管脚 备选功能 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(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平

    8、用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

    9、 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输出及内部时钟作电路的输入。 XTAL2:来自反向振荡器的输出。三、单元电路介绍(一)按键电路单片机使用键盘分为独立式和矩阵式两种。从按一个键到键的功能被执行主要应包括两个工作:一是键盘识别,另一个是键功能的实现。键盘接口应完成以下操作功能:1、键盘扫描,以判定是否有键被按下。2、键识别,一确定

    10、闭合键的行列位置。3、产生闭合键的键码4、排除多键、串键及去抖动。我们这里用的是独立式按键。按键按下后,P口为低电平,断开键,为高电平。SB1控制定时器定时时间修改。SB2启动/设定图3 按键电路 (二)复位电路89C51芯片上的RST引脚是复位信号的输入端,复位信号是高电平有效。复位操作有上电自动复位(上图a)和按键手动复位两种方式按键手动复位又分为电平方式(上图b)和脉冲方式(上图c)。我在电路设计中采用按键电平复位方式,只要按下按钮电源通过电阻R2给RET一个高电平,使电路复位。(三)晶振电路AT89C51单片机的时钟信号通常由两种方式产生:一是内部振荡方式(下图a),二是外部时钟方式(

    11、下图b)。 (a) 内部方式时钟电路 (b) 外部方式时钟电路1、内部振荡方式在89C51单片机内部有一个高增益的反相放大器,用于构成振荡器,反相放大器的输入端为XTAL1,输出端为XTAL2。内部振荡方式是在XTAL1和XTAL2引脚两端跨接石英晶体振荡器和两个电容构成稳定的自激振荡电路。电容C1和C2通常取30pF,对振荡频率有微调作用。晶振频率范围是1.2MHz12MHz。2、 外部时钟方式外部时钟方式是把外部已有的时钟信号引入到单片机内。AT89C51:外部时钟由XTAL2输入,直接送入内部时钟电路,XTAL1接地;AT89C51:外部时钟由XTAL1输入,XTAL2悬空。外部时钟信号

    12、为高电平持续时间要大于20ns,且频率低于12MHz的方波。(四)LED数码显示1、数码管的分类 数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的

    13、数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。本论文采用四位共阳极数码管 (如左图所示) 图4 四位共阳极数码管2、数码管的驱动方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。本电路采用动态显示驱动。 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM

    14、增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的

    15、I/O端口,而且功耗更低。(五)电路原理图SBI控制电路的复位,按下SB1电路上电复位。SB3是启动/设定按钮,第一次按启动,第二次按设定,SB2是时间修改按钮,在设定状态下,按一次时间值加一,定时时间设好后,按下SB3经过程序运行,定时时间自减一,直到为0,继电器得电开始工作。D1起保护继电器的作用。图5电路原理图三、程序设计 程序设计主要运用了中断和定时器/计数器知识在编写程序之前先把这两个系统的基本情况介绍一下。(一)中断席统1、中断的概念(1)在单片机中,当CPU在执行程序时,由单片机内部或外部的原因引起的随机事件要求CPU暂时停止在执行的程序,而转向执行一处用于处理该随机事件的程序并

    16、处理完后又返回被停止的程序处继续执行,这一过程就称为中断。(2)单片机处理中断的4个步骤:中断请求、中断响应、中断处理和中断返回。(3)向CPU发出中断请求的来源,或引起中断错原因称中断源。中断源要求服务的请求称为中断请求。中断源可分为两大类:一类来自单片机内部,称之为内部中断源;另一类来自单片机外部,称之为外部中断源。 图6 中断流程图 2、中断系统结构(1)8051单片机的中断系统主要由与中断有关的4个特殊功能寄存器和硬件查询电路等组成。1) 定时器控制寄存器TCON 主要用于保存中断信息。2) 串行口控制寄存器SCON 主要用于保存中断信息。3) 中断允许寄存器IE 主要用于控制中断的开

    17、放和关闭。4) 中断优先级寄存器IP主要用于设定优先级别。5) 硬件查询电路主要用于判定5个中断源的自然优先级别。 (2)8051单片机的中断源有五个,可分为三类。1) 外部中断2) 定时中断3)串行口中断(3)中断系统控制定时器控制寄存器TCON定时器控制寄存器TCON的作用是控制定时器的启动与停止,并保存T0、T1的溢出中断标志和外部中断、的中断标志。TCON的格式:各位的功能说明:1) TF1(TCON.7):定时器1溢出标志位。定时器1被启动计数后,从初值开始进行加1计数,当定时器1计满溢出时,由硬件自动使TF1置1,并申请中断。该标志一直保持到CPU响应中断后,才由硬件自动清0。也可

    18、用软件查询该标志,并由软件清0。2) TR1(TCON.6):定时器1启停控制位。 3) IT1(TCON.2):外部中断1触发方式选择位。4) IE1(TCON.3):外部中断1请求标志位。IEl=1表示外部中断1向CPU申请中断。当CPU响应外部中断1的中断请求时,由硬件自动使IE1清0(边沿触发方式)。5) TF0(TCON.5):定时器0溢出标志位。其功能同TF1。6) TR0(TCON.4):定时器0启、停控制位。其功能同TR1。7) IE0(TCON.1):外部中断0请求标志位。其功能同IE1。8) IT0(TCON.0):外部中断0触发方式选择位。其功能同IT1。(二)定时器/计

    19、数器1、定时器/计数器的工作方式寄存器TMOD 定时器/计数器是一种可编程部件,在工作之前必须通过软件设定它的工作方式,即对工作方式寄存器TMOD中每位进行设定。下面介绍每位的含义: TMOD(89H)其中,低4位用于决定T0的工作方式,高4位用于决定T1的工作方式。 (1)M1和M0工作方式控制位 M0和M1为工作方式控制位,确定4种工作方式,如表7-1所示。(2)C/T定时器/计数器方式选择位 C/T=0,设置为定时方式,对机器周期进行计数; C/T=1,设定为计数方式,对外部信号进行计数,外部信号接至T0(P3.4)或T1(P3.5)引脚。2、定时器/计数器的控制寄存器TCON 设定好了

    20、定时器/计数器的工作方式后,它还不能进入工作状态,必须通过设置控制寄存器TCON中的某些位来启动它工。要使定时器/计数器停止运行,也必须通过设置TCON中的某些位来实现。当定时器/计数器计满溢出,或有外部中断请求时,TCON能标明溢出和中断情况。下面介绍控制寄存器TCON每位的含义:TF1:定时器T1溢出标志位。当定时器T1溢出时,由硬件自动使TF1置1,并向CPU申请中断。CPU响应中断后,自动对TF1清零。TF1也可以用软件清零。 TR1:定时器T 1运行控制位。可由软件置1(或清零)来启动(或关闭)定时器T1,使定时器T1开始计数。用指令SETB TR1(或CLR TR1)使TR1置1(

    21、或清零)。TF0:定时器T0溢出标志位。其功能与TF1相同。TR0:定时器T0运行控制位。其功能与TR1相同。IE1:外部中断1请求标志位。IT1:外部中断1触发方式控制位。IE0:外部中断0请求标志位。IT0:外部中断0触发方式控制位。IE1、IT1、IE0、IT0这4位将在第3节讲述。控制寄存器TCON的位地址是88H,可以对它进行位寻址。(三)流程图和程序程序中有两个中断上面是开中断,下面为两个中断服务程序。ORG 0000H ;设置初始地址 AJMP MAIN ORG 000BH ;中断LT0地址 AJMP LT0 ORG 001BH ;中断LT5地址 AJMP LT5 ORG 003

    22、0H ;MAIN:MOV TMOD,#11H;定时工作方式1 MOV TH1,#3CH ;设置初始值 MOV TL1,0B0H ;秒计数时间50MS MOV TH0,#0ECH;显示时间5MS MOV TL0,#78H SETB EA ;开中断 SETB ET0 ;定时0允许中断 SETB TR0 ;开定时器0 SETB ET1 ;定时1允许中断 MOV R1,#14H;设置循环20次 MOV 30H,#05H;赋显示值 MOV 31H,#00H MOV P2,#0FEH;设位显初位 MOV DPTR,#TAB;查表 CLR F0 ;用户标志位清零MAIN1:MOV A,30H ; CJNE

    23、A,#00H,Q1 ;判30H=0? MOV A,31H CJNE A,#00H,Q1 ;判31H=0? CLR F0 ;30H、31H=0,F0清零 CPL P1.0 ;继电器得电 AJMP Q2 Q1:MOV P1,#0FFH ;使继电器失电Q2:JB P3.6,L3 ;判有无启动 ACALL LOOP JB P3.6,L3 ; ACALL LOOP JB P3.6,L3 ACALL LOOPL0:JNB P3.6,L0 CPL F0 ;用户标志位取反L3:JB F0,L1 ;判F0=1? CLR TR1 ;关定时1 JB P3.7,MAIN1;判增量键无按下 ACALL LOOP JB

    24、P3.7,MAIN1 ACALL LOOPL2:JNB P3. 7,L2 CLR C MOV A,30H INC A ;(30H)+1 DA A MOV 30H,A MOV A,30H CJNE A,#99H,L3;判(30H)=99? MOV A,31H CLR C INC A ;(31H)+1 DA A MOV 31H,A AJMP MAIN1 L1:SETB TR1 ;开定时器1 AJMP MAIN1 LT0:JB P2.0,LT1 ;判是否显示个位 MOV A,30H ANL A,#0FH ;屏蔽十位 MOVC A,A+DPTR MOV P0,A ;段显 AJMP LT6 LT1:JB

    25、 P2.1,LT2 ;判是否显示十位 MOV A,30H SWAP A ;高低字节转换 ANL A,#0FH; MOVC A,A+DPTR MOV P0,A ;段显 AJMP LT6 LT2:JB P2.2,LT3 ;判是否显示百位 MOV A,31H ANL A,#0FH MOVC A,A+DPTR MOV P0,A AJMP LT6 LT3:JB P2.3,LT6 ;判是否显示千位 MOV A,31H SWAP A ANL A,#0FH MOVC A,A+DPTR MOV P0,A MOV A,31H LT6:MOV A,P2 RL A MOV P2,A JB P2.4,L ;判有无显示超

    26、位 MOV P2,#0FEH;重设位初显 L:MOV TH0,#0ECH;初值重赋 MOV TL0,#78H RETI ;中断返回LT5:MOV TH1,#3CH ;初值重赋 MOV TL1,#0B0H DJNZ R1,L4 ;判断循环20次 MOV R1,#14H ;重赋20次 MOV A,30H CJNE A,#00H,L11 ;再判30H=0? MOV A,31H CJNE A,#00H,L7 ;再判31H=0? AJMP L9 L11:ANL A,#0FH;屏蔽个位 JZ L6 CLR C MOV A,30H DEC A ;显示数减1 MOV 30H,A AJMP L4 L6:MOV

    27、A,30H ORL A,#09H ;个位赋9 SUBB A,#10H ;十位减1 MOV 30H,A AJMP L4 L7:MOV A,31H ANL A,#0FH ;屏蔽百位 JZ L8 CLR C MOV A,31H DEC A ;百位减1 MOV 31H,A MOV 30H,#99H ;30H送99 AJMP L4L8:MOV A,31H ORL A,#09H SUBB A,#10H MOV 31H,A MOV 30H,#99H AJMP L4 L9:CLR F0 ;用户标志位 CPL P1.0 ;继电器得电 L4:RETI LOOP:MOV R5,#0AHLOOP1:MOV R4,#7

    28、CHLOOP2:NOP NOP DJNZ R4,LOOP2 NOP DJNZ R5,LOOP1 RETTAB:DB 0C0H,0F9H,0A4H,0B0H DB 99H,92H,82H,0F8H DB 80H,90H END (四)结论本论文研究的是单片机控制的定时继电器,其中中断和定时器知识的运用是重点。用单片机实现的定时继电器,电路结构简单,可操作性强。继电器工作以后可以拖动外部负载工作。通过该论文的研究学习锻炼了自己的程序编写能力。使自己对单片机有了更加深刻的认识。谢辞论文经过几个星期的撰写和修改终于完成了,在撰写的过程中,遇到不少问题,但是在指导老师的悉心点拨下,我解决了一个又一个问题,在此我要向沈蓬和都晔凯两位指导老师表示衷心的感谢!参考文献:单片机基础,北京航空航天大学出版社;MCS-51系列单片微型计算机及其应用,东南大学出版社元件清单名称个数名称个数继电器1个续流二极管1个40脚插座1个共阳数码管4位24脚插座1个电阻3309个12MHZ晶振1个电阻10K4个电容20pf2个电阻5204个电解电容47uf1个按钮3个三极管5个电子板1块AT89C51芯片1个


    注意事项

    本文(单片机控制的倒计时显示器.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开