基于AT89C52的电子时钟设计

上传人:公**** 文档编号:562726059 上传时间:2023-04-09 格式:DOC 页数:20 大小:196KB
返回 下载 相关 举报
基于AT89C52的电子时钟设计_第1页
第1页 / 共20页
基于AT89C52的电子时钟设计_第2页
第2页 / 共20页
基于AT89C52的电子时钟设计_第3页
第3页 / 共20页
基于AT89C52的电子时钟设计_第4页
第4页 / 共20页
基于AT89C52的电子时钟设计_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《基于AT89C52的电子时钟设计》由会员分享,可在线阅读,更多相关《基于AT89C52的电子时钟设计(20页珍藏版)》请在金锄头文库上搜索。

1、华北水利水电学院课程设计报告课程名称: 基于AT89C52的电子时钟设计姓 名: 李东利 学 号: 200814715 班 级: 电信2008147 专 业: 电子信息工程 日 期: 二零一零年一月二十二日 目 录一、前言3二、课程设计的目的和要求42.1课程设计的目的42.2课程设计的基本要求4三、总体设计原理4四、硬件设计5 4.1设计思路5 4.2硬件结构及原理电路5 4.3主要硬件原件说明6 4.4单元电路原理介绍6五、软件设计105.1程序介绍105.2程序清单13六、系统操作说明18七、设计总结19八、参考文献20一 前言 20世纪70年代开始,半导体厂商把微型机最基本的部件制作在

2、一个硅片内,于是就出现了以一个大规模集成电路为主组成的微型计算机-单片微型计算机(Single-chip microcomputer),简称单片机。由于单片机面向控制性应用领域,装入到各种智能化产品之中,所以又称为嵌入式控制器(embedded microcontroller)单片机内部包含有计算机的基本功能部件:中央处理器(CPU)、存贮器(memory)、输入/输出(I/O)接口电路,给单片机加上适当的外围设备和软件,便构成一个单片机应用系统。其应用如下:(1)单片机在智能仪表中的应用:单片机广泛地应用于实验室、交通运输工具、计量等各种仪器仪表之中,使仪器仪表智能化,提高它们的测量精度,加

3、强其功能,简化仪器仪表的结构,便于使用、维护和改进。(2)单片机在机电一体化中的应用:机电一体化是机械工业发展的方向。机电一体化产品是指集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的机电产品。(3)单片机在实时控制中的应用:单片机也广泛地用于各种实时控制系统中,如对工业上各种窑炉的温度、酸度、化学成分的测量和控制。将测量技术、自动控制技术和单片机技术相结合,充分发挥数据处理和实时控制功能,使系统工作于最佳状态,提高系统的生产效率和产品的质量。(4)单片机在分布式多机系统工程中的应用:单片机在多机系统中,往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量

4、和控制。五 单片机在家用电器等消费类领域的应用:家用电器等消费类领域的产品特点是量多面广,市场前景看好。单片机应用到消费类产品之中,能大大提高它们的性能价格比,提高产品在市场上的竞争能力。二 课程设计的目的和要求2.1 课程设计的目的单片机具有稳定可靠、 体积小、 价格低廉等特点,成为设计智能化仪器仪表的首选微控制器,因此本次设计我们采用了AT89C52芯片,此款单片机可以使用软件对其进行在线编程,其灵活性和可靠性都相对提高。通过此次课程设计,增强了我们的动手能力,把理论与实践融合在一起。同时,也进一步加深了对单片机的硬件结构的理解和巩固,编程能力也得到了提高。2.2 课程设计的基本要求 本次

5、课程设计要求利用单片机内部定时器实现时、分、秒计时且在6个数码管上同时显示时、分、秒计时时间,并能通过按键对计时时间进行重新设置。三 总体设计原理 本设计中的电子钟的核心是AT89S51单片机,其内部带有4KB在线可编程Flash存储器的单片机,无须外扩程序存储器,硬件电路主要由四部分构成:时钟电路,复位电路,键盘以及显示电路。系统时钟电路采用的晶振的频率为12MHz,定时计数个数为5000,定时器采用的是定时器0工作在方式1定时,用于实现时、分、秒的计时,定时时间为5ms。复位电路可使电子表恢复到初始状态。键盘可对电子表进行开启、停止,还能实现时、分、秒的显示及设定等操作。显示电路由一个共阳

6、级6位一体LED数码管构成,它的段控端和位控端通过7447及9015PNP型号三极管与AT89C52单片机的I/O口相连,显示器可使电子表显示出时、分、秒。 多功能电子表的计时原理为:上电后,电子表显示P.提示符,按下K0键后,电子表从00:00:00开始计时。当定时器0的定时时间满5ms后,定时器0溢出一次,溢出满200次后,电子表的秒加1,满60秒后,分加1,满60分后,时加1,满24时后,电子表重新从00:00:00开始计时。四 硬件设计4.1 设计思路 电子时钟主要由显示模块、校时模块和时钟运算模块三大部分组成。其中校时模块和时钟运算模块要对时、分、秒的数值进行操作,并且秒计算到60时

