欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    毕业设计(论文)基于AT89C52单片机的多功能电子钟设计.doc

    • 资源ID:3978774       资源大小:706KB        全文页数:43页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    毕业设计(论文)基于AT89C52单片机的多功能电子钟设计.doc

    多功能电子钟的设计摘 要单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而51单片机是各单片机中最为典型和最有代表性的一种。 本次设计以AT89C52芯片为核心,辅以必要的外围电路,设计了一个简易的电子时钟,它由220V交流电源供电。在硬件方面,除了CPU外,使用6个七段LED数码管来进行显示,LED采用的是静态显示。通过LED能够比较准确显示时、分、秒。两个简单的按键实现对时间的调整。软件方面采用汇编语言编程。整个电子钟装置能完成时间的显示、调时、定时闹钟、秒表、复位等功能。 通过这次设计让我更深入了解单片机基本电路、如何控制和定时器和中断编程的基本方法,从而锻炼了我学习、设计和开发软、硬件的能力。关键词:电子时钟、多功能、AT89C52、LED数码显示The Design with Investigation of the Multi-function Electron ClockAbstractBecause of its extremely high performance-price ratio, the single-chip computer (SCC) has been paid great attention to ever since it came out in 1970s of 20th Century, and has gained an extensive applicable field and fast development. Among all kinds of SCCs, 51 SCC is the most typical and representative one. This design, adopting AT89C52 chip as the core part with some necessary peripheral circuits, is a simple electronic clock which uses 220V AC as the power supply. In hardware aspect, besides the CPU, six seven-segment LED digi-tubes are used for display, which work in a statically display mode. The LEDs can accurately indicate hour and minute and two buttons can be used to adjust the time. While in the software aspect, the programming language is assembly language. The whole electronic clock system has functions of time display, adjustment, bell-setting , stopwatch and reset, etc. This design enables me to have greater insight into the basic circuit of SCC, and the basic methods of timer control and interruption programming, so that is a training of my ability of learning, designing and developing software and hardware.Key Words:Electronic clock、Multi-function、AT89C52、LED目 录引 言1第1章 绪论21.1 方案要求21.2 方案设计21.3 硬件框图3第2章 硬件设计42.1 AT89C52的管脚说明42.2 T0和T1的设置72.3 T2的设置82.4 模块设计112.4.1 电源部分112.4.2 复位部分112.4.3 振荡器部分122.4.4 发声部分122.4.5 显示部分13第3章 软件设计173.1 主程序流程图173.2 中断程序流程图173.3 源程序20结论与展望21参考文献22致 谢22附录A 系统电路原理图24附录B 引用的外文文献及其译文25附录C 主要参考文献的题录及摘要31附录D 电子时钟源程序33插图清单图1- 1 多功能电子钟原理框图3图2- 1 AT89C52芯片PDIP封装引脚图5图2- 2 电源电路11图2- 3 按键复位电路11图2- 4 振荡器12图2- 5 发声电路12图2- 6 数码管显示电路13图2- 7 DM7447AN引脚功能图15图2- 8 七段显示器对DM7447AN 之保护电路图16 图3- 1 主程序流程图17图3- 2 T2中断流程图18图3- 3 T1中断流程图19图3- 4 T0中断流程图20表格清单表2- 1 P1.1和P1.1的第二功能6表2- 2 P3口各位的第二功能6表2- 3 TMOD7表2- 4 TCON7表2- 5 计数器工作方式7表2- 6 T2CON9表2- 7 T2CON的各位功能9表2- 8 T2MOD9表2- 9 定时器2工作方式10表2- 10 数码管数据和数码管每段的对应关系13表2- 11 数码管断码和字型的对应关系(共阳极)13表2- 12 DM7447AN 真值表15引 言一寸光阴一寸金,寸金难买寸光阴。时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人们服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。电子技术是十九世纪末、二十世纪初开始发展起来的新兴技术,二十世纪发展最迅速,应用最广泛,成为近代科学技术发展的一个重要标志。在其推动下,现代电子产品正在以前所未有的革新速度,向着功能多样化、体积最小化、功耗最低化的方向迅速发展,电子技术的发展有力的推动社会生产力的发展。 郭沫若先生曾说:时间就是生命,时间就是速度,时间就是力量。时间对我们来说总是那么宝贵,在我们的日常工作、学习、生活中,时间概念愈加显得重要。在高度发达信息化的21世纪,人们总是那么忙碌。生活工作中班车要准点,上班要准时,开会要有时间限制;工业生产中,每一道工序都要有严格的时间限制,这样才能做到井井有条;严谨的科技研究中,时间更是重中之重。能够准确的了解并且实时性的知道时间,是我们学习、工作、生活中不可或缺的。机械式钟表虽然也可以告知人们时间,也可以定时,显示日历。但是由于受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89C52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。第1章 绪论1.1 方案要求1主要的任务及目标:用单片机设置一个时钟装置(1)时钟功能;(2)闹钟功能;(3)秒表功能。2设计的主要内容为:(1)时钟范围:24h,60m,60s;(2)按键调整时间设定;(3)按键设定闹钟,精度为分钟;(4)按键控制秒表,精度为0.01秒;(5)供电220VAC。1.2 方案设计多功能电子时钟方案:多功能电子时钟是本设计的最主要的部分。根据需要,本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒值加1;若秒值达到60,则将其清零,并将相应的分字节值加1;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。该方案具有硬件电路简单的特点。但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。而且由于是软件实现,当单片机不上电,程序不执行时,时钟将不工作。利用单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时及秒表计时。该方案节省硬件成本,且能使设计者对单片机的指令系统能有更深入的了解,从而掌握单片机应用技术MCS-51汇编语言程序设计方法,因此,本系统设计采用此种软件控制方法来实现计时。而由于ATMEL公司的AT89C52单片机是低功耗的具有8KB在线可编程Flash存储器的单片机。它与通用80C51系列单片机的指令系和引脚兼容。片内的Flash可允许在线重新编程,也可使用通用非易失性存储器编程。它将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能价格比的微控制器。它的功能强大,而且也较容易购买,故本设计中所选的单片机为AT89C52单片机。1.3 硬件框图图1- 1 多功能电子钟原理框图第2章 硬件设计2.1 AT89C52的管脚说明目前在单片机系统中,应用比较广泛的微处理器芯片主要为8XC5X系列单片机。该系列单片机均采用标准MCS-51内核,硬件资源相互兼容,品类齐全,功能完善,性能稳定,体积小,价格低廉,货源充足,调试和编程方便,所以应用极为广泛。例如比较常用的AT89C2052单片机,带有2KB Flash可编程、可擦除只读存储器(E2PROM)的低压、高性能8位CMOS微型计算机。拥有15条可编程I/O引脚,2个16位定时器/计数器,6个中断源,可编程串行UART通道,并能直接驱动LED输出。应用AT89C2051单片机完全可以实现。但是将两种功能结合在一片单片机上,就需要更多的I/O引脚,本设计采用具有32根I/O引脚的AT89C52单片机。AT89C52单片机是一款低功耗,低电压,高性能CMOS 8位单片机,片内含4KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器(EPROM),器件采用CMOS工艺和ATMEI公司的高密度、非易失性存储器(NURAM)技术制造,其输出引脚和指令系统都与MCS-51兼容。片内的FLASH存储器允许在系统内可改编程序或用常规的非易失性存储器编程器来编程。因此,AT89C52是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域6。AT89C52具有以下主要性能:1. 8KB可改编程序Flash存储器;2. 全静态工作:024Hz;3. 256×8字节内部RAM;4. 32个外部双向输入/输出(I/O)口;5. 6个中断优先级; 3个16位可编程定时计数器;6. 可编程串行通道;7. 片内时钟振荡器。此外,AT89C52是用静态逻辑来设计的,其工作频率可下降到0Hz,并提供两种可用软件来选择的省电方式空闲方式(Idle Mode)和掉电方式(Power Down Mode)。在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作。在掉电方式中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,只保存片内RAM中的内容,直到下一次硬件复位为止。图2- 1 AT89C52芯片PDIP封装引脚图如图2-1所示,AT89C52共有40个管脚,其各个功能如下:·VCC 运行时加5V·VSS 接地·XTAL1 振荡器反相放大器及内部时钟发生器的输入端·XTAL2 振荡器反相放大器的输出端·RST 复位输入,高电平有效,在晶振工作时,在RST引脚上作用2个机器周期以上的高电平,将使单片机复位。·/VPP 片外程序存储器访问允许信号。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),端必须保持低电平(接地),如果端为高电平(接Vcc端),CPU则执行内部程序中的指令。·LAE/ 当访问外部程序存储器或数据存储器时,ALE(地址允许锁存)输出脉冲用于锁存地址的低8位位数字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(第二功能)。·:程序储存允许()输出是外部程序存储器的读选通信号,当AT89C52由外部存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次信号。·P0口 是一组8位漏极开路双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线服用,在访问期间激活内部上拉电阻。在本设计中P0口的高4位(P0.7P0.4)输出秒十位,低4位(P0.3P0.0)输出秒个位。·P1口 是一个内部带上拉电阻的8位准双向I/O口。在对EPROM型单片机编程和验证程序时,它接收低8位地址。P1能驱动(吸收或输出电流)4个LSTTL电路。在时钟系统中,P1口的高4位(P1.7P1.4)用来输出时十位,低4位(P1.3P1.0)用来输出时个位。P1.0还被用作定时器/计数器2的外部计数输入端,即专用功能T2。P1.1被用作专用功能端T2EX,即定时器T2的外部控制端。参见表2-1。表2- 1 P1.1和P1.1的第二功能引脚号功能特性P1.0T2(定时/计数器2外部计数脉冲输入),时钟输出P1.1T2XE(定时/计数器2捕获/重装载触发和方向控制)·P2口 是一个带有内部上拉电阻的8位准双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻,某个引脚外部信号拉低是会输出一个电流。在时钟系统中,P2口的高4位(P2.7P2.4)用来输出分十位,低4位(P2.3P2.0)用来输出分个位。·P3口 是一组带有内部上拉电阻的8位准双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2-2所示:表2- 2 P3口各位的第二功能端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2 (外部中断0)P3.3 (外部中断1)P3.4 T0 (定时/计数器0)P3.5 T1 (定时/计数器1)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通) 2.2 T0和T1的设置定时器/计数器0和定时器/计数器1有两个外部输入端(T0、和T1、)、两个8位的二进制加法计数器(TH0、TL0和TH1、TL1)。由两个内部特殊功能寄存器(TMOD、TCON)控制定时器/计数器的工作,其中TMOD(Timer/Counter Mode Control)是定时器/计数器模式控制寄存器,其格式如下表2-3所示(寄存器各位不可位寻址)。表2- 3 TMOD寄存器名:TMOD位名称GATEC/M1M0GATEC/M1M 0地址:89H位地址TMOD被分为两个部分,每部分4位,高4位用于定时器/计数器1,低4位用于定时器/计数器0。其中GATE和C/用于控制计数信号的输入,M1、M0用于定义计数器的工作方式。TCON是定时器/计数器寄存器,其格式如下表2-4所示(寄存器各位可位寻址):表2- 4 TCON寄存器名:TCON位名称TF1TR1TF0TR0IE1IT1IE0IT0地址:88H位地址8FH8EH8DH8CH8BH8AH89H88HTCON也被分为两部分,高4位用于定时器/计数器。其中TR1、TR0用于控制计数信号的输入,TF1、TF0位计数器的溢出位。TMOD中的GATE和TCON中的TR0用于控制计数脉冲的接通,通常有两种使用方法:·GATE=0时,仅仅由程序设置TR0=1来接通计数脉冲,由程序设置TR=0来停止计数。此时与外部中断无关。·GATE=1时,先由程序设置TR=1,然后由外部中断来控制计数的接通与关闭。 两个8位计数器均为加法计数器,它们的级联和技术范围是有TMOD中的M1和M0来控制的。M1、M0可设置4种内部计数的工作方式,如表2-5所示。 表2- 5 计数器工作方式工作方式M1M0功 能计 数 范 围00013位二进制加法计数器10116位二进制加法计数器210可重置初值的8位二进制加法计数器3112个独立的8位二进制加法计数器(仅对T0)工作方式0主要为兼容早期的MCS-48单片机所保留,一般可用工作方式1代替。工作方式1的特点是:计数范围宽,但每次的初值均要由程序来设置。工作方式2的特点是:初值只需要设置一次,每次溢出后,初值自动会从TH0加载到TL0或从TH1加载到TL1,但计数范围较工作方式1小。工作方式3的特点是:增加了一个独立的计数器,但只能适用于定时器/计数器0而且占用了定时器/计数器1的TR1和TF1,所以此时的定时器/计数器1只能用于不需要中断的应用,如作为串行口的波特率发生器。4种工作方式对溢出处理均相同,加法计数超出范围后,溢出信号将使TCON中的TF0或TF1置位,计数值回到0或初值,重新开始计数。TF0或TF1置位后,可向CPU提出中断请求。TF0和TF1在CPU响应中断后会自动复位,而禁止中断响应时,也可由软件来复位。以工作方式1为例,定时时间T为计数范围乘上计数周期,即由表2-5和上式可知,当初值等于0时,4种工作方式有中最大定时时间的为工作方式1。又外接晶振频率为12Mhz,则最大定时时间为65536,即65.36ms。时钟要求显示时间精度为妙,而定时器最大定时时间为65.36ms ,小于1s,很显然直接用一个定时器来定时是行不通的。为此,把T0设为定时器模式,T1设为计数器模式,它们都以工作方式1工作,即把TMOD赋值01010001B,又由软件来启动或停止中断,则把00000000B赋予TCON。T0定时时间为0.05s,T1计数次数为20,这样可得1s的定时时间。由上式可导出计算初值的下式:则可分别计算出T0和T1的初值:T0初值=65536-50000=15536=3CB0H;T1初值=65536-20=65516=FFECH。2.3 T2的设置AT89C52除了MCS-51中51子系列所有的定时器/计数器0、定时器/计数器1外,还有一个定时器/计数器2。定时器/计数器2有两个外部输入端(T2和T2EX),两个8位的二进制计数器(TH2和TL2),两个重载或捕获寄存器(RCAP2L和RCAP2H)和两个内部特殊功能寄存器T2CON和T2MOD。定时器/计数器2的两个外部输入端T2和T2EX分别借用了P1.0和P1.1。T2CON、T2MOD、RCAP2L、RCAP2H、TL2和TH2这六个寄存器或计数器的内部地址分别为0C8H0CDH,复位后,除了T2MOD中未定义的各位值不确定外,其余均为0。T2CON中的各位可进行位寻址,其他寄存器或计数器的各位不能按位寻址。T2CON(Timer/Counter2 Control)的格式和其各位的功能分别如表2-6和表2-7所示。表2- 6 T2CON寄存器名:T2CON位名称EXF2RCLKTCJKEXEN2TR2C/CP/地址:0C8H位地址0CFH0CEH0CDH0CCH0CBH0CAH0C9H0C8H表2- 7 T2CON的各位功能符号功能TF2定时器2溢出标志。定时器2溢出是,又由硬件置位,必须由软件清0。当RCLK=1时,定时器2溢出,不对TF2置位。EXF2定时器2外部标志。当EXEN2=1,且当T2EX引脚上出现负跳变而出现捕获或重装载时,EXF2置位,申请中断。此时如果允许定时器2中断,CPU将响应中断,执行定时器2中断服务程序,EXF2必须由软件清除。当定时器2工作在向上或向下计数工作方式时(DECN=1),EXF2不能激活中断。RCLK接收时钟允许。RCLK=1时,用定时器2溢出脉冲作为串行口(工作于工作方式1或3时)的接收时钟,RCLK=0,用定时器1的溢出脉冲作为接收时钟。TCLK发送时钟允许。TCLK=1时,用定时器2溢出脉冲作为串行口(工作于工作方式1或3时)的发送时钟,TCLK=0,用定时器1的溢出脉冲作为发送脉冲。EXEN2定时器2外部允许标志。当EXEN2=1时,如果定时器2未用于作串行口的波特率发生器,在T2EX端出现负跳变脉冲时,激活定时器2捕获或重装载。EXEN2=0时,T2EX端的外部信号无效。TR2定时器2启动/停止控制位。TR2=1时,启动定时器2C/定时器2定时方式或计数方式控制位。若为0,选择定时方式。若为1,选择对外部事件计数方式(下降沿触发)。CP/捕获/重装载选择。CP/=1时,如EXEN2=1,且T2EX端出现负跳变脉冲时发生捕获操作。CP/=0时,若定时器2溢出或EXEN2=1的条件下,T2EX端出现负跳变脉冲,都会出现自动重载操作。当RCLK=1或TCLK=1时,该位无效,在定时器2溢出是强制其自动重装载。T2MOD(Timer 2 Mode Control)虽然是定时器/计数器2模式控制器的缩写,但定时器/计数器2的工作模式与T2CON更为亲密,T2MOD只用了2位,其格式如表2-8所示(寄存器各位不可位寻址)。表2- 8 T2MOD寄存器名:T2MOD位名称T2OEDCEN地址:0C9H位地址T2OE是定时器2的输出允许位,置位后,允许T2引脚输出可编程的方波。DCEN是定时器2的计数方向控制允许位,置位可允许定时器2进行加/减计数方式。定时器2有三种工作方式:捕获方式,自动重装载(向上或向下计数)方式和波特率发生器,工作方式有T2CON的控制位来选择,如表2-9所示表2- 9 定时器2工作方式RCLK+TCLKCP/TR 2MODE0 0 116-bit Auto-reload 0 1 116-bit Capture 1 x 1Baud Rate Generato r x x 0Off·捕获(Capture)方式:在捕获方式下,利用外部引脚T2EX(P1.1)上的下降沿,可捕获当前TH2和TL2的16位计数值。TH2和TL2的计数信号可来自内部基准时钟,此时捕获方式可测得引脚T2EX上两个下降沿之间的时间;TH2和TL2计数信号也可来自引脚T2(P1.0)上的脉冲信号,此时的捕获方式可测得T2EX上两个下降边沿周期,T2上所出现的脉冲数。·自动重载(Auto-reload)方式:自动重载方式可通过T2MOD中的DCEN位来设置自动重载时的计数方式,DCEN=0为加法计数的自动重载方式,DCEN=1为可控加/减法计数的自动重载方式。当DCEN=0,若EXEN2=0,定时器2为向上计数至0FFFFH溢出,置位TF2激活中断,同时把16位计数寄存器RCAP2H和RCAP2L重装载,RCAP2H和RCAP2L的值可由软件设置;若EXEN2=1,定时器2的16位重载由溢出或外部输入端T2EX从1至0的下降沿触发。这个脉冲使EXF2置位,如果中断允许,同样产生中断。·波特率发生器(Baud Rate Generator)方式:置位T2CON中的TCLK或RCLK位可将定时器2设置为波特率发生器方式,此时,串行口的发送和接收波特率可以不同,如定时器2作为发送(或接收)波特率发生器方式,而定时器1作为接收(或发送)波特率发生器方式。定时器2是用来产生秒表定时中断的,采用自动重装载(Auto-reload)方式工作,即把00000000B赋予T2CON。令T2MOD中DCEN=0, EXEN2=0,定时器2为向上计数至0FFFFH溢出,置位TF2激活中断,同时把16位计数寄存器RCAP2H和RCAP2L重装载,RCAP2H和RCAP2L的值可由软件设置。由于秒表要求精度为0.01s,定时器2的定时时间也要为0.01秒。由公式(2)可知:T2初值=65536-10000=55536=D8F0H,即TH2=D8H,TL2=F0H;RCAP2H=D8H,RCAP2L=F0H。2.4 模块设计2.4.1 电源部分如图2-2所示,LM7805CT是一个三端集成稳压器,输出端电压+5V,其自身压降为23V,这里取2.5V,则1端电压为7.5V。整流滤波系数为1.26,则变压器二次侧的电压为6V,因此变压器的砸数比为3:110。图2- 2电源电路2.4.2 复位部分复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序,并使其它功能单元处于一个确定的初始状态。本复位电路采用的是按键复位,它是通过复位端经电阻与VCC电源接通而实现的,它兼具上电复位功能。因本系统的晶振的频率为12MHz,所以,复位信号持续时间应当超过2S才能完成复位操作。如图2-3所示,上电时电容充电,1端低压经非门输出2端为高压,启动复位。当电容充满电后,1端高压经非门输出2端为低压,复位停止。若按下S0,电容开始放电,1端低压经非门输出2端为高压,则启动复位。图2- 3 按键复位电路2.4.3 振荡器部分MCS-51单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体及电容一起构成一个自激振荡器,如图2-4所示。 图2- 4 振荡器图中石英晶体为12MHz,两个电容为20pF。单片机一个机器周期包含12个振荡周期,则每个机器周期恰为1。2.4.4 发声部分蜂鸣器与三极管相连,给P3.0口写“1”则蜂鸣器发声,写“0”则蜂鸣器停止发声,如图2-5所示。图2- 5 发声电路2.4.5 显示部分为了使数码管能显示十进制数,必须先由软件将二进制数转换为十进制的BCD码,然后再将十进制数的BCD码经过译码器的译出,经驱动器点亮对应的的段,如图2-6所示。图2- 6 数码管显示电路图中所用的译码器是DM7447AN集成显示译码器,输出系为驱动器设计,其工作电压5V,逻辑0吸入电流高达40mA,故必须使用电阻加以限流,以免电流过大烧毁显示器。输入端、输出端和数码管显示数字之间的关系如表2-10所示。在单片机内部显示缓冲区79H、7AH、7BH、7CH、7DH、7EH内的值分别是秒的个位、秒的十位、分的个位、分的十位、时的个位、时的十位,显示器LED0、LED1、LED2、LED3、LED4、LED5分别显示秒的个位十位、分的个位十位、时的个位十位,由图2-6所示。数码管动态显示:由于显示的数据和LED数码管的段控码并不是一一对应的关系,即显示的数据与数码管的字型代码不相符。显示数据与字型代码之间存在着转换关系,数码管段控数据和数码管各段的对应关系如表2-10、表2-11所示。表2- 10 数码管数据和数码管每段的对应关系D7D6D5D4D3D2D1D0LED显示码a111111100FEHb111111010FDHc111110110FBHd111101110F7He111011110EFHf110111110DFHg101111110BFHdp011111117FH表2- 11 数码管断码和字型的对应关系(共阳极)字型D7D6D5D4D3D2D1D0段码dpgfedcba0110000000CO1111110010F92101001000A43101100000B04100110019951001001092610000010827111110000F88100000008091001000090A1000100088B1000001183C110001100C6D101000000A0E1000011086F100011108EP.0000011006全亮0000000000全灭111111110FF从电子钟程序清单中的显示程序可以知道:数据表格存储单元从首地址到最高位分别存放的是共阳极数码管0、1、2、3、4、5、6、7、8、9、P.、灭的十六进制字型代码,所以只要把显示缓冲区内的数值加上偏移地址rel(偏移地址rel=数据表格首地址-MOVC A A+PC指令单元首地址-1),把和送到累加器A中,使用MOVC A, A+PC就可以取出缓冲区内要显示数据的字型代码,当然要取P.和灭的字型代码就要分别给缓冲区送0AH、0BH。在动态扫描时,显示缓冲区31H内部存放的是要显示的秒的个位的数值,使用MOVC A, A+PC指令取出段控码,由P0口输出通过锁存器DM7447AN后送到数码管的段控端,给P2口送01H通过锁存器DM7447AN驱动以后,只有LED0位的位控端有效,此时只有LED0被点亮来显示秒的个位,延时持续点亮一段时间,然后把显示缓冲单元地址加1,位控值左移一位,取出段控码,再把段控码和位控码送到数码管显示器,此时只有LED1被点亮显示秒的十位,延时持续点亮一段时间,就这样通过逐个地从低位到高位点亮各个显示器,扫描到最高位时的十位被点亮就返回。这样虽然在任一时刻只有一位显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果完全一样。常用的BCD 对七段显示器译码器/驱动器之IC 包装计有TTL 之DM7446AN、DM7447AN、7448、7449 与CMOS 之4511 等等。其中DM7446AN、DM7447AN 必须使用共阳极七段显示器,7448、7449、4511等则使用共阴极七段显示器。 图2-7为DM7447AN集成电路译码器之引脚图与真值表如表2-12。在正常操作时,当输入DCBA=0010 则输出abcdefg=0010010。故使显示器显示"2"。当输入DCBA=0110 时,输出abcdeg=1100000,显示器显示"6。 在DM7447AN 中尚有LT、RBI 与BI/RBO 之控制脚,其功能分述如下:该电路是由与非门、输入缓冲器和7 个与或非门组成的BCD-7 段译码器/驱动器

    注意事项

    本文(毕业设计(论文)基于AT89C52单片机的多功能电子钟设计.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开