基于单片机的定时器的设计与实现毕业设计(共53页).doc

上传人:飞****2 文档编号:14328778 上传时间:2022-05-04 格式:DOC 页数:53 大小:691.50KB
返回 下载 相关 举报
基于单片机的定时器的设计与实现毕业设计(共53页).doc_第1页
第1页 / 共53页
基于单片机的定时器的设计与实现毕业设计(共53页).doc_第2页
第2页 / 共53页
点击查看更多>>
资源描述

《基于单片机的定时器的设计与实现毕业设计(共53页).doc》由会员分享,可在线阅读,更多相关《基于单片机的定时器的设计与实现毕业设计(共53页).doc(53页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上学校代码: 10128学 号: 本科毕业设计说明书(题 目:基于单片机的定时器的设计与实现学生姓名:wws学 院:信息工程系 别:电子信息工程专 业:电子信息工程班 级:.指导教师:.二 一 二 年 六 月摘 要近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软

2、件结合,以作完善。数子时钟在日常生活中最常见,应用也最广泛。本次做的数子时钟是以单片机(AT89C51)为核心,结合相关的元器件(时钟芯片DS1302、LCD液晶显示器),达到制作简易数字时钟的目的,文章的核心主要是硬件设计和软件编程两个大的方面。硬件电路设计由包括中央处理单元电路、液晶显示电路、人机接口电路等几部分组成,软件用汇编语言来实现。其硬件部分难点在于元器件的选择、布局及焊接。关键词:单片机AT89C51 LCD液晶显示器 时钟芯片DS1302AbstractRecent years , the use of singlechip is moving toward deeply wi

3、th the filter of computer in the society and the development of the large scale integrated circuit. Singlechip is especially equal to the system relation to the control because of its strong funtion 、samll volume、low power consumption、inexpensive price、credibility work and its handy.it is used in th

4、e area of automata、Intelligent instrument、appearance、data acquisition、production of war industry 、domestic appliance and so on.the singlechip is used usually as the centerpiece,It can be perfect bases the specific Hardware infrastructureand aim at the integrated hardware and software device of the s

5、pecific complexion.Digital clock is the most common and the most widely used in our daily lives.The singlechip is the hardcore in the digital clock made in this timethe digital clock can reach the purpose of facility digital clock with the correlation parts of an apparatus(Real Time Clock chip DS130

6、2, Display-panel LCD an so on) To achieve the purpose of making simple digital clock.The core part of this article incluedes two aspeacts, one is hardware design,the other is software programming. The hardware design circuit consists of the central processing unit circuit、the liquid crystal display

7、circuit、the man-machine interface circuit.The difficulites of the hardware part are choice and layout of components,and the components of welding.Keywords: singlechip AT89C51 real time clock chip DS1302, LCD Monitor目 录专心-专注-专业引 言20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同

8、时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能造成无可挽回的重大损失。所以精确的报时系统显得尤为重要。单片机由于将cpu,内存和一些必要的接口集成到一个芯片上,并且针对面向控制功能将结构做了一定的优化,所以它具备通用芯片不具有的特点。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。因此,单片机被广泛应用于测控系统,智能仪

9、表仪器,机电一体化产品,智能接口以及单片机的多系统等领域。 它的应用主要表现在以下几个方面:(1)单片机在智能仪表中的应用 单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。 (2)单片机在机电一体化中的应用 机电一体化是机械工业发展的方向。机电一体化产品是指集成机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。单片机作为产品中的控制器,能充分发挥它的体积小、可靠性高、功能强等优点,可大大提高机器的自动化、智能化程度。 (3)单片机在实时控制中的应用 单片机广泛地用于各种实时控

10、制系统中。例如,在工业测控、航空航天、尖端武器、机器人等各种实时控制系统中,都可以用单片机作为控制器。单片机的实时数据处理能力和控制功能,可使系统保持在最佳工作状态,提高系统的工作效率和产品质量。 (4)单片机在分布式多机系统中的应用在比较复杂的系统中,常采用分布式多机系统。多机系统一般由若干台功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系、协调工作。单片机在这种系统中往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量和控制。单片机的高可靠性和强抗干扰能力,使它可以置于恶劣环境的前端工作。 (5)单片机在人类生活中的应用 自从单片机诞生以后,它就步入了人类

11、生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度,增加了功能,倍受人们喜爱。单片机将使人类生活更加方便、舒适、丰富多彩。 综合所述,单片机已成为计算机发展和应用的一个重要方面。另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数子时钟,数子时钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更

12、长的使用寿命,因此得到了广泛的使用。数子时钟是采用数字电路实现对时,分,秒,数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数子时钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数子时钟及扩大其应用,有着非常现实的意义。 第一章 硬件介绍1.1AT89

13、C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图1-1为AT89C51单片机的管脚图图1-1单片机管脚图5.1.1主要管脚说明VCC:供电电压.GND:

14、接地.P0口: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/

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

16、外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下所示:口管脚 备选功能P3.0 RXD 串行输入口P3.1 TXD 串行输出口P3.2 /INT0 外部中断0P3.3 /INT1 外部中断1P3.4 T0 记时器0外部输入P3.5 T1 记时器1外部输入P3.6 /WR 外部数据存储器写选通P3.7 /RD 外部数据存储器读选通P3口同时为闪烁编程和编程校验接收一些控制信号。1.2AT89C51结构图图1-2AT89C51结构图1.3DS1302时钟芯片简介 DS1302是 DALLAS 公司推出的涓流充电时钟芯片,内含一个实时

17、时钟/日历和31字节静 态 RAM,可以通过串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、 星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过 AM/PM 标 志位决定采用24或12小时时间格式。DS1302与单片机之间能简单地采用同步串行的方式进 行通信,仅需三根 I/O 线:复位(RST)、I/O 数据线、串行时钟(SCLK)。时钟/RAM 的读/写数据以一字节或多达31字节的字符组方式通信。DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mW。 图1-3DS1302管脚图各引脚的功能为:Vcc1:主电源;Vcc2:备份电源。当 Vcc2V

18、cc1+0.2V 时, 由 Vcc2向 DS1302供电,当 Vcc2 Vcc1时,由 Vcc1向 DS1302供电。SCLK:串行时钟,输入,控制数据的输入与输出;I/O:三线接口时的双向数据线;CE:输入信号,在读、写数据期间,必须为高。该引脚有两 个功能:第一,CE 开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法 。时时钟以及 RAM。虽然数据分成两种,但是对单片机的程序而言,其实是一样的,就是对特定的地址进行读写操作。图1-4 DS1302的内部结图DS1302含充电电路,可以对作为后备电源的可充电电池充电,并可选择充电使能和串 入的二极管数目,以调

19、节电池充电电压。不过对我们目前而言,最需要熟悉的是和时钟相关 部分的功能,对于其它参数请参阅数据手册。DS1302的工作原理 DS1302工作时为了对任何数据传送进行初始化,需要将复位脚(RST)置为高电平且 将8位地址和命令信息装入移位寄存器。数据在时钟(SCLK)的上升沿串行输入,前8位指 定访问地址,命令字装入移位寄存器后,在之后的时钟周期,读操作时输出数据,写操作时 输出数据。时钟脉冲的个数在单字节方式下为8+8(8位地址+8位数据),在多字节方式下为8加最多可达248的数据。DS1302的寄存器和控制命令 对 DS1302的操作就是对其内部寄存器的操作,DS1302内部共有12个寄存

20、器,其中有7 个寄存器与日历、时钟相关,存放的数据位为 BCD 码形式。此外,DS1302还有年份寄存器、 控制寄存器、充电寄存器、时钟突发寄存器及与 RAM 相关的寄存器等。时钟突发寄存器可 一次性顺序读写除充电寄存器以外的寄存器。日历、时间寄存器及控制字如表1所示:表1-1:日历、时钟寄存器与控制字对照表最后一位 RD/W 为“0”时表示进行写操作,为“1”时表示读操作。DS1302内部寄存器列表如表2所示:表1-2:DS14302内部主要寄存器分布表寄存器名称命令字取值范围各位内容写读765 432 1 0秒寄存器80H81H00-59CH10SECSEC分寄存器82H83H00-590

21、10MINMIN小时寄存器84H85H01-12或00-2312/240A HRHR日期寄存器86H87H01-28,29,30,310010DATEDATE月份寄存器88H89H01-12000-10MMONTH周寄存器8AH8BH01-07000 00DAY年份寄存器8CH8DH00-9910YEARYEAR DS1302内部的 RAM 分为两类,一类是单个 RAM 单元,共31个,每个单元为一个8位 的字节,其命令控制字为 COHFDH,其中奇数为读操作,偶数为写操作;再一类为突发方 式下的 RAM,此方式下可一次性读写所有的 RAM 的31个字节,命令控制字为 FEH(写)、 FFH(

22、读)。 我们现在已经知道了控制寄存器和 RAM 的逻辑地址,接着就需要知道如何通过外部接 口来访问这些资源。单片机是通过简单的同步串行通讯与 DS1302通讯的,每次通讯都必须 由单片机发起,无论是读还是写操作,单片机都必须先向 DS1302写入一个命令帧,这个帧 的格式如表1所示,最高位 BIT7固定为1,BIT6决定操作是针对 RAM 还是时钟寄存器,接 着的5个 BIT 是 RAM 或时钟寄存器在 DS1302的内部地址,最后一个 BIT 表示这次操作是读 操作抑或是写操作。 物理上,DS1302的通讯接口由3个口线组成,即 RST,SCLK,I/O。其中 RST 从低电 平变成高电平启

23、动一次数据传输过程,SCLK 是时钟线,I/O 是数据线。具体的读写时序参 考图5,但是请注意,无论是哪种同步通讯类型的串行接口,都是对时钟信号敏感的,而且 一般数据写入有效是在上升沿,读出有效是在下降沿(DS1302正是如此的,但是在芯片手 册里没有明确说明),如果不是特别确定,则把程序设计成这样:平时 SCLK 保持低电平, 在时钟变动前设置数据,在时钟变动后读取数据,即数据操作总是在 SCLK 保持为低电平 的时候,相邻的操作之间间隔有一个上升沿和一个下降沿。图1-5 DS1302的命令字构1.4 LCD1602液晶显示器简介1.4.1 概述液晶(Liquid Crystal)是一种高分

24、子材料,因其特殊的物理、化学、光学特性,广泛应用轻薄显示器上。液晶显示器(Liquid Crystal Display,LCD)的主要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。各种型号的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名。例如,1602表示每行显示16个字符,一共可以显示两行。这类液晶通常称为字符型液晶,只能显示ASCII码字符。12232表示液晶显示画面由122列、32行组成,共有122*32个点来显示各种图形。用户可以通过程序控制这些点中任何一个点显示或不显示,从而构成各种图形画面。因此,12232称为图形型液晶。液晶体积小,功耗低,显示操作简单。但

25、其有致命的弱点,即使用温度范围很窄。通用型液晶工作温度为0到+55摄氏度,存储温度为-20到+60摄氏度。1.4.2 LCD1602 1 1602的外形尺寸(毫米)图1-6LCD1602外形尺寸2 主要技术参数图1-7LCD1602主要技术参数3 接口信号说明表1-3LCD1602接口信号说明4 基本操作时序读状态:输入:RS=L,RW=H,E=H 输出:D0D7=状态字写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲 输出:无读数据:输入:RS=H,RW=H,E=H 输出:D0D7=数据写数据:输入:RS=H,RW=L,D0D7=数据,E=高脉冲 输出:无5 RAM地址映射图控

26、制器内部带有80B的RAM缓冲区。对应关系如下图所示。图1-8缓冲区对应关系图向图中的000F、404F地址中的任意处写入显示数据时,液晶可立即显示出来;当写入到1027或5067地址时,必须通过移屏指令将他们一移入可显示区域方可正常显示。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如下表所示。表1-4 CGROM和CGRAM中字符代码与字符图形对应关系这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能

27、看到字母“A”。6 状态字说明表1-5状态字说明STA7D7STA6D6STA5D5STA4D4STA3D3STA2D2STA1D1STA0D0STA06当前数据地址指针的数值STA7读写操作使能1: 禁止 0:允许说明:原则上每次对控制器进行读写操作前,都必须进行读写检测,确保STA7为0。实际上,由于单片机的操作速度慢于液晶控制器的反应速度,因此可以不进行检测,或只进行简短的延时即可。7 指令说明 1602液晶模块内部的控制器共有11条控制指令。(1) 显示模式设置表1-6显示模块设置指令码功能00111000设置162显示,57点阵,8位数据接口(2) 显示开/关及光标设置表1-7显示开

28、/关及光标设置指令码功能00001DCBD=1 开显示; D=0 关显示C=1 显示光标;C=0 不显示光标B=1 光标闪烁; B=0 光标不显示000001NSN=1 当读或写一个字符后地址指针加一,且光标加一N=0 当读或写一个字符后地址指针加一,且光标减一S=1 当写一个字符,整幕显示左移(N=1)或右移(N=0)S=0当写一个字符,整屏显示不移动(2) 数据指针设置表1-8数据指针设置指令码功能80H+地址码(027H,4067H)设置数据地址指针(4)其它设置表1-9其它设置指令码功能01H显示清屏:1.数据指针清零 2所有显示清零02H显示回车:1.数据指针清零8.控制接口时序说明

29、:表1-10时序参数第二章 硬件设计2.1系统硬件框图图2.1系统硬件框图2.1.1框图说明:本设计核心部件为AT89C51单片机芯片,配合外部配件如专用日历时钟芯片DS1302,键盘,LCD1602液晶显示器,声光报警器,以及一些外部辅助电路,以实现日期、时间的显示及定时器的功能。很具有实际意义。有广泛的应用性。2.2电路原理图图2-2电路原理图2.2.1系统电路说明:本系统由五个部分组成:按键模块、复位电路模块、晶振电路模块、(注:上图由于只要仿真,所以没有添加复位电路和晶振电路模块,不会影响到仿真结果)发声模块、时间模块。晶振模块负责给单片机提供时钟周期,复位电路模块负责上电后自动复位,

30、或按键后强制复位。上电后,由单片机内部定时器计时,同时通过动态显示函数自动将时、分、秒显示到LCD上。同时,按键扫描函数一直扫描按键引脚状态,一旦扫描到按键被按下,即进入到相应的功能函数。如果检测到定时时间到,则驱动蜂鸣器发声。单片机的晶振电路模块如图2-3所示:图2-3晶振电路模块 石英晶振也连接在引脚的输入和输出之间,等效为一个并联谐振回路,振荡频率应该是石英晶体并联谐振频率,晶体旁边的两个电容接地,实际上就是电容三点式电路的分压电容,接地点就是分压点。以接地点即分压为参考点,振荡引脚的输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡。复位电路如下:

31、图2-4复位电路当AT89C51单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,复位操作通常有两种基本形式:上电复位和上电或开关复位。上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能是单片机复位。常用的上电或开关复位电路如图所示,上电后,由于电容C3的充电和反相门的作用,使RST持续一段时间的高电平。当单片机已在运行当中时,按下复位开关后松开,能使RST为一段时间的高电平,从而实现上电或开关复位的操作。发声模块:图2.5发声模块喇叭由PNP三极管驱动,当Buzzer管脚(P2_4)为高时,三极管be级没电压差,三极管截止;反之,三极管导

32、通,有电流流经喇叭,喇叭发声。按键模块图2-6按键模块在该模块,采用四个按键作为电子时钟的控制输入,通过按键来实现时钟的时间设置置、定时、秒表功能。电路中将四个按键的一端接公共地,而单片机的P1默认为高电平,一旦按键被按下,则该按键对应的管脚被拉低,通过软件扫描按键即可知道用户所要实现的功能调用相应的按键子程序来完成该操作。按键的去抖动有软件来实现。第三章 软件设计3.1程序流程图主程序流程图如下:否否是是开始闹钟响初始化定时器设置时间按键功能子程序显示时间是否有键按下定时时间到图3-1主程序流程图3.2软件仿真图图3-2软件仿真图3.2按键功能子程序流程图图3-2按键功能主程序流程图本次设计

33、中,关键程序采用模块化设计,这样的好处在与程序的修改和编写,还有程序运行的稳定性。主要模块部分有主程序模块,时钟调整子程序模块,显示子程序模块等。总结通过两个月的学习和调试过程,终于完成了基于单片机的数字时钟的工作。并且使字数子时钟的软件部分能够顺利运行,完成了预期的目标。从单片机模块数字时钟的设计过程中也找到了一些单片机开发的规律:先了解所有元件的具体内容,从而画出其电路图,使数字时钟从简易变成多功能的方式,虽没有做出多功能数字时钟,却知晓了其方法。从而让我踏入了单片机应用领域的第一步。参考文献1张毅坤、陈善久、裘雪红 单片机微型计算机原理及应用西安电子科技大学出版社 1998年9月第一版2

34、裴岩、刘利民 单片机系统综合设计与实践 内蒙古大学出版社3张俊谟 单片机中级原理及应用 北京航空航天大学出版社 2002年8月第2版4任为民 电子技术基础课程设计中央广播电视大学大学出版社 1997年5月第1版5闫石 数字电子技术基础高等教育出版社 6童诗白 模拟电子技术基础高等教育出版社7王晓明,曾红 单片机教程东北大学出版社8张毅刚等 MCS-51单片机教程 哈尔滨工业大学出版社9李广弟 单片机基础北京航空航天大学出版社10张洪润,兰清华 单片机应用教程 清华大学出版社 11John.F.WakerlyM DIGITAL DESIGN 北京高等出版社12Intel,Microcontrol

35、ler HandbookZ,198913TTL Logical Advenced BiCMOS Technology Data Book.Texas Instruments1997.附录 源程序/* 文件名称:main.c版 本:Keil uVision4控 制 器: AT89C51/12MHz说 明:基于单片机的DS1302数字时钟*/*includes-*/ #include #include #include #include #include #include /*defines-*/#define Time0_TH0 0xc6 /定义计数器0计数寄存器装载的高8位值,可自行修改#de

36、fine Time0_TL0 0x0d /定义计数器0计数寄存器装载的低8位值,可自行修改#define State_Clock 0 /定义空闲状态#define State_AdjustWeek 1 /定义星期调整状态#define State_AdjustYear 2 /定义年份调整状态#define State_AdjustMonth 3 /定义月份调整状态#define State_AdjustDay 4 /定义日份调整状态#define State_AdjustHour 5 /定义时调整状态#define State_AdjustMinute 6 /定义分调整状态#define St

37、ate_AdjustSecond 7 /定义秒调整状态#define State_AdjustAlarmHour 8 /定义闹钟时调整状态#define State_AdjustAlarmMinute 9 /定义闹钟分调整状态/*variable-*/unsigned char data SetTime = 9,9,9,9,3,1,12;unsigned char data CurrentTime7;static unsigned char Button_Value; /定义按键状态值变量static unsigned char Function_State; /定义功能状态变量static

38、unsigned char Value_AdjustWeek; /定义星期调整变量static unsigned char Value_AdjustYear; /定义年份调整变量static unsigned char Value_AdjustMonth; /定义月份调整变量static unsigned char Value_AdjustDay; /定义日份调整变量static unsigned char Value_AdjustAlarmHour; /定义闹钟时调整变量static unsigned char Value_AdjustAlarmMinute ; /定义闹钟分调整变量stat

39、ic unsigned char Value_AdjustHour; /定义时调整变量static unsigned char Value_AdjustMinute; /定义分调整变量static unsigned char Value_AdjustSecond; /定义秒调整变量static unsigned char AlarmHour = 0x08; /定义闹钟时钟变量static unsigned char AlarmMinute =0x0a; /定义闹钟分钟变量static unsigned char SweepInterval_ShowTime; /定义显示扫描时间变量static

40、 unsigned char SweepInterval_Alarm; /定义警告扫描时间变量static unsigned char SweepInterval_Button; /定义按键扫描时间变量static unsigned char State_RealtimeClock; /定义警告扫描时间变量static bit Flag_ShowTime = 0; /定义显示扫描标志变量static bit Flag_Alarm = 0; /定义警报扫描标志变量static bit Flag_Button = 0; /定义按键扫描标志变量static bit Flag_buzzer = 0;

41、/定义蜂鸣器扫描标志变量static bit Flag_ManualOperation = 0; /定义手动控制扫描标志变量/* 函数名称:Time0_Initialization(void)函数功能:定时器0初始化函数备 注:定时器工作于方式1,定时器计数寄存器16位全部用于计数 */ void Time0_Initialization(void)TMOD=0x21; /T0,工作方式1TH0=Time0_TH0; /装载定时器0寄存器高8位值TL0=Time0_TL0; /装载定时器0寄存器低8位值TR0=1; /开启T0定时器ET0=1; /允许T0定时器中断EA=1; /开启总中断允许/*函数名称:UART_Initialization()函数功能:串口初始化函数,定时器1作为波特率时钟发生器备 注:在系统时钟为12MHZ时,设定串口波特率为1200bit/s或2400bit/s备 注:在系统时钟为11.0592MHZ时,设定串口波特率为9600bit/s*/void UART_

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