安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc

上传人:doc321 文档编号:12777889 上传时间:2021-12-06 格式:DOC 页数:38 大小:1,002KB
返回 下载 相关 举报
安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc_第1页
第1页 / 共38页
安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc_第2页
第2页 / 共38页
安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc_第3页
第3页 / 共38页
安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc_第4页
第4页 / 共38页
安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc》由会员分享,可在线阅读,更多相关《安徽理工大学电气自动化专升本李斌《单片机电子时钟》.doc(38页珍藏版)》请在三一文库上搜索。

1、安徽理工大学电气自动化专升本李斌单片机电子时钟 作者: 日期:35 个人收集整理 勿做商业用途安徽理工大学毕业设计(论文)说明书系 部自动控制工程系专 业 电气自动化 姓 名 李斌 指导教师 年 月 日安徽理工大学毕业设计(论文)任务书题目:学生姓名 李斌 专 业 电气自动化 指导教师 一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等)二、参考文献1 李叶紫王喜斌。胡辉。孙东辉.编著MCS_51单片机应用教程清华大学出版社2008。6。2 陆剑单片机应用技术指导书 河南工业职业技术学院2005.12。3 汪道辉。单片机系统设计与实践。电子工业出版社 ( 50页 时、分、秒

2、计时器设计,59页 键盘及接口技术).4 第二版.51系列单片机设计实例。北京航空航天大学出版社(8189页 数码管时钟电路的设计).5 辛友顺、胡永生、薛小玲。单片机应用系统设计与实现。福建科学技术出版社(184-186页 LED显示接口,190-193页 键盘接口).6 黄庆华、张永格。单片机开发 与实例。电子工业出版社(127162页 数字式电子时钟的设计).7 闫玉德、俞红。MCS-51单片机原理与应用(C语言版).机械工业出版社(49104页 单片机的C程序设计)。8 求是科技。单片机典型模块设计实例导航。人民邮电出版社(85-90页 单片机数字时钟)。9 刘守义,王静霞。单片机应用

3、技术。西安电子科技大学出版社,2002.三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求)电子科技日新月异,人们对现代电子设备的智能化和微型化及其精度提出了更高的要求,而单片机因其具有稳定可靠、 体积小、 价格低廉等特点,成为设计智能化仪器仪表的首选微控制器,因此本次我们没有选用传统的专用的时钟芯片,而是采用了AT89S51芯片,此款单片机可以使用软件对其进行在线编程,其灵活性和可靠性都相对提高指导教师(签字)年 月 日审题小组组长(签字)年 月 日安徽理工大学毕业设计(论文)开题报告课题名称单片机电子时钟学院名称安徽理工大学专业名称电气自动

4、化学生姓名李斌指导教师(内容包括:课题的来源及意义,国内外发展状况,本课题的研究目标、研究内容、研究方法、研究手段和进度安排,实验方案的可行性分析和已具备的实验条件以及主要参考文献等。)选题是否合适: 是 否课题能否实现: 能 不能指导教师(签字)年 月 日选题是否合适: 是 否课题能否实现: 能 不能审题小组组长(签字)年 月 日摘 要单片机 即单片微型计算机。(SingleChip Microcomputer ),是 集 CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。他体积小,成本低,功能强,广泛应用于工业自动化上和智能产品.时钟,自从它被发明的那天起,就成为了人类的

5、好朋友,但随着时间的推移,科学技术的不断发展,时钟的应用越来越广范,人们对时间计量的精度要求也越来越高。怎样让时钟更好的为人民服务,怎样让我们的老朋友再次焕发青春呢?这就要求我们不断设计出新型的时钟,来不断满足人们的日常生活需要。然而市场上的时钟便宜的比较笨重,简单实用的又比较昂贵。那么,有没有一款既简单实用价格又便宜的时钟呢?我们课程设计小组设想:可不可以利用单片机功能集成化高,价格又便宜的特点设计一款结构既简单,价格又便宜的单片机电子时钟呢? 基于这种情况,我们课程设计小组成员多方查阅资料,反复论证设计出了这款既简单实用,又价格便宜的-单片机电子时钟.关键词:单片机 ; 时钟 ; 计时目录

