《毕业设计(论文)基于51单片机的电子万历设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于51单片机的电子万历设计.doc(40页珍藏版)》请在三一办公上搜索。
1、毕 业 论 文(设 计)论文(设计)题目: 基于51单片机电子万年历 所属系别 信息工程系 专业班级 电子信息工程 姓名 XXX 学号 2008080XXXXXXXX 指导教师 XXX 撰写日期 2011 年 5 月摘 要随着社会、科技的发展,人类得知时间,从观太阳、摆钟到现在电子钟,不断研究、创新。为了在观测时间的同时,能够了解其它与人类密切相关的信息,比如温度、星期、日期等,电子万年历诞生了,它集时间、日期、星期和温度功能于一身,具有读取方便、显示直观、功能多样、电路简洁等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。该电子万年历主要采用AT89C51单片机作为主控核心,由DS
2、1302时钟芯片提供时钟、LED动态扫描显示屏显示。AT89C51单片机是由Atmel公司推出的,功耗小,电压可选用46V电压供电;DS1302时钟芯片是美国DALLAS公司推出的具有涓细电流充电功能的低功耗实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小;数字显示是采用的LED液晶显示屏来显示,可以同时显示年、月、日、星期、时、分、秒和温度等信息。此外,该电子万年历还具有时间校准等功能。关键词:时钟电路, 时钟芯片DS1302,LED动态扫描, 单片机AT89C51,MAX7219.AbstractWith the s
3、ociety, science and technology, mankind learned that time, from the view of the sun, to the present electronic clock pendulum clock, continuous research and innovation. Observation time in the same time, be able to understand other human beings is closely related to information, such as temperature,
4、 week, date and so on, the birth of the electronic calendar, and it set the time, date, week and temperature-in-one, with easy to read, intuitive display functional diversity, and many other advantages of simple circuit with the electronic instrumentation of the development trend of the market prosp
5、ects are broad. The main use of the electronic calendar AT89C51 single-chip microcomputer as the main core, provided by the DS1302 clock chip clock, DS18B20 the temperature chip acquisition transition temperature, LED display shows the dynamic scan. AT89C51 single-chip microcomputer is introduced by
6、 Atmel Corporation, a small power consumption, voltage can be selected 4 6V power supply voltage; DS1302 clock chip is introduced DALLAS fine with trickle charge function of current low-power real-time clock chip, which can of the year, month, day, week, hour, minute, second for time, also has multi
7、ple functions, such as a leap year compensation, and long life of the DS1302, a small error; DS18B20 temperature chip is a digital temperature sensor with a measurement accuracy high, a simple circuit to connect the characteristics of such sensors only need a data cable for data transmission; digita
8、l LED display is used to display LCD screen, can display year, month, day, week, hour, minute, second and temperature, etc. information. In addition, the electronic calendar is also a time-calibration functions. Keywords: clock circuit, clock chip DS1302, LED dynamic scanning, single-chipAT89C51,MAX
9、7219 目 录1. 引言12. 设计要求与方案论证12.1 设计要求:12.1.1 基本要求12.1.2 创新要求12.2 系统基本方案选择和论证12.2.1 单片机芯片的选择方案和论证:12.2.2 显示模块选择方案和论证:22.2.3 时钟芯片的选择方案和论证:22.3 电路设计最终方案决定23. 系统的硬件设计与实现33.1 电路设计框图33.2 系统硬件概述33.3 主要单元电路的设计33.3.1 单片机主控制模块的设计33.3.2 时钟电路模块的设计43.3.3 电路原理及说明43.3.4 显示模块的设计64. 系统的软件设计64.1 程序流程框图74.2 子程序的设计84.2.1
10、 读、写DS1302子程序85. 作品总结106. 参考文献117. 致 谢12附录一:系统电路图13附录二:系统程序清单14附录三:系统使用说明书361. 引言随着电子技术的发展,人类不断研究,不断创新纪录。万年历目前已经不再局限于以书本形式出现。以电脑软件或者电子产品形式出现的万年历被称为电子万年历。与传统书本形式的万年历相比,电子万年历得到了越来越广泛的应用,采用电子时钟作为时间显示已经成为一种时尚。目前市场上各式各样的电子时钟数不胜数,但多数是只针对时间显示,功能单一不能满足人们日常生活需求。 本文提出了一种基于AT89C51单片机的万年历设计方案,本方案以AT89C51单片机作为主控
11、核心,与时钟芯片DS1302、按键、LED显示等模块组成硬件系统。在硬件系统中设有独立按键和LED显示器,能显示丰富的信息,根据使用者的需要可以随时对时间进行校准、选择时间等,综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。2. 设计要求与方案论证2.1 设计要求:2.1.1 基本要求1)具有年、月、日、星期、时、分、秒等功能;2)万年历具有闰月识别显示功能;3)具备年、月、日、星期、时、分、秒校准功能;2.1.2 创新要求1)万年历具有阴历显示功能;2)具有测量室内温度功能;2.2 系统基本方案选择和论证2.2.
12、1 单片机芯片的选择方案和论证:方案一: 采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,
13、由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。所以选择采用AT89S52作为主控制系统.2.2.2 显示模块选择方案和论证:方案一:采用LED液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,但是价格昂贵,需要的接口线多,所以在此设计中不采用LED液晶显示屏.方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.方案三:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法
14、与单片机连接时,占用的单片机口线少。所以采用了LED数码管作为显示。2.2.3 时钟芯片的选择方案和论证:方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA.2.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定: 采用AT
15、89S52作为主控制系统; DS1302提供时钟;数字式温度传感器;LED数码管动态扫描作为显示。3. 系统的硬件设计与实现AT89S52主控制模块LED数码管动态扫描显示模块键盘模块3.1 电路设计框图DS1302时钟模块3.2 系统硬件概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS130
16、2内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份由个数码管,74ls138、74ls47译码器构成。使用动态扫描显示方式对数字的显示。3.3 主要单元电路的设计3.3.1 单片机主控制模块的设计AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1
17、接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端. 如图-1 所示 图-1 主控制系统3.3.2 时钟电路模块的设计图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2
18、是振荡源,外接32.KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。 图-2 DS1302的引脚图3.3.3
19、电路原理及说明(1) 时钟芯片DS1302的工作原理:DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。图5为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表6为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停
20、止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。(2) DS1302的控制字节DS1302的控制字如表-1所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出 RAM RD 1 A4 A3 A2 A1 A0 / CK /WR 表-1 DS1302的
21、控制字格式(3) 数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图-4所示 图-4 DS1302读/写时序图(4) DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表-2。 表-2 DS1302的日历、时间寄存器 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时
22、钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 3.3.4 显示模块的设计如图5所示,采用动态扫描显示,由个数码管,3-8译码器74LS138接1K限流电阻,再接8550三极管接到共阳数码管的CoM端作为选通位码,每位选择相应的列。74ls47接240限流电阻,再接共行的LED数码管的断码。图-5
23、LED动态扫描显示4. 系统的软件设计开始初始化读、写日期、时间和温度分离日期时间温度显示值显示子程序农历自动更新子程序日期、时间修改子程序闰月子程返回定时闹铃子程序4.1 程序流程框图 图-A 主程序流程图 图-B计算阳历程序流程图 图-C 时间调整程序流程图4.2 子程序的设计4.2.1 读、写DS1302子程序写1302程序WRITE: CLR SCLK NOP SETB RST NOP MOV A,32H MOV R4,#8WRITE1: RRC A ;送地址给1302 NOP NOP CLR SCLK NOP NOP NOP MOV IO,C NOP NOP NOP SETB SCL
24、K NOP NOP DJNZ R4,WRITE1 CLR SCLK NOP MOV A,31H MOV R4,#8WRITE2: RRC A NOP ;送数据给1302 CLR SCLK NOP NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP DJNZ R4,WRITE2 CLR RST RET;读1302程序READ: CLR SCLK NOP NOP SETB RST NOP MOV A,32H MOV R4,#8READ1: RRC A ;送地址给1302 NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP NOP
25、CLR SCLK NOP NOP DJNZ R4,READ1 MOV R4,#8READ2: CLR SCLK NOP ;从1302中读出数据 NOP NOP MOV C,IO NOP NOP NOP NOP NOP RRC A NOP NOP NOP NOP SETB SCLK NOP DJNZ R4,READ2 MOV 31H,A CLR RST RET5. 作品总结在整个设计过程中,发挥团队精神,分工合作,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。较好的完成了作品。达到了预期的目的,在最初的设计中,发挥“三个臭皮匠,顶个诸葛亮”的作用。相互学习、相互讨论、研究。完了最初的
26、设想。在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路工程量大,不能心急,一个个慢慢来不能急于求成。反而达到事半功倍的效果。对电路的设计、布局要先有一个好的构思,才显得电路板美观、大方。程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,和同组员的讨论,理清了思路,反而得心应手。在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。也练就了我们的耐心,做什么事都在有耐心。此次比赛中学到了很多很多东西,这是最重要的。总之,参加电子竞赛我们的能力得到了全方位的提高。参考文献1胡乾斌,李文斌,李玲,喻红,单片微型计算机原理与应用,华中科技
27、大学出版社,1996.2刘勇.数字电路。电子工业出版社,2004.3陈正振.电子电路设计与制作.广西交通职业技术学院信息工程系,2007.4杨子文.单片机原理及应用.西安电子科技大学出版社,2006.5王萍.电子技术实验教程.机械工业出版社,2009.6沈红卫.单片机应用系统设计实例与分析,北京:北京航空航天大学出版社,2003.7李光飞.单片机课程设计实例指导,北京:北京航空航天大学出版社.2004.8王法能.单片机原理及应用,科学出版社.2004.9楼然苗,李光飞.51系列单片机设计实例M.北京航空航天大学出版社,2003.10朱定华,戴汝平.单片微机原理与应用M.清华大学出版社,2003
28、.11胡汉才.单片机原理与接口技术M.清华大学出版社,2003.12余家春.Protel 99 SE电路设计实用教程M.中国铁道出版社,2004.13张培仁.基于汇编语言编程MCS-51单片机原理与应用.北京:清华大学出版社,2003.14T.Someya,J.Small,P.Kim,C.Nuckolls,J.T.Yardley.Alcohol Vapor sensors based on single-walled carbon nanotube field effect transistorsM.Nano Letters,2003.15M.Penza et al.Alcohol detec
29、tion using carbon nanotubes acoustic and optical sensorsM.Applied Physics Letters,2004.16F.Rettig,R.Moos.Direct thermoelectric gas sensors Design aspects and frist gas sensorsM.Sens ActuatorsB,2007.致 谢感谢学院给我们提供了一个展现自己的舞台,给我们一次难得煅炼的机会,使得我们的动手能力和专业技能都有了很大的提高。在做作品的日子里得到了陈老师的悉心指导,在此向我们的指导教师致以诚挚的谢意。感谢提供相
30、关技术帮助的老师和同学,你们的支持和鼓励使我们对这次的作品完成有了信心和动力,也给了我们很多无私的帮助和支持,我们在此深表谢意。姓名:袁绽龙附录一:系统电路图附录二:系统程序清单CONFIG12 EQU 7FH TEMPH EQU 21H TEMPL EQU 20H REG2 EQU 22H REG3 EQU 23H REG4 EQU 24H DAT EQU P0.7 SCLK EQU P3.2 IO EQU P3.3 RST EQU P3.4 year DATA 66H month DATA 65H week DATA 64H day DATA 63H hour DATA 62H mintu
31、e DATA 61H second DATA 60H ORG 0000H LJMP START ORG 001BH LJMP INTT1START: ;初值 LCALL ZJ SETB EA MOV SCON,#00H ; 串行输出,方式0 MOV TMOD,#10H ;计数器1,方式1 MOV TL1,#00H MOV TH1,#00H MOV 32H,#8EH MOV 31H,#00H ;允许写1302 LCALL WRITE MOV 32H,#90H MOV 31H,#0A6H ;1302充电,充电电流1.1MA LCALL WRITE ;主程序MAIN1: MOV 32H,#8DH ;
32、读出年 LCALL READ MOV year,31H MOV 32H,#8BH ;读出星期 LCALL READ MOV week,31H MOV 32H,#89H ;读出月 LCALL READ MOV month,31H MOV 32H,#87H ;读出日 LCALL READ MOV day,31H MOV 32H,#85H ;读出小时 LCALL READ MOV hour,31H MOV 32H,#83H ;读出分钟 LCALL READ MOV mintue,31H MOV 32H,#81H ;读出秒 LCALL READ MOV second,31H ;分离缓存 MOV R0,
33、year ;年分离,送显示缓存 LCALL DIVIDE MOV 7BH,R1 MOV 4BH,R1 MOV 7CH,R2 MOV 4CH,R2 MOV 78H,week MOV 48H,week MOV R0,month ;月分离,送显示缓存 LCALL DIVIDE MOV 79H,R1 MOV 49H,R1 MOV 7AH,R2 MOV 4AH,R2 MOV R0,day ;日分离,送显示缓存 LCALL DIVIDE MOV 76H,R1 MOV 46H,R1 MOV 77H,R2 MOV 47H,R2 MOV R0,hour ;小时分离,送显示缓存 LCALL DIVIDE MOV
34、74H,R1 MOV 44H,R1 MOV 75H,R2 MOV 45H,R2 MOV R0,mintue ;分钟分离,送显示缓存 LCALL DIVIDE MOV 72H,R1 MOV 42H,R1 MOV 73H,R2 MOV 43H,R2 MOV R0,second ;秒分离,送显示缓存 LCALL DIVIDE MOV 70H,R1 MOV 40H,R1 MOV 71H,R2 MOV 41H,R2 CLR EA LCALL TOUTOU SETB EA LCALL DISPLAY LCALL GENGXIAN ;更新农历程序 JNB P0.1,SETG111 JNB F0,SSS se
35、tb P0.4 ;非闰月,则p0.4清零,指示灯亮 LJMP MAIN1SETG111: LJMP SETGSSS: clr P0.4 ;闰月,则p0.4置位,指示灯不亮 LJMP MAIN1; 温度TOUTOU: LCALL CHUSHI LCALL RDTEMP MOV A,TEMPL ANL A,#11110000B MOV TEMPL,A MOV A,TEMPH ANL A,#00000111B ORL A,TEMPL SWAP A MOV 25H,A MOV A,25H MOV B,#64H DIV AB MOV A,B MOV B,#0AH DIV AB SWAP A ORL A,
36、B MOV 10H,A RETCHUSHI: LCALL RESET MOV A,#0CCH LCALL WRITE111 MOV A,#4EH LCALL WRITE111 MOV A,#CONFIG12 LCALL WRITE111 RETRDTEMP: LCALL RESET MOV A,#0CCH LCALL WRITE111 MOV A,#44H LCALL WRITE111 LCALL DL1MS LCALL RESET MOV A,#0CCH LCALL WRITE111 MOV A,#0BEH LCALL WRITE111 LCALL ERAD111 MOV TEMPL,A L
37、CALL ERAD111 MOV TEMPH,A RETRESET:LA: SETB DAT MOV 52H,#200LB: CLR DAT DJNZ 52H,LB SETB DAT MOV 52H,#30LC: DJNZ 52H,LC CLR C ORL C,DAT JC LB MOV 58H,#80LD: ORL C,DAT JC LP DJNZ 58H,LD SJMP LALP: MOV 52H,#250LF: DJNZ 52H,LF RETWRITE111: MOV 53H,#8W51HA: SETB DAT MOV 54H,#8 RRC A CLR DATW52HA: DJNZ 54
38、H,W52HA MOV DAT,C MOV 54H,#30W53HA: DJNZ 54H,W53HA DJNZ 53H,W51HA SETB DAT RETERAD111: CLR EA MOV 58H,#8RD1A: CLR DAT MOV 54H,#6 NOP SETB DATRD2A: DJNZ 54H,RD2A MOV C,DAT RRC A MOV 55H,#30RD3A: DJNZ 55H,RD3A DJNZ 58H,RD1A SETB DAT RET;公历设置程序SETG : SETB TR1 SETB ET1 MOV 32H,#8EH MOV 31H,#00H ;允许写1302
39、 LCALL WRITE MOV 32H,#80H MOV 31H,#80H ;1302停止振荡 LCALL WRITEGWAIT: ; LCALL DISPLAY JNB P0.1,GWAITSETG1: LCALL DISPLAY JNB P0.1,SETG2 JNB P0.2,GADDYEAR JNB P0.3,JIANYEAR AJMP SETG1GADDYEAR: MOV R7,66H ;年加一 LCALL ADD1 MOV 66H,A CJNE A,#51H,GADDYEAR1 MOV 66H,#00H AJMP GADDYEAR1JIANYEAR: MOV R7,66H ;年减一
40、 LCALL JIAN1 MOV 66H,A CJNE A,#00H,GADDYEAR1 MOV 66H,#51HGADDYEAR1: MOV 32H,#8CH ;年值送人1302 MOV 31H,66H LCALL WRITE MOV R0,66H LCALL DIVIDE ;年分离送显示缓存 MOV 4BH,R1 MOV 7BH,R1 MOV 4CH,R2 MOV 7CH,R2WAITT1: ; LCALL DISPLAY JNB P0.2,WAITT1 JNB P0.3,WAITT1 AJMP SETG1SETG2: SETB 0AH ;调月时闪标志GWAIT2: LCALL DISPL
41、AY JNB P0.1,GWAIT2SETG3: LCALL DISPLAY JNB P0.1,SETG4 JNB P0.2,GADDMONTH JNB P0.3,JIANMONTH AJMP SETG3GADDMONTH: MOV R7,65H ;月加一 LCALL ADD1 MOV 65H,A CJNE A,#13H,GADDMONTH1 MOV 65H,#01H AJMP GADDMONTH1JIANMONTH: MOV R7,65H ;月减一 LCALL JIAN1 MOV 65H,A CJNE A,#00H,GADDMONTH1 MOV 65H,#12HGADDMONTH1: MOV 32H,#88H ;月值送人1302 MOV 31H,65H LCALL WRITE MOV R0,65H LCALL DIVIDE ;月分离,送显示缓存 MOV 79H,R1 MOV 49H,R1 MOV 7AH,R2 MOV 4AH,R2WAITT2: ; LCALL DISPLAY JNB P0.2,WAITT2 JNB P0.3,WAITT2 AJMP SETG3SETG4: SETB 0BH ;调日时闪标志GWAIT4: LCA