7、,要自己清零并向分进1;分计算到60时,要自己清零并向时进1;时计算到24时,要清零。这样,才能循环记时。4.2 硬件结构及原理电路4.3 主要硬件原件说明4.3.1 单片机AT89C52AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。 AT89C52有40个引脚,32个外部双向输

8、入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。4.3.2 译码器驱动芯片7447 7447是美国仙童(FRIRCHILD)公司生产的BCD码到7段数码管的译码器驱动芯片。它负责将4位BCD码十进制数转化成对应的7段数码管信号,送到数码管的7位段选输入端。4.3.3 74LS138译码器 74LS138 为3 线8 线译码器,共有 54/74S138和 54/74LS138

9、两种线路结构型式,其工作原理如下:当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低电平译出。 其作用是利用 G1、/(G2A)和/(G2B)可级联扩展成 24 线译码器;若外接一个反相器还可级联扩展成 32 线译码器。若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器。4.4单元电路原理介绍4.4.1 电源电路原理本系统所用器件的工作电压为+5V,为保证本系统能够正常工作,需提供稳定的+5V电压,可利用三端集成稳压器7805来实现,其应用电路如图所示。7805的输入电压为+10V,输出

10、电压为稳定的+5V电压,C=2000F为滤波电容,C1=0.33F是为了改善纹波电路,C0=0.1F是为了改善负载的瞬态响应。(其中要求Ui-Uo2V)4.4.2 时钟电路原理 如图所示为时钟电路原理图,AT89C52芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。4.4.3 复位电路原理 如图所示为复位电路原理图,复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机

11、从0000H单元开始执行程序,并使其它功能单元处于一个确定的初始状态。本复位电路采用的是按键复位,它是通过复位端经电阻与VCC电源接通而实现的,它兼具上电复位功能。因本系统的晶振的频率为12MHz,所以,复位信号持续时间应当超过2S才能完成复位操作。4.4.4 键盘工作原理 如图所示为键盘原理图,本系统采用的是独立式键盘结构,每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。它的软件是采用查询式结构,首先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。4.4.5 显示器原理系统采

12、用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示通常都是采用动态扫描的方法进行显示,即循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。图中的7447作为驱动器,而7个100欧姆电阻则起限流作用。五 软件设计5.1 程序介绍(1)主程序(START) 在主程序中只完成系统的初始化,同时进行时、分、秒按键的扫描。如果有按键按下,则做相应时 分 秒计数器的加1处理。主程序流程图如下:(2)定时器中断服务程序(TIMER0) 定时器T0用于时间计时。定时计数个数为

13、50000,由于采用12MHz晶体振荡器,所以定时溢出中断周期为5000 us = 5ms。为了保证计时的准确性,进入中断服务程序时应立即重设计数初值。在中断程序中还要判断是否计时1s,若是,还应通过调用其他子程序作时、分、秒值的相应处理。中断程序流程图如下:(3)显示子程序(DISP)该子程序通过在中断服务程序中被调用而执行。每一次中断程序调用一次,其作用是根据扫描指针循环驱动各个数码管。(4)时钟调整子程序(CLK_CHANGE)当中断程序中判断出计时1s时,该程序即被调用执行。其作用为将秒的计数值加1,同时判断是否应对时、分、秒作相应修改。(5)数据转换子程序(CONVERT)当中断程序

14、中判断出计时1s 时,该程序即被调用执行。由于时 分 秒的计数值分别保存在一个字节里,而每一个计数值实际上是一个2位的十进制数。在驱动显示时必须将这个2位数拆分开分别去扫描个位和十位,该子程序就是完成这个任务的,并把拆分结果存储在从20H开始的显示寄存器单元里。(6) 延时子程序(DELAY) 用于键盘的延时去抖。5.2 程序清单 ORG 0000H ;复位起始地址 AJMP START ;跳转至主程序 ORG 000BH ;TIMER0中断矢量地址 AJMP TIMER0 ;跳转至T0中断子程序;TIMER0;主程序*START: MOV SP, #6FH ;设置堆栈从6FH开始 MOV 30H, #00H ;显示位码寄存器初值为0 MOV 2AH, #00H ;“时”寄存器初值为00H MOV 2BH, #00H ;“分”寄存器初值为00H MOV 2CH, #00H ;“秒“寄存器 初值为00H MOV TMOD, #01H

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 小学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号