6、(三号、黑体、居中、目录两字空两格、与正文空一行)第一章(空两格)(小三号、宋体)×1.1(四号宋体)×1。2×1.3×第四章(空两格)(小三号、宋体)×4。1×4。2×参考文献(小三号、宋体)×附录(小三号、宋体)×外文资料(小三号、宋体)×中文译文(小三号、宋体)×致谢(小三号、宋体)×不标页码绪 论1。1课题背景单片机自1976年由Intel公司推出MCS48开始,迄今已有二十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,

7、目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为"。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构.另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。本文讨论的单片机多功能定时器的核心是目前应用极为广泛的51系列单片机,配置了外围设备,构成了一个可编程的计时定时

8、系统,具有体积小,可靠性高,功能强等特点。不仅能满足所需要求而且还有很多功能可供开发,有着广泛的应用领域。20世纪80年代中期以后,Intel公司以专利转让的形式把8051内核技术转让给许多半导体芯片生产厂家,如ATMEL、PHILIPS、ANALOG、DEVICES、DALLAS等。这些厂家生产的芯片是MCS-51系列的兼容产品,准确地说是与MCS51指令系统兼容的单片机。这些兼容机与8051的系统结构(主要是指令系统)相同,采用CMOS工艺,因而,常用80C51系列来称呼所有具有8051指令系统的单片机,它们对8051单片机一般都作了一些扩充,更有特点.其功能和市场竞争力更强,不该把它们直

9、接称呼为MCS51系列单片机,因为MCS只是Intel公司专用的单片机系列型号。MCS-51系列及80C51单片机有多种品种.它们的引脚及指令系统相互兼容,主要在内部结构上有些区别.目前使用的MCS-51系列单片机及其兼容产品通常分成以下几类:基本型、增强型、低功耗型、专用型、超8位型、片内闪烁存储器型。1。2课题来源在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时等。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程

10、控制系统,完成复杂的控制功能。小则可以用于家电控制,甚至可以用于儿童电子玩具.它功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。根据这种实际情况,设计了一个单片机多功能定时系统,它可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制,同时又可以进行时钟校准和定点打铃。它可以执行不同的时间表(考试时间和日常作息时间)的打铃,可以任意设置时间.这种具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。第二章

11、 MCS51单片机的结构MCS51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器(SFR)的集中控制方式。2.1 控制器控制器是单片机的指挥控制部件,控制器的主要任务是识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动而协调地

12、工作。单片机执行指令是在控制器的控制下进行的。首先从程序存储器中读出指令,送指令寄存器保存,然后送至指令译码器进行译码,译码结果送定时控制逻辑电路,由定时控制逻辑产生各种定时信号和控制信号,再送到单片机的各个部件去进行相应的操作。这就是执行一条指令的全过程,执行程序就是不断重复这一过程.控制器主要包括程序计数器、程序地址寄存器、指令寄存器IR、指令译码器、条件转移逻辑电路及时序控制逻辑电路。2。2 存储器的结构MCS51单片机存储器采用的是哈佛结构,即程序存储器空间和数据存储器空间截然分开,程序存储器和数据存储器各有自己的寻址方式,寻址空间和控制系统.这种结构对于单片机面向控制的实际应用极为方

