




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
多功能电子时钟毕业论文目录摘 要IABSTRACTII1 绪 论11.1 单片机介绍11.2 单片机特点和应用21.3 研究电子时钟的背景及意义41.4 国内外研究现状42 系统总体方案设计52.1 系统整体方案选择52.2 系统总体设计框图62.3 单片机芯片的选择62.3.1 AT89S51引脚功能72.3.2 AT89S51定时/计数器92.3.3 AT89S51中断控制系统103 电子时钟系统的硬件设计113.1 复位电路113.2 时钟电路113.3 按键输入电路123.4 LED数码管显示电路133.5 蜂鸣器电路153.6硬件系统电路图164 电子时钟系统的软件设计174.1 主程序的设计174.2 显示子程序的设计174.3 定时器T0中断服务程序184.4 定时器T1中断服务程序204.5 键盘扫描子程序流程图214.6 时钟设置子程序215 结束语24参考文献25致 谢26附录一 硬件系统电路原理图27附录二 Proteus系统仿真原理图27附录三 程序清单301 绪 论1.1 单片机介绍单片机是单片微型计算机的简称,是典型的嵌入式微控制器(Microcontroller Unit),其英文字母的缩写为MCU,单片机又称作单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。其基本结构是将微型计算机的基本功能部件:中央处理器、存储器、输入输出接口、定时器/计数器、中断系统等全部集中在一个半导体芯片上。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高, 开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场1。单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段2: SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel公司功不可没。 MCU即微控制器(Micro Controller Unit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子技术厂家。从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。在发展MCU方面,最著名的厂家当数Philips公司。 Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩。 SoC即嵌入式系统(System on Chip)阶段,单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。二十世纪科学技术的发展跨越了三个“电”的时代,即电气时代、电子时代和电脑时代。这种电脑,通常指的是个人计算机,简称 PC 机。它主要由主机、键盘、显示器等组成。但还有种计算机就是“微控制器”,顾名思义,它进行简单运算和控制只用了最小系统的一片集成电路。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。 汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作!单片机的数量不仅远超过PC机和其他计算机的总和,甚至比人类的数量还要多。1.2 单片机特点和应用随着微控制技术的不断完善和发展,以及自动化程度的日益提高,单片机的应用正在导致系统的控制技术发生巨大的变化,单片机的应用是对传统控制技术的一场革命。单片机有以下几个特点:具有较高的性能价格比 单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。其应用系统具有印制板小、接插件少、安装调试简单方便等特点,使单片机应用系统的性能价格比大大高于一般微机系统3。体积小,可靠性强由单片机组成的应用系统结构简单,其体积特别小,极易对系统进行电磁屏蔽等抗干扰措施。另一方面,单片机对信息传输及对存储器和I/O接口的访问,一般情况下是在单片机内部进行的,因此,不易受外界的干扰。所以单片机应用系统的可靠性一般比微机系统高得多3。控制功能强 在实时控制方面,尤其是在位操作方面单片机有着不俗的表现。CPU可以直接对I/O口进行输入、输出操作及逻辑运算,并且具有很强的位操作能力,能有针对性地解决由简单到复杂的各类控制任务。在单片机内存储器ROM和RAM是严格区分的。ROM称为程序存储器,只存放程序、固定常数及数据表格。RAM则为数据存储器,用作工作区及存放用户数据。这种方案使单片机更适用于实时控制系统3。使用方面、容易产品化由于单片机具有体积小、功能强、性能价格比较高、系统扩展方便、硬件设计简单等优点。单片机的硬件功能具有广泛的通用性。同一种单片机可以用在不同的控制系统中,只是其中所配置的软件不同而已。换言之,给单片机固化上不同的软件,便可形成用途不同的专用智能芯片,可称之为“软件就是仪器”3。 下面大致介绍一下单片机的主要应用领域和特点。1)家用电器领域 用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用3。2)办公自动化领域 单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等3。3)商业应用领域 商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高3。4)工业自动化 在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统3。5)智能仪表与集成智能传感器 目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口3。6)现代交通与航空航天领域 通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要3。1.3 研究电子时钟的背景及意义 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。单片机的出现是传统控制技术的一次革命,从前许多功能的实现必须依赖于模拟电路或数字电路,而现在已经可以用单片机通过软件方法来实现了。这种由软件来代替硬件的控制技术也称作微控制技术。目前电子时钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作和娱乐带来极大的不便。由于数字集成电路技术的发展和采用了先进的石英技术,使电子钟具有走时准确、性能稳定、携带方便等优点,它还用于计时,自动报时和自动控制等各个领域。因此,研究数字钟及扩大其应用,有着非常现实的意义。1.4 国内外研究现状从时钟的发展历史来看,它经历了机械表到电子表,再到晶体管,再到现在的数字电子钟等几个阶段。中国的钟表历史应该由古代史、近代史、现代史三部分组成。一九四九年以前,我国仅在山东烟台有一些小型钟的制造业,根本就没有手表制造业。中华人民共和国成立初,进入中国钟表工业的发展阶段;五十年代至六十年代是国家投资,计划经济模式,完全生产机械手表,机械钟;六十年代末,七十年代初电子钟表已悄悄在起步;七十年代末,八十年代初电子钟表与国际市场同步,异军突一起,冲击着传统的机械钟表领域。九十年代电子钟表(即石英钟表)一统钟表市场,机械钟表失去了传统的垄断市场的局面。现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于石英技术的采用,电子钟,石英表,石英钟也因此变得走时精度高,稳定性好,使用方便,且不需要经常调校。数字式电子钟用集成电路计时,用LED显示器显示时间,用软件编码代替机械式传动,这样减小了计时误差,使用起来更加方便快捷。52 系统总体方案设计本设计的要求是利用单片机设计一个电子时钟系统,要求有时钟、顺计时、倒计时三种功能。本次设计电子钟系统功能简单,用单片机的最小系统就能得以实现。而单片机的最小系统设计中实际上最重要的就是对键盘/显示器接口电路的设计,由于系统功能不同所以要求就不同,接口设计也就不同。对一个键盘/显示器接口设计应从整个系统出发,综合考虑软、硬件特点。下面是本人在设计前对各种设计方案的考虑:2.1 系统整体方案选择根据电子时钟里的核心部件秒信号的产生原理,通常有以下两种实现方案。方案一:采用专用的时钟芯片。在电子时钟设计中常用的实时时钟芯片有DS12887、DS1216、DS1643、DS1302等。每种芯片的主要时钟功能基本相同只是在引脚数量、备用电池的安装方式、计时精度和扩展功能等方面略有不同。本方案采用Dallas公司的专用时钟芯片DS12887A,该芯片内部采用石英晶体振荡器,具有完备的时钟闹钟功能,因此,可直接对其用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。然而尽管它走时准确,但是功能单一,不易拓展其他功能。方案二:利用单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时及秒表计时。原理为:在单片机内部存储器设6个字节分别存放时钟的时、分、秒信息的高位和低位,利用定时器与软件结合每隔50ms溢出中断一次,则循环中断20次的延时时间即是1s,存储器内相应的位值加1,若存放秒的两位达到60,则将其清零,并将相应的分低位加1;若存放分值的两位达到60,则清零分位,并将时低位值加1;若存放时的两位达到24,则将时位清零。该方案硬件电路简单。但每次执行程序时,定时器都要重新赋初值,当单片机不上电,程序不执行时,时钟将不工作。比较这两种方案,由于单片机集成度高、可靠性强、体积小、功耗低、使用方便、价格低廉且能够方便的实现系统的多功能性等一系列优点,故采用方案二单片机作为本课题设计的硬件基础。2.2 系统总体设计框图 本设计采用模块化的思想,将系统按要求分解成为核心控制模块和辅助模块,通过模块化的思想即可得出整个设计的过程是先实现最基本的时钟功能,然后实现时间的显示功能以及相关的调整功能。根据设计要求与设计思路,确定该系统的设计方案,图2.1为该系统设计方案的总体设计框图。按键输入电路时钟电路复位电路蜂鸣器电路单片机LED段码LED位码6位 L E D图2.1 系统总体设计框图2.3 单片机芯片的选择 根据初步设计方案的分析,设计这样一个应用系统,可以选择有EPROM的单片机,程序直接存储在片内,不用在外部扩展程序存储器,电路可以简化。INTEL公司的8051和8751系列都可以选用。8051片内有4KB ROM,但是编写的程序无法烧写到其ROM中, 8751 与8051 基本一样,但8751 片内有4KB的EPROM,用户可以将自己编写的程序写入单片机的EPROM中进行现场实验与应用,EPROM的改写同样需要用紫外线灯照射一定时间擦除后再烧写。在众多的51系列单片机中,要数ATMEL公司的AT89C51、AT89S51 更实用,它们采用Flash ROM,这种工艺的存储器可以用电的方式瞬间擦除、改写。内部具有4KB的ROM存储空间,128字节的内部RAM,能在3V超低压下工作,而且与MCS-51系列单片机性能完全相兼容。 AT89S51相对于AT89C51新增加了很多功能,性能有了较大的提升,相对来说有以下特点: 价格基本上不变,甚至比AT89C51更低。 AT89S51具有ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要芯片从工作环境上拔出,可以在线烧写。 AT89S51内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。 AT89S51具有双工UART串行通道。 AT89S51具有双数据指示器。 总之,无论是比其他品牌同类产品相比,还是与同品牌产品相比都显示了AT89S51优良的性能,更高的性价比。所以AT89S51芯片成为了本系统的首选。 图 2.2 AT89S51引脚图2.3.1 AT89S51引脚功能AT89S51单片机共有40个引脚,其中有2个主电源引脚Vcc和GND,2个时钟电路引脚为XTAL1和XTAL2,4个控制引脚分别为RST、ALE/PROG、/PSEN、EA/VPP,另外AT89S51单片机还有4个8位的并行口,分别称为P0口、P1口、P2口和P3口,共32个引脚 ,单片机就是通过这些口线对外部电路进行控制和检测。具体的引脚功能如下:Vcc: 电源电压GND:接地P0口:P0口是一组8位漏极开路型双向I/O口,即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时输出指令字节,校验时,要求外接上拉电阻5。 P1口:P1口是一个带有内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。Flash编程和程序校验期间,P1接收低8地址5。P2口:P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX DPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(例如执行MOVX Ri指令)时,P2口线上的内容(即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。Flash编程和程序校验期间,P2亦接收高位地址和其他控制信号5。P3口:P3口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能。P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号5。表2.1 P3口第二功能端口引脚第二功能信号名称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读选通RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。WDT溢出将使该引脚输出高电平,设置SFR AUXR的DISRT0位(地址8EH)可打开或关闭该功能。DIRT0位缺省为RESET输出高电平打开状态5。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此可对外输出时钟或用以定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于出入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,单片机执行外部程序时,应设置ALE无效5。/PSEN:程序储存允许(/PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)使,每个机器周期两次/PSEN有效,即输出两个脉冲。当访问外部数据存储器。没有两次有效的/PSEN信号5。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程电压VPP5。XTAL1:振荡器反相放大器及内部时钟发生器的输入端5。XTAL2:振荡器反相放大器的输出端5。2.3.2 AT89S51定时/计数器AT89S51单片机有2个16位的可编程定时器/计数器,称为定时器/计数器0和定时器/计数器1,分别由两个8位的特殊功能寄存器TH0、 TL0和TH1、TL1组成。它们均可以作定时器和事件计数器,为单片机系统提供计数和定时功能。定时/计数器控制寄存器TCON 表2.2 TCON 的各位定义TCOND7D6D5D4D3D2D1D0位地址8FH8EH8DH8CH8BH8AH89H88H位定义TF1TR1TF0TR0IE1IT1IE0IT1TR0定时/计数器T0运行控制位。 TR0=1,启动T0运行(与TMOD中的GATE位有关),TR0=0,T0停止运行。TR1定时/计数器T1运行控制位。功能同TR0。定时/计数器工作方式控制寄存器TMOD表2.3 TMOD的各位定义TMODD7D6D5D4D3D2D1D0位定义GATEC/TM1M0GATEC/TM1M0 1)GATE门控位。GATE一般情况下设置为 0,此时定时/计数器的运行仅受TR0/TR1控制。 2)C/T定时/计数选择位。C/T=0,为定时方式,对内部的机器周期计数。C/T=1,为计数方式,对引脚上的脉冲信号计数,负跳变有效。 3)M1M0工作方式选择位。 M1M0=00B,方式013位的定时/计数器。 M1M0=01B,方式116位的定时/计数器。 M1M0=10B,方式28位的定时/计数器,初值自动重装。 M1M0=11B,方式3两个8位的定时/计数器,仅适用于T0。当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU当前操作。CPU也可以重新设置定时器工作方式,以改变定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件6。 2.3.3 AT89S51中断控制系统中断是指在CPU正在执行某一段程序的过程中,如果外界或内部发生了紧急事件要求CPU暂停正在运行的程序转而去处理这个紧急事件,待处理完后再回到原来被停止执行程序的间断点,继续执行原来被打断了的程序的过程。产生中断的请求源叫中断源3。AT89S51共有5个中断源:INT0:外部中断0请求,低电平有效。通过P3.2引脚输入。INT1:外部中断1请求,低电平有效。通过P3.3引脚输入。T0:定时器/计数器0溢出中断请求。T1:定时器/计数器1溢出中断请求。TXD/RXD:串行口中断请求。当串行口完成一帧数据的发送或接收时,便请求中断。每一个中断源都对应一个中断请求标志位,它们设置在特殊功能寄存器TCON和SCON中。当这些中断源请求中断时,相应的标志分别有TCON和SCON中的相应位来锁存。AT89S51中断系统有以下4个特殊功能寄存器:定时器控制寄存器TCON(用6位);串行口控制寄存器SCON(用2位);中断允许寄存器IE;中断优先级寄存器IP。其中,TCON和SCON只有一部分用于中断控制。通过对以上各特殊功能寄存器的各位进行置位或复位等操作,可实现各种中断控制功能。AT89S51的CPU在每个机器周期的S5P2期间顺序采样每个中断源,CPU在下一个机器周期S6期间按优先级顺序查询中断标志。如查询到某个中断标志为1,则将在接下来的机器周期S1期间按优先级进行中断处理。中断系统通过硬件自动将相应的中断矢量地址装入PC,以便进入相应的中断服务程序。11重庆科技学院本科生毕业设计 3 电子时钟的硬件电路设计 3 电子时钟系统的硬件设计 硬件电路由7部分组成,即按键输入电路、单片机、时钟电路、复位电路、LED显示器电路、和蜂鸣器电路。3.1 复位电路 复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序,并使其它功能单元处于一个确定的初始状态。单片机复位的条件是:必须使 RSW或RST引脚加上持续两个机器周期(即24个振荡周期)的高电平。例如,若时钟频率为 12MHz,每机器周期为 1s,则只需 2s以上时间的高点平,在 RST引脚出现高电平后的第二个机器周期执行复位。 单片机常见的复位方式可分为上电复位和按键复位两种。本设计采用上电按键复位电路:首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,单片机芯片正常工作。 图3.1 复位电路图3.2 时钟电路 时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是外部时钟方式。MCS-51 单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚 XTAL1,输出端为引脚 XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。 AT89S51片内有一由高增益反相放大器构成的振荡器。反相放大器的输入端为XTALl,输出端为XTAL2,两端踌接石英晶体及两个电容形成稳定的自激振荡器。电容器C1和C2对振荡频率有微调作用,通常的取值范围 30PF 左右。振荡频率范围是 1212MHz。 图3.2 时钟电路图3.3 按键输入电路 电子时钟应用系统工作时应具备两项基本功能,一是随时对当前时间进行调整,二是随时对倒计时时间进行调整。要实现这两项功能,可以接入键盘输入电路。在单片机组成的测控系统及智能化仪器中,用的最多的是非编码键盘。键盘可分为独立式键盘和矩阵式键盘两类。本系统采用的是独立式键盘结构,每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。它软件是采用查询式结构,首先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。 在本设计中,为了方便实现每个功能,共采用6个按键,将键盘直接与单片机的P1口连接。6个按键的功能分别如下: SJS按键功能:顺计时作用,当按下时开始进入顺计时。 +1按键功能:被按下时被调位加一。 SET按键功能:被按下时进入当前时间调整,使用SET键与+1键、RET键配合来完成这一功能。 RET按键功能:被按下时进入下一调整位,即对+1键调整位进行确认,该键按下时,说明被调整位已经确定,转去调整下一位。 DJS按键功能:当被按下时,系统进入倒计时功能,然后再按下SET键开始进行倒计时时间设定,设定通过与+1键、RET键配合来完成。 ESC按键功能:退出键,按下时退出当前功能操作。 图3.3 按键电路图3.4 LED数码管显示电路 发光二极管LED(Light-Emitting Diode)是能将电信号转换成光信号的结型电致发光半导体器件。其导电性质与普通二极管类似。LED 数码显示器是 1 种由 LED 发光二极管组合显示字符的显示器件。它使用了8个LED发光二极管,其中7个用于显示字符,1个用于显示小数点,当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。具体连接电路及外形结构如图3.4所示。LED数码显示器有两种连接方法: 共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。当阴极端输入低电平时,段发光二极管就导通点亮,而输入高电平时则不点亮。 共阴极接法。把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。当阳极端输入高电平时,段发光二极管就导通点亮,而输入低电平时则不点亮。 图3.4 LED数码管内部结构及外形图 本设计显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此需要6个共阳极数码管。采用动态显示方式显示时间,时的十位和个位分别显示在第一个和第二个数码管,分的十位和个位分别显示在第三个和第四个数码管,秒的十位和个位分别显示在第五个和第六个数码管。由于LED数码管的位电流较大,故采用6个74LS04反相器来驱动。位码由P3口输出,段码由P0口输出。LED显示数码管通常由硬件7段译码集成电路,完成从数字到显示码的译码驱动。本系统采用软件译码,以减小体积,降低成本和功耗,软件译码的另一优势还在于比硬件译码有更大的灵活性。所谓软件译码,即由单片机软件完成从数字到显示码的轮换。 从LED数码管结构原理图可知,为了显示字符,要为LED显示数码管提供显示段码,组成一个“8”字形字符的7段,再加上1个小数点位,共计8段,因此提供给LED数码管的显示段码为1个字节。各段码位与显示段的对应关系如表3.1表3.1 七段LED数码管的段码显示数码共阴极段共阳极段显示数码共阴极段共阳极段03FHC0H96FH90H106HF9HA77H88H25BHA4Hb7CH83H34FHB0Hc39HC6H466H99Hd5EHA1H560H92HE79H86H670H82HF71H8EH707HF8H87FH80H 图3.5 LED显示电路图3.5 蜂鸣器电路 压电式蜂鸣器(HA)工作时需10mA的驱动电流,电路设计如图3.6所示,选择P3.7作为驱动三极管的工作端口,当P3.7=0时,VT1导通产生蜂鸣,P3.7=1时,VT1截止蜂鸣器不发声。R3是限流电阻。蜂鸣器有长声和短声两种,这里选择短声蜂鸣器。 图3.6蜂鸣器电路3.6硬件系统电路图本设计采用AST89S51单片机芯片,系统采用高精度的12MHz的晶振,以获得较高的刷新频率及较准确的时钟频率使显示稳定和计时准确。采用RC上电加按键复位电路,系统采用的是独立式键盘结构,共有6个按键以实现要求功能。显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此采用6个共阳极数码管。采用动态显示方式显示时间。综上所述,设计出基于AT89S51单片机的LED电子时钟电路图如附录一所示。16重庆科技学院本科生毕业设计 4 电子时钟的软件设计 4 电子时钟系统的软件设计 按照分块设计的方法可以把程序分为主程序与子程序,其中子程序包括:时钟显示程序、定时器T0中断服务程序、定时器T1中断服务程序、键盘扫描程序、时钟设置程序。4.1 主程序的设计 主程序主要用于系统初始化,设置计时缓冲区的位置及初值,设置定时器的工作方式和计数初值等参数。本设计的主程序流程如图4.1所示。 定时器初始化,开中断开 始调用时钟显示程序调用键盘扫描子程序定时器判定子程序 图4.1 主程序流程图4.2 显示子程序的设计此部分完成时分秒6位LED的动态显示。因为LED显示为6位,而时分秒为3个字节单元,为此,将3个字节计时缓冲区中的时分秒压缩BCD码拆分成为6个字节BCD码,再送入显示缓冲区中,分别对应显示的小时高位、小时低位、分高位、分低位、秒高位和秒低位。显示子程序流程图如图4.2所示: R0指向显示数据首地址 位码控制数存入R5 取段码表地址显示数据送到P0口 扫描控制位码数送到P2 延迟1ms子程序六位循环显示 结束?结束? 位控制循环左移 子程序返回NY 图4.2 显示子程序流程图4.3 定时器T0中断服务程序本系统时钟设计采用12MHz的晶振。选择定时器0工作在模式1,每隔50ms溢出中断一次,则循环中断20次的延时时间即是1s。上述过程重复60次为1分,分计时60次为1小时,小时计时24次则时间重新回到00:00:00。设T0定时50ms的初值为X,则: 可求得X = 15536 = 3CB0H,因此,TL0 = 0B0H, TH0 = 3CH。定时器T0中断程序流程图如图4.3所示:开始 秒低位加1重新赋初值全部清0时高位=4?时高位加1,时低位清0时低位=4?时低位加1,分高位清0分高位=9?分高位加1,分低位清0分低位=10?分低位加1,秒高位清0秒高位=6?秒低位=10?秒高位加1,秒低位清0NYYNNNNNYYYYY中断返回R2=0?图4.3 定时器T0中断程序流程图4.4 定时器T1中断服务程序定时器T1中断与T0工作原理相似,同样是选择定时器1工作在模式1,每隔50ms溢出中断一次,则循环中断20次的延时时间即是1s。定时器T1主要用于倒计时。R1=0? T1中断子程序开始 重新赋初值 R1-11-R1重置 秒低位减一秒低位=FFH?Y秒低位=09?秒高位减一退出YYN秒低位赋值09HNN 图4.4 定时器T1中断程序流程图4.5 键盘扫描子程序流程图 该部分块反映系统开机后的主要工作,对系统进行哪一项工作进行判定。当主程序中有某个按键按下的信号后就触发该按键对应的子程序。键盘扫描程序流程图如图4.5所示。YYYNN 时钟设置子程序 SET键按下?开始 SJS键按下? 顺计时子程序子程序返回 倒计时子程序 DJS键按下? 图4.5 键盘扫描程序流程图4.6 时钟设置子程序 该部分由SET按键按下来设置当前时间。设置时间后,时钟要从这个时间开始计时,而时分秒单元各占一个字节,作为当前计时起始时间。时间设置子程序的流程图如图4.6所示。开 始该 位 清 零NY时 高 位Y =3?+1键是否按下时高位加1NNRET键是否按下该 位 清 零Y时 低 位NY=10?Y +1键是否按下N时低位加1N RET键是否按下该 位 清 零Y= 6?Y分高 位N Y+1键是否按下 RET键是否按下+1RET键是否按下+1键是否按下分高位加1NRET键是否按下NY该 位 清 零分 低 位=10?YNY+1键是否按下分低位加1NNRET键是否按下该 位 清 零Y秒 高 位NY=6?Y+1键是否按下秒高位加1NNRET键是否按下该 位 清 零Y=10?Y秒 低 位N Y+1键是否按下秒低位加1NRET键是否按下NY 子程序返回 图4.6 时钟设置程序流程图23重庆科技学院本科生毕业设计 5 结术语5 结束语 本设计以单片机芯片AT89S51作为核心控制器,由6位的共阴极7段LED显示器、6个按键开关、蜂鸣器和简单外围电路构成硬件系统。软硬件的仿真设计与调试在PROTEUS软件平台上展开。系统硬件主要由时钟电路、复位电路、LED数码管显示电路以及键盘控制电路组成。 从最开始的开题报告,到最后的论文撰写,从理论到实践,在整整半个学期里,我学到了很多的东西。不仅巩固了以前所学过的知识,而且还学到了很多在书本上所没有学到过的知识。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过查阅资料以及请教老师,最后都得到了解决。以下是我的一些主要工作和结论: 通过图书馆和上网查阅相关资料,了解了AT89S51单片机的功能及工作特性,掌握其接口扩展方法。学习了数码管、键盘的结构等相关知识。 在设计硬件部分时,通过各方案的比较选择和硬件电路图的确定,进一步巩固加深了我对单片机知识的理解。 在进行软件调试时,让我明白了完成一个好的设计多么的不容易,不仅要对汇编语言精通,还需要对整个设计流程了然于心。并且在调试时一定要耐心,因为设计最终的成功是需要很多次的调试的。 虽然此次设计是完成了,但还是有一些不足的地方: 系统设计不够优化,如按键设置太多,这样会增加产品的成本问题,这是因为我自己本身的软件编写能力不强,所以就多设置了几个按键来实现功能。 系统调整时间不是很方便,因为要连续按下6次确认键,才能将时间调整好,这是我需要改进的地方。 在用设计的电子时钟与电脑上的时钟进行校准,过一段时间会发现之前校准好的时间变慢了,通过查阅资料我才明白可能是晶振频率的精确度影响时间的精度。因此,精度还有待提高。 通过这次毕业设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。更重要的是,我在这一设计过程中,学会了坚持不懈,不轻言放弃。24重庆科技学院本科生毕业设计 参考文献参考文献1 肖红兵.跟我学用单片机M.北京:北京航空航天大学出版社,20082 朱宇光单片机应用新技术教程M .北京:电子工业出版社,2007.83 赵全利,肖兴达单片机原理及应用教程M北京:机械工业出版社,20074 陈正军基于单片机的电子闹钟研究与设计J科技信息,2010 5 佚名AT89S51中文资料,电子驿站2013-5-28/gyb/dpjyljyy/Article/UploadFiles/200910/2009101522070909.pdf。6 胡汉才单片机原理及接口技术M北京:清华大学出版社,1996:23-307 高欢基于单片机和模数转换器的实用测试系统J计算机测量与控制,20118 王丽霞多功能智能终端展示系统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年统编版(2024)小学语文三年级上册第二单元知识点清单
- 防汛知识培训小结课件
- 防汛救灾知识培训总结课件
- 自然人独资股权转让协议
- 新能源汽车行业政策研究
- 有房子双方自愿离婚协议样本5篇
- 数字化营销策略在皮鞋品牌中的应用-洞察及研究
- 映前广告承包合同3篇
- 运动器材溯源平台-洞察及研究
- 部队出国安全培训课件
- 最高人民法院民法典婚姻家庭编司法解释
- 工业数据采集技术及应用 -配置能源采集仪表参数
- 《应急救援知识》课件
- 安全教育培训课件:机械设备维护和保养指南
- 【一例重症肺炎的个案护理案例报告6000字(论文)】
- 员工培训体系优化研究
- 冯友兰-人生的境界课件
- 传热学全套PPT完整教学课件
- 部编版六年级道德与法治上册第5课《国家机构有哪些》优秀课件
- 高中心理健康教育北师大版高二全册第6课《温故知新》省级名师优质课教案比赛获奖教案示范课教案公开课教案
- 瑞美检验医生工作站操作手册
评论
0/150
提交评论