13、便,有利.在8051/8751弹片击中,不仅在片内集成了一定容量的程序存储器和数据存储器及众多的特殊功能寄存器,而且还具有极强的外存储器的扩展能力,寻址能力分别可达64KB,寻址和操作简单方便.MCS-51的存储器空间可划分为如下几类:1. 程序存储器单片机系统之所以能够按照一定的次序进行工作,主要是程序存储器中存放了经调试正确的应用程序和表格之类的固定常数.程序实际上是一串二进制码,程序存储器可以分为片内和片外两部分。8031由于无内部存储器,所以只能外扩程序存储器来存放程序。MCS51单片机复位后,程序存储器PC的内容为0000H,故系统必须从0000H单元开始取指令,执行程序.程序存储器

14、中的0000H地址是系统程序的启动地址.一般在该单元存放一条绝对跳转指令,跳向用户设计的主程序的起始地址。2. 内部数据存储器MCS51单片机内部有128个字节的随机存取存储器RAM,作为用户的数据寄存器,它能满足大多数控制型应用场合的需要,用作处理问题的数据缓冲器。MCS-51单片机的片内存储器的字节地址为00H-7FH。MCS-51单片机对其内部RAM的存储器有很丰富的操作指令,从而使得用户在设计程序时非常方便.地址为00H1FH的32个单元是4组通用工作寄存器区,每个区含8个8位寄存器,编号为R7R0。用户可以通过指令改变PSW中的RS1,RS0这二位来切换当前的工作寄存器区,这种功能给

15、软件设计带来极大的方便,特别是在中断嵌套时,为实现工作寄存器现场内容保护提供了极大的方便。3. 特殊功能寄存器(SFR-Special Function Register)特殊功能寄存器反映了MCS-51单片机的状态,实际上是MCS-51单片机各功能部件的状态及控制寄存器。SFR综合的,实际的反应了整个单片机基本系统内部的工作状态及工作方式.SFR实质上是一些具有特殊功能的片内RAM单元,字节地址范围为80H-FFH。特殊功能寄存器的总数为21个,离散的分布在该区域中,其中有些SFR还可以进行位寻址.128个字节的SFR块中仅有21个字节是由定义的。对于尚未定义的字节地址单元,用户不能作寄存器

16、使用,若访问没有定义的单元,则将得到一个不确定的随机数。2。3 并行I/O口MCS-51单片机共有4个双向的8位并行I/O端口(Port),分别记作P0P3,共有32根口线,各口的每一位均由锁存器、输出驱动器和输入缓冲器所组成。实际上P0-P3已被归入特殊功能寄存器之列.这四个口除了按字节寻址以外,还可以按位寻址。由于它们在结构上有一些差异,故各口的性质和功能有一些差异。P0口是双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。P1口是8位准双向I/O口,可驱动4个LS 型负载。P2口是8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型

17、TTL负载。P3口是8位准双向I/O口,是双功能复用口,可驱动4个LS型TTL负载.P1口、P2口、P3口各I/O口线片内均有固定的上拉电阻,当这3个准双向I/O口做输入口使用时,要向该口先写“1”,另外准双向I/O口无高阻的“浮空"状态,故称为双向三态I/O 口。2。4 时钟电路与时序时钟电路用于产生MCS-51单片机工作时所必需的时钟信号。MCS51单片机本身就是一个复杂的同步时序电路,为保证同步工作方式的实现,MCS-51单片机应在唯一的时钟信号控制下,严格地按时序执行进行工作,而时序所研究的是指令执行中各个信号的关系。在执行指令时,CPU首先要到程序存储器中取出需要执行的指令

18、操作码,然后译码,并由时序电路产生一系列控制信号去完成指令所规定的操作。CPU发出的时序信号有两类,一类用于片内对各个功能部件的控制,这列信号很多。另一类用于片外存储器或I/O端口的控制,这部分时序对于分析、设计硬件接口电路至关重要。这也是单片机应用系统设计者普遍关心的问题。2。5 单片机的应用领域单片机应用领域可以归纳为以下几个方面。1智能仪表用单片机系统取代老式的测量、控制仪表,实现从模拟仪表向数字化、智能化仪表的转化,如各种温度仪表、压力仪表、流量仪表、电能计量仪表等. 2。 测控系统 用单片机取代原有的复杂的模拟数字电路,完成各种工业控制、数据采集系统等工作。 3电能变换 应用单片机设

19、计变频调速控制电路。 4通信 用单片机开发通信模块、通信器材等。 5机电产品 应用单片机检测、控制传统的机械产品,使传统的机械产品结构简化,控制智能化,提高了机电产品的可靠性,增强了产品的功能. 6智能接口在数据传输中,用单片机实现外部设备与微机通信。第三章 系统设计要求3.1基本功能(1)能够显示时分秒(2)能够调整时分秒3.2 扩展功能(1)能够任意设置定时时间(2)定时时间到闹铃能够报警(3)实现了秒表功能第四章 硬件总体设计方案用一扬声器来本次设计时钟电路,使用了AT89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的

20、时、分、秒,进行定时提醒,同时使用C语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、显示屏即可满足设计要求。4。1系统功能实现总体设计思路如图4-10 所示为AT89S51芯片的引脚图此设计原理框图如图4-11所示,此电路包括以下四个部分:单片机,键盘,闹铃电路及显示电路.闹铃电路AT89C51独立键盘数码管显示图4-11 设计原理框图经多方论证硬件我们小组采用AT89C51单片机和7SED八位共阳极数码管等来实现单片机电子时钟的功能.详细元器件列表如表4.12所示:表4。12 详细元器件列表AT89c511片7SED八位共阳极数码管1片NPN三极管1个1

21、04p电容6个30p电容2个10K电阻6个560欧姆电阻8个200欧姆电阻1个100欧姆电阻6个4.2各部分功能实现(1) 单片机发送的信号通过程序控制最终在数码管上显示出来。(2) 单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。(3) 为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正数码管上显示的时间。单片机通过控制闹铃电路来完成 定时闹钟的功能4.3系统工作原理设计的电路主要由四模块构成:单片机控制电路,显示电路、闹铃电路以及校正电路。详细电路功能图如图4-30: 详细电路功能图如图4-30本设计采用C语言程序设计,使单片机控制数码管显示时、分、秒,当秒计数计满60时

22、就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。设计采用的是时、分、秒显示,单片机对数据进行处理同时在数码管上显示。4.4时钟各功能分析及图解(1) 时钟运行图仿真开始运行时,或按下key4键时,时钟从12:00:00开始运行,其中key2键对分进行调整,key3对小时进行调整,key6可以让时钟暂停。时钟运行图如图 441 所示:(2)秒表计时图当按下key1键进入秒表计时状态,key6是秒表暂停键,可按key4键跳出秒表计时状态.秒表计时图如图 4-42所示: 图

23、441 时钟运行图图442 秒表计时图(3)闹铃设置图及运行图当按下key5,开始定时,分别按key2调分,key3调时设置闹铃时间,然后按下key4键恢复时钟运行状态(图443)当闹铃设置时间到时,蜂鸣器将发出10秒中蜂鸣声(图4-44)。 图443 闹铃时间设置图该数字钟是用一片AT89C51单片机通过编程去驱动8个数码管实现的.通过6个开关控制,从上到下6个开关KEY1-KEY6的功能分别为:KEY1,切换至秒表;KEY2,调节时间,每调一次时加1;KEY3, 调节时间,每调一次分加1;KEY4,从其它状态切换至时钟状态;KEY5,切换至闹钟设置状态,也可以对秒表清零;KEY6,秒表暂停

24、。控制键分别与P1.0P1。5口连接其中:A通过P2口和P3口去控制数码管的显示如图所示P2口接数码管的a-g端,是控制输出编码,P3口接数码管的18端,是控制动态扫描输出B从P0。0输出一个信号使二极管发光,二极管在设置的闹钟时间到了时候发光,若有乐曲可以去驱动扬声器实现。 图4-44 闹铃运行图 4.5电路功能使用说明(1) 各个控制键的功能:可对时间进行校准调节(只能加);按下设置键数字时钟进入闹钟设置状态,设置闹钟的时间;时加、分加键是在校准时间时或设置闹钟时间对小时数或分钟数调节而设置的;按下秒切换键就可以进入秒表模式,同时秒表也开始计时,按下秒表暂停、复位键就暂停、归零,如果要重新

25、对秒计时则可以按秒表开始、复位;清零键可以对闹钟清零。(2) AT89C51单片机,通过编写程序对数码显示进行控制。(3) 八个7段数码管显示时钟和秒表信号第五章 软件总体设计方案5。1 主程序流程图软件程序从开始执行,先通过初始化各个寄存器,经过扫描按键来决定是否设定参数来执行相应功能的程序,进而在数码管上显示。如图5-10: 开始定时器及中断定时器初始化执行时钟秒表闹铃设定程序是否设定参数执行显示程序NY图31 主程序流程图分数值time.minute加1time.second归零Tcount加1返回主程序实数值time1.boun加1time1.mintet归零Time1.bour>

26、;23时数值time1.hour归零Tount1=100?秒数值time1.second加1second归零执行闹钟程序p0.0=1判断时间与闹钟时间是否一致闹钟程序是否行完全Time1.second=60?Time.minute=60?恢复初值保护5.2总中断程序流程 图520 中断流程图时间的显示通过此中断程序来控制,并且通过与设定的时间进行比较来判断是否让闹铃工作。程序中包含时间的设定,如设定tcount来使秒等工作,进而来控制分和时。如上图图5-20。A. 秒表中断程序流程秒表功能通过另一个程序来实现。通过保护主程序的数据来进行秒表功能.程序中需要设置秒表的具体显示方法。如图5-3:恢

27、复初值保护10ms计数器加1恢复初值保护秒计数器加1,10ms计数器归零,即sec+,ms=0Sec>60?Ms>100?输出字码,中断结束,返回上级主程序分计数器加1,秒计数器归零,即minit+,sec=0 N N 图5-3秒表中断程序流程图B.按键程序流程图54为时钟和闹钟的调节,程序中通过扫描来判断按键是否按下进行时间和闹钟的调节。程序初始化时十位归零alarms【7】=0分时位归零alarms4=0分十位归零输出时钟时十位加一输出闹钟时个位加一,延时输出时钟十位加一输出时钟十个位加一输出时钟分个位加一,延时输出闹钟时分位加一输出闹钟时十位加一输出闹钟分个位加一,延时时十位

28、归零判断标志位是否为零Alarms4>2Alarms7>2Alarms【3】>0Dat16>9Dat17Alarms6>9Dat13>9Dat14>2判断标志是否为零判断时i加键是否按下判断分加键是否按下图54按键程序流程图图55为进入中断和清零图,程序中通过扫描来判断按键是否按下进行执行相应的中断来事实现相应的功能。判断分加键tminute是否按下,P1.1=0判断秒表miaobiao1是否按下按下,P1.0=0,tgsdhPP1.0=0判断清零键miaobiao2是否按下,P1.3=0进入秒表中断,执行秒表中断程序返回上级主程序清零所有的计数器,各

29、个显示的字码。图55 中断和清零程序流程图5。3控制电路的C语言源程序根据流程图,经过认真分析得出控制电路的源程序如下:#include<reg51。h#define uchar unsigned char#define uint unsigned intdefine delay_time 3/*宏定义*/uchar k,dat=0,0,0,0,0,0,0,0;uint tcount,t,u;uchar dat1=0,0,0,0,0,0,2,1;uchar dat2=0,0,0,0,0,0,0,0;uchar alarms=0,0,0,0,0,0,0,0;uchar dis_bit=0x

30、80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;unsigned char code SEG711=0xC0,/*0/ 0xF9,/*1/ 0xA4,/2/ 0xB0,/*3*/ 0x99,/4/ 0x92,/5/ 0x82,/6*/ 0xF8,/*7*/ 0x80,/*8*/ 0x90,/*9/ 0xBF,/ ;/数字显示数组*/sbit miaobiao1=P10;sbit tminute=P11;sbit thour=P12;sbit miaobiao2=P13;sbit alarm=P14;sbit P0_0=P00;sbit P1_5=P15;sbit P

31、1_6=P16;sbit P1_7=P17;/端口定义*/uchar ms=0;uchar flag=0;uchar sec=0;uchar minit=0;struct timeuchar second;uchar minute;uchar hour;time1; uchar n,i;void delay(n) while(n-)for(i=120;i>0;i); /*延时子程序*/ void modify(void) EA=0; if(thour=0) if(flag=0) dat16+;delay(280); if(dat169) dat16=0;dat17+;else if((d

32、at17>1)&(dat163)) dat17=0; dat16=0; if(flag=1) alarms6+;delay(300); if(alarms69) alarms6=0;alarms7+; if(alarms7>2) alarms7=0; dat6=alarms6; dat7=alarms7; if(tminute=0) if(flag=0) dat13+;delay(280); if(dat3>=9) dat14+;dat13=0;if(dat14>5) dat14=0; if(flag=1) alarms3+;delay(300); if(ala

33、rms39) alarms4+;alarms3=0; if(alarms4>5) alarms4=0; dat3=alarms3;dat4=alarms4; if(miaobiao1=0)TR0=0;ET0=0;TR1=1;ET1=1; if(miaobiao2=0) TR0=1;ET0=1;TR1=0;ET1=0; dat20=0; dat21=0; dat23=0; dat24=0; dat26=0; dat27=0; ms=0; sec=0; minit=0; if(P1_5=0) TR0=0;ET0=0;TR1=0;ET1=0; if(alarm=0)TR0=0;ET0=0;TR

34、1=0;ET1=0;flag=1; dat0=0; dat1=0;dat2=10; dat3=0;dat4=0;dat5=10;dat6=0;dat7=0; EA=1;/*按键扫描*/void init(void)TMOD = 0x11; TH0 = 0xDB;TL0 =0xFF;TH1=0xDB;TL1=0xFF; ET0 = 1; /10msET1=1;/TR1=1; TR0=1; tcount=0;ms=0;sec=0;minit=0;EA = 1;/初始化*/void test(void)for(k=0;k<8;k+)P3=dis_bitk;P2=SEG7datk; delay(

35、1);P3=0X00; /*数字显示/void main() init(); delay(10); while(1) modify(); test(); /主函数/Void diplay() interrupt 1 ET0=0; TR0=0; TH0 = 0xDB; TL0 = 0xff; TR0=1; tcount+; if(tcount=100) time1。second+; tcount=0;dat10=(time1。second)10;dat11=(time1。second)/10; if(time1.second=60) dat10=0;dat11=0; time1。second=0

36、; time1.minute+; dat13=(time1。minute)10;dat14=(time1。minute)/10; if(time1.minute=60) time1.minute=0; time1.hour+; dat16=time1.hour%10;dat17=time1.hour/10; if(time1。hour>23) time1.hour=0; dat5=10; dat2=10; dat0=dat10; dat1=dat11; dat3=dat13; dat4=dat14; dat6=dat16; dat7=dat17; flag=0; P0=0x01;if((alarms7=dat17)&(alarms6=dat16)&(alarms4=dat14)&(alarms3=dat13)&&(dat11<1) P0=0x00; ET0=1;void time_2(void)interrupt 3 EA=0; TR0=0; TH1=0xDB; TL1=0xFF; TR1=1; ms+; dat20=ms%10; dat21=ms/10; if(ms=100) ms=0; sec+; dat23=sec%10; dat24=sec/10; if(sec>=60)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1