《2022年2022年课程设计:多功能电子钟设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年课程设计:多功能电子钟设计 .pdf(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程设计报告课程设计题目:多功能电子钟设计姓名:人之清新专业:电子信息工程学号:080612 2010 年12 月28 日名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 31 页 -多功能电子钟设计摘要:本设计实现了电子钟的时分秒精确走时和校准。具有日历功能,闹铃功能,以及跑表功能。整个过程只需三个独立按键完成,一个功能键,上加键和下减键。关键词:电子钟、日历、闹铃、跑表、独立按键本设计实现了电子钟的时分秒精确走时和校准。具有日历功能,闹铃功能,以及跑表功能。整个过程只需三个键完成,一个功能键,上加键和下减键。时间显示用四个数码管分别显示时、分,秒用点表示,在时和分的中间闪动。功
2、能键实现菜单显示及选择功能,上加键和下减键除实现加减功能外,还用于日历及跑表的切换显示。当上加键和功能键组合还可实现查看闹钟的关与设置的时间。一、整体方案电路图:总体设计电路图如下所示:如图所示,jp3 为 5v 电源输入,按键S1、电容 C2、R1及 R2组成单片机的复位电路,按键 S2、S3、S4是独立按键方式,用来实现校时及切换功能的,分别连接P3.1、P3.2 和 P3.5。晶振、C1、C3 组成单片机的振荡电路,P2 口连接的是四位一体数码管的段码输入地址,P1.0 P1.3 接的是数码管的位选通地址。P3.0 口用于驱动三极管使蜂鸣器产生闹铃。名师资料总结-精品资料欢迎下载-名师精
3、心整理-第 2 页,共 31 页 -二、硬件系统设计1、数码管驱动电路本设计采用的是四位一体的共阳数码管,为使其能够有足够的电流驱动显示,所以采用了 PNP三极管驱动。当基极为低电平是,三极管导通,相应的数码管选通,相反则没选通。如图所示为四位一体共阳数码管的实际接口图:数码管三极管驱动电路如图所示:名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 31 页 -2、蜂鸣器驱动电路本设计的闹铃模块采用的是蜂鸣器驱动电路,通过蜂鸣器的发声实现闹铃。同样采用三极管电路进行驱动。其驱动电路如图所示:3、独立按键电路为了是电路简单,所以不采用矩阵式键盘,而采用独立式按键,会使操作起来更方便。
4、按键电路图如有图所示:它们各个按键是相互独立的,一端共同接地,另一端接单片机的I/0 口。三、软件系统设计1、各子程序实现的任务及流程图如下图所示为主程序的流程图,它不断的循环实现查键及正常显示等主要功能.显示子程序流程图如下图所示,采用动态扫描方式显示,P1.0P1.3 为位选址,P2 口作为段地址的传送.正常计时,采用定时器0 的中断方式实现,定时 50ms,计数 20 次为 1 秒,六十秒分加1,秒清零,60 分时加 1,分清零,24 时清 1,同时判断是否时高位是否为0,为 0 则灭 0.闹钟子程序流程图如下图所示,设定好闹钟时间后,比较时分秒是否相等,相等则闹铃.遇到停 止 按 键
5、则 停 止 闹 铃,若 闹 钟 被 关 则,对 应 的 标 志 位 清 零,不 进 入 闹 钟 子 程 序.当 有UPKEY+FUNKEY组合键按下时,则对应显示闹钟的状态.若未开,则显示 OFF,开了,则显示所设置的闹铃时间.功能键退出.闰年判断子程序流程图如图所示,这里判断闰年采用的是一个较简单的判断方法,即若判断年份为00,世纪就必须给4 整除,若年份不为0,则年份要给4 整除,不然就不是闰年.跑表功能,采用的是定时器1 中断,1ms 加一,加到 99 后,秒加一,同时清零.FUNKEY 键开始,UPKEY 键为清零,DOWNKEY为暂停及清零.按键子程序流程图如图所示,实现闹钟及时钟菜
6、单显示,以及闹钟菜单的开关显示,时钟及闹钟的设置功能等,同时在正常走时时通过按DOWNKEY键进入年份日期的显示,按 UPKEY键进入跑表功能,FUNKEY 键实现设置功能.同时,采用软件延时去抖方法实现按键识别.名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 31 页 -定时器 1中断入口地址保护现场重置计数器初值跑表计数加一处理恢复现场RETI定时器1中断实现跑表子程序闹钟子程序分别比较时,分,秒是否相同?闹钟响停止键为0?RET是是否响一分钟否闹钟子程序闰年判断子程序年份单元为 0?世纪除4为0?闰年标志为 1RET闰年标志为 0是否年份除4为0?否是否是闰年判断子程序开始
7、各参数及定时器等初始化调用显示子程序调用键扫描子程序调用闹钟子程序主程序流程图显示子程序入口查表,位选通,送段地址,并延时RET显示子程序流程图定时器0 中断入口地址中断入口保护现场重置计数器初值调用时间处理子程序恢复现场RETI定时器0 中断子程序名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 31 页 -时间处理入口秒加一并调整为十进制1S时间到?到60s?秒清零,分加 1并调整到60分?分清零,时加 1并调整到24时?小时清零,天加1并调整年分为闰年?月份为1,3,5,7,8,10,12?到30天?到31天?是是是是月份为 2月?到29天?天清 1,月加1并调整到12月?月
8、清 1,年加1并调整RET是是否否是是是否否否否否否否否时间处理子程序名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 31 页 -按键子程序时间,闹钟菜单显示时间键为 0?闹钟键为 0?加1键为0?减1键为 0?加1键为 0?减1键为 0?指定位加 1指定位加 1指定位减 1指定位减 1显示显示确认键为 0?确认键为 0?RET是是否否是是是否否是否否是是否否按键子程序名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 31 页 -2、程序的资源分配30H-3DH 存储程序过程中的计数单元及标志位等内容;40H-42H 时分秒的存储单元;43H-46H 世纪年份及日期的
9、存储单元;47H-48H 时闹菜单存储单元;49H-4DH 闹钟开关菜单,时分秒的存储单元;Funkey-P31,功能键downkey-P35,减 1 键upkey-P32,加 1 键R1-R4,显示子程序时的暂存寄存器单元.3、程序清单(见附件)三、设计总结及分析1、走时误差分析在设计中定好时,会因为跳转执行其他功能程序中的不同,会使整个系统的时间变的繁琐,也使得整个程序算法不是很好,也就会是走时误差增大;其次,在执行按键去抖时,采用的是延时去抖方法,这些延时会浪费很多的资源及时间,也有可能造成走时的误差等;2、心得体会及其他通过本次课程设计,对单片机的知识进一步的进行了巩固.同时,也增强了
10、自己的实际动手能力,因为这是自己焊板,自己设计电路的.从专业综合素质上得到了提高.虽然这样,但终究还存在些问题,比如,实际中的走时误差还需要减小,程序的稳定性等方面,因此还需要不断的改善,尤其是程序的总体算法优化还需改进优化.我采用的是在先实现基本功能情况下调试通过后逐步加上相应的功能的过程.像增加的菜单显示功能及跑表功能等,当然这是种常用的方法,这种方法当然还是存在这弊端的,尤其是对总体上的程序起不到很好的优化效果,只追求功能的实现;应该再做之前,想做个总体规划,这样可以在实现之前对算法的优化等.四、附件:程序清单org 0000h sjmp main org 000bh ljmp time
11、r org 001bh ljmp timer1 org 0030h funkey EQU P31 downkey EQU P35 upkey EQU P32 main:mov 30h,#15;计数名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 31 页 -mov 34h,#02 mov 35h,#00h mov 36h,#0aah mov 39h,#00h mov 3ah,#00h mov 3bh,#00h ;跑表计数mov 3ch,#00h mov 3dh,#00h mov 40h,#12h ;时mov 41h,#00h ;分mov 42h,#00h ;秒mov 43h,#20
12、h ;世纪mov 50h,#14h mov 44h,#10h ;年份mov 51h,#0ah mov 45h,#12h ;月份mov 46h,#01h ;日期mov 47h,#0c0h;时钟菜单mov 48h,#0a1h;闹钟菜单mov 49h,#0ah ;闹钟开mov 4ah,#0fh;闹钟关mov 4bh,#12h ;闹钟时mov 4ch,#00h ;闹钟分mov 4dh,#00h ;闹钟秒clr c mov TMOD,#11h mov TH0,3CH mov TL0,0b0h mov TH1,0D8h mov TL1,0f0h setb ET0 setb TR0 setb ET1 set
13、b EA lp:acall disp1 acall keysan acall xianshi mov a,39h cjne a,#01h,l2 acall naoling l2:sjmp lp xianshi:jb downkey,l6 lcall delay 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 31 页 -jnb downkey,j29 sjmp l6 j29:lcall delay acall disp1 jnb downkey,j29 l4:acall disp2 jb downkey,l4 lcall delay jnb downkey,j30 sjmp l4
14、 j30:lcall delay jnb downkey,j30 l5:acall disp3 jb downkey,l5 lcall delay jnb downkey,j31 sjmp l5 j31:lcall delay jnb downkey,j31 ljmp l3 l6:jb upkey,h1 sjmp h0 h1:ljmp l3 h0:lcall delay jnb upkey,j50 sjmp h1 j50:lcall delay acall disp1 jb funkey,ls lcall delay jnb funkey,j51 sjmp ls j51:lcall delay
15、 jnb funkey,j51 sjmp lb ls:jnb upkey,j50 l7:lcall disp7 mov a,3dh cjne a,#01h,l10 jb downkey,l8 lcall delay jnb downkey,j32 sjmp l8 j32:lcall delay 名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 31 页 -jnb downkey,j32 clr TR1 mov 3dh,#00h sjmp l9 l8:jb funkey,l9 lcall delay jnb funkey,j33 sjmp l9 j33:lcall delay jn
16、b funkey,j33 setb TR1 mov 3dh,#01h l9:jb upkey,l7 lcall delay jnb upkey,j34 sjmp l7 j34:lcall delay jnb upkey,j34 mov 3bh,#00h mov 3ch,#00h sjmp l9 l10:jb downkey,l8 lcall delay jnb downkey,j35 j35:lcall delay jnb downkey,j35 mov 3dh,#00h sjmp l3 lb:mov a,39h cjne a,#01h,ld acall disp6 sjmp lf ld:ac
17、all disp8 lf:jb funkey,lb lcall delay jnb funkey,j37 sjmp ld j37:lcall delay acall disp1 jnb funkey,j37 l3:ret keysan:jb funkey,lp5 lcall delay 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 31 页 -jnb funkey,j55 sjmp lp5 j55:lcall delay acall disp1 jnb funkey,j55 lp7:acall disp4 jb upkey,lp8 lcall delay jnb upkey,
18、j56 sjmp lp8 j56:lcall delay acall disp4 jnb upkey,j56 acall jia sjmp lp5 lp8:jb downkey,lp6 lcall delay jnb downkey,j57 sjmp lp6 jnb downkey,j57 j57:lcall delay acall disp4 jnb downkey,j57 lp9:acall disp5 jb upkey,lp10 lcall delay jnb upkey,j59 sjmp lp10 j59:lcall delay acall disp5 jnb upkey,j59 ac
19、all nao sjmp lp5 lp10:jb downkey,lp9 lcall delay jnb downkey,j40 sjmp lp9 j40:lcall delay acall disp5 jnb downkey,j40 mov 39h,#00h sjmp lp5 lp6:sjmp lp7 名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 31 页 -lp5:ret jia:mov 35h,#01h a1:jb upkey,b0 lcall delay jnb upkey,j5 sjmp b0 j5:lcall delay acall disp1 jnb upkey
20、,j5 mov a,40h add a,#01h da a mov 40h,a cjne a,#24h,a0 mov 40h,#00h b0:jb downkey,b1 lcall delay jnb downkey,j6 sjmp b1 j6:lcall delay acall disp1 jnb downkey,j6 mov a,40h add a,#99h da a mov 40h,a cjne a,#99h,a0 mov 40h,#23h b1:acall disp1 lcall delay mov a,35h cpl a anl a,#01h mov 35h,a a0:jb funk
21、ey,a1 lcall delay jnb funkey,j7 sjmp a1 j7:lcall delay jnb funkey,j7 mov 35h,#02h a2:jb upkey,b2 名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 31 页 -lcall delay jnb upkey,j8 sjmp b2 j8:lcall delay acall disp1 jnb upkey,j8 mov a,41h add a,#01h da a mov 41h,a cjne a,#60h,b4 mov 41h,#00h b2:jb downkey,b3 lcall delay
22、 jnb downkey,j9 sjmp b4 j9:lcall delay acall disp1 jnb downkey,j9 mov a,41h add a,#99h da a mov 41h,a cjne a,#99h,b4 mov 41h,#59h b3:acall disp1 lcall delay mov a,35h cjne a,#02h,bc mov 35h,#00h sjmp b4 bc:mov 35h,#02h b4:jb funkey,a2 lcall delay jnb funkey,j10 sjmp a2 j10:lcall delay jnb funkey,j10
23、 mov 35h,#03h a3:jb upkey,b5 lcall delay jnb upkey,j11 sjmp b5 名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 31 页 -j11:lcall delay acall disp2 jnb upkey,j11 mov a,50h add a,#01h mov 50h,a mov a,43h add a,#01h da a mov 43h,a b5:jb downkey,b6 lcall delay jnb downkey,j12 sjmp b6 j12:lcall delay acall disp2 jnb downk
24、ey,j12 mov a,50h add a,#99h mov 50h,a mov a,43h add a,#99h da a mov 43h,a b6:acall disp2 lcall delay mov a,35h cjne a,#03h,bd mov 35h,#00h sjmp b7 bd:mov 35h,#03h b7:jb funkey,a3 lcall delay jnb funkey,j13 sjmp a3 j13:lcall delay jnb funkey,j13 mov 35h,#04h a4:jb upkey,b8 lcall delay jnb upkey,j14 s
25、jmp b8 j14:lcall delay 名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 31 页 -acall disp2 jnb upkey,j14 mov a,51h add a,#01h mov 51h,a mov a,44h add a,#01h da a mov 44h,a cjne a,#99h,c0 mov 44h,#00h b8:jb downkey,b9 lcall delay jnb downkey,j15 sjmp b9 j15:lcall delay jnb downkey,j15 mov a,51h add a,#99h mov 51h,a mo
26、v a,44h add a,#99h da a mov 44h,a b9:acall disp2 lcall delay mov a,35h cjne a,#04h,be mov 35h,#00h sjmp c0 be:mov 35h,#04h c0:jb funkey,a4 lcall delay jnb funkey,j16 sjmp a4 j16:lcall delay jnb funkey,j16 mov 35h,#05h a5:jb upkey,c1 lcall delay jnb upkey,j58 sjmp c1 j58:lcall delay 名师资料总结-精品资料欢迎下载-名
27、师精心整理-第 16 页,共 31 页 -acall disp3 jnb upkey,j58 mov a,45h add a,#01h da a mov 45h,a cjne a,#13h,c3 mov 45h,#01h c1:jb downkey,c2 lcall delay jnb downkey,j17 sjmp c2 j17:lcall delay acall disp3 jnb downkey,j17 mov a,45h add a,#99h da a mov 45h,a cjne a,#99h,c3 mov 45h,#12h c2:acall disp3 lcall delay m
28、ov a,35h cjne a,#05h,cf mov 35h,#00h sjmp c3 cf:mov 35h,#05h c3:jb funkey,a5 lcall delay jnb funkey,j18 sjmp a5 j18:lcall delay jnb funkey,j18 mov 35h,#06h a6:jb upkey,c4 lcall delay jnb upkey,j19 sjmp c4 j19:lcall delay acall disp3 jnb upkey,j19 mov a,46h 名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 31 页 -add a
29、,#01h da a mov 46h,a mov a,45h cjne a,#02h,tian9 lcall runnian mov a,33h cjne a,#01h,tian7 mov a,46h;闰年cjne a,#30h,c8 mov 46h,#01h sjmp c4 c8:ljmp c6 tian7:mov a,46h;非闰年cjne a,#30h,j1 mov 46h,#29h mov a,46h j1:cjne a,#29h,j3 mov 46h,#01h sjmp c4 j3:ljmp c6 tian9:cjne a,#04h,tian10 sjmp tian40 tian10
30、:cjne a,#06h,tian20 sjmp tian40 tian20:cjne a,#09h,tian30 sjmp tian40 tian30:cjne a,#11h,tian14 tian40:mov a,46h cjne a,#32h,j2 mov 46h,#31h mov a,46h j2:cjne a,#31h,c6 sjmp tian8 tian14:mov a,46h cjne a,#32h,c6 tian8:mov 46h,#01h c4:jb downkey,c5 lcall delay jnb downkey,j20 sjmp c6 j20:lcall delay
31、acall disp3 名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 31 页 -jnb downkey,j20 mov a,46h add a,#99h da a mov 46h,a cjne a,#00h,c6 mov a,45h cjne a,#02h,ti9 lcall runnian mov a,33h cjne a,#01h,ti7 mov 46h,#29h ;闰年sjmp c5 ti7:mov 46h,#28h;非闰年sjmp c5 ti9:cjne a,#04h,ti10 sjmp ti40 ti10:cjne a,#06h,ti20 sjmp ti40 ti
32、20:cjne a,#09h,ti30 sjmp ti40 ti30:cjne a,#11h,ti14 ti40:mov 46h,#30h sjmp c5 ti14:mov 46h,#31h c5:acall disp3 lcall delay mov a,35h cjne a,#06h,cd mov 35h,#00h sjmp c6 cd:mov 35h,#06h c6:jnb funkey,a7 ljmp a6 a7:lcall delay jnb funkey,a7 ret nao:mov 39h,#01h mov 35h,#07h n3:jb upkey,n0 lcall delay
33、jnb upkey,j21 名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 31 页 -sjmp n0 j21:lcall delay jnb upkey,j21 mov a,4bh add a,#01h da a mov 4bh,a cjne a,#24h,n4 mov 4bh,#00h n0:jb downkey,n1 lcall delay jnb downkey,j22 sjmp n1 j22:lcall delay jnb downkey,j22 mov a,4bh add a,#99h da a mov 4bh,a cjne a,#99h,n4 mov 4bh,#2
34、3h n1:acall disp6 lcall delay mov a,35h cjne a,#07h,n2 mov 35h,#00h sjmp n4 n2:mov 35h,#07h n4:jb funkey,n3 lcall delay jnb funkey,j23 sjmp n3 j23:lcall delay jnb funkey,j23 mov 35h,#08h n9:jb upkey,n5 lcall delay jnb upkey,j24 sjmp n5 j24:lcall delay jnb upkey,j24 名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 31
35、 页 -mov a,4ch add a,#01h da a mov 4ch,a cjne a,#60h,n8 mov 4ch,#00h n5:jb downkey,n6 lcall delay jnb downkey,j25 sjmp n6 j25:lcall delay jnb downkey,j25 mov a,4ch add a,#99h da a mov 4ch,a cjne a,#99h,n8 mov 4ch,#59h n6:acall disp6 lcall delay mov a,35h cjne a,#08h,n7 mov 35h,#00h sjmp n8 n7:mov 35h
36、,#08h n8:jb funkey,n9 lcall delay jnb funkey,j26 sjmp n9 j26:lcall delay jnb funkey,j26 ret naoling:mov a,4bh cjne a,40h,m0 mov a,4ch cjne a,41h,m0 mov a,3ah cjne a,#01h,m3 sjmp m4 m3:mov a,4dh cjne a,42h,m0 mov 3ah,#01h 名师资料总结-精品资料欢迎下载-名师精心整理-第 21 页,共 31 页 -m4:acall speak acall disp1 sjmp mm m0:mov
37、 3ah,#00h mm:mov a,3ah cjne a,#01h,m5 sjmp naoling m5:ret speak:jb downkey,m9 lcall delay jnb downkey,j28 sjmp m9 j28:lcall delay jnb downkey,j28 sjmp m1 m9:clr P30 lcall delay1 setb P30 lcall delay sjmp m2 m1:mov 3ah,#00h m2:ret disp1:mov dptr,#tab;显示时间mov r0,#40h mov a,35h cjne a,#01h,aa mov r0,#3
38、6h aa:mov P1,#0feh mov a,r0 swap a anl a,#0fh cjne a,#00h,zz mov a,#0ah zz:movc a,a+dptr mov P2,a lcall delay mov P1,#0fdh mov a,30h cjne a,#15,lp1 mov a,r0 anl a,#0fh 名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 31 页 -add a,#0bh sjmp lp2 lp1:mov a,r0 anl a,#0fh lp2:movc a,a+dptr mov P2,a lcall delay mov r0,#40h
39、 inc r0 mov a,35h cjne a,#02h,bb mov r0,#36h bb:mov P1,#0fbh mov a,r0 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov a,r0 anl a,#0fh movc a,a+dptr mov P2,a lcall delay ret disp2:mov dptr,#tab;显示年份mov r1,#43h mov r7,#0feh mov a,35h cjne a,#03h,dd mov r1,#36h dd:mov P1,r7 lp3:mo
40、v a,r1 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov a,r7 rl a mov r7,a mov P1,r7 名师资料总结-精品资料欢迎下载-名师精心整理-第 23 页,共 31 页 -mov a,r1 anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov r1,#43h inc r1 mov a,35h cjne a,#04h,ee mov r1,#36h ee:mov a,r7 rl a mov r7,a mov P1,a djnz 34h,lp3 mov 34h,#0
41、2 mov r1,#43h ret disp3:mov dptr,#tab;显示日期mov r1,45h mov r7,#0feh mov a,35h cjne a,#05h,ff mov r1,36h ff:mov P1,r7 lp4:mov a,r1 swap a anl a,#0fh cjne a,#00h,kk mov a,#0ah kk:movc a,a+dptr mov P2,a lcall delay mov a,r7 rl a mov r7,a mov P1,r7 mov a,r1 anl a,#0fh movc a,a+dptr mov P2,a lcall delay mo
42、v r1,46h 名师资料总结-精品资料欢迎下载-名师精心整理-第 24 页,共 31 页 -mov a,35h cjne a,#06h,hh mov r1,36h hh:mov a,r7 rl a mov r7,a mov P1,a djnz 34h,lp4 mov 34h,#02 mov r1,45h ret disp4:mov dptr,#tab;显示时闹菜单mov r2,47h mov P1,#0feh mov a,r2 swap a anl a,#0fh add a,#0bh movc a,a+dptr mov P2,a lcall delay mov P1,#0fdh mov a,
43、r2 anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov r2,48h mov P1,#0fbh mov a,r2 swap a anl a,#0fh add a,#0ch movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov a,r2 anl a,#0fh movc a,a+dptr 名师资料总结-精品资料欢迎下载-名师精心整理-第 25 页,共 31 页 -mov P2,a lcall delay ret disp5:mov dptr,#tab;显示闹钟开关菜单mov r3,49h mov P
44、1,#0feh mov a,r3 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0fdh mov a,r3 anl a,#0fh add a,#0eh movc a,a+dptr mov P2,a lcall delay mov r2,4ah mov P1,#0fbh mov a,r3 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov a,r3 anl a,#0fh add a,#0fh movc a,a+dptr mov P2,
45、a lcall delay ret disp6:mov dptr,#tab;显示闹钟mov r4,4bh mov a,35h cjne a,#07h,xx 名师资料总结-精品资料欢迎下载-名师精心整理-第 26 页,共 31 页 -mov r4,36h xx:mov P1,#0feh lp13:mov a,r4 swap a anl a,#0fh cjne a,#00h,ll mov a,#0ah ll:movc a,a+dptr mov P2,a lcall delay mov P1,#0fdh mov a,r4 anl a,#0fh movc a,a+dptr mov P2,a lcall
46、 delay mov r4,4ch mov a,35h cjne a,#08h,gg mov r4,36h gg:mov P1,#0fbh mov a,r4 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov a,r4 anl a,#0fh movc a,a+dptr mov P2,a lcall delay ret disp7:mov dptr,#tab mov r5,3ch mov P1,#0feh mov a,r5 swap a anl a,#0fh movc a,a+dptr mov P2,a lc
47、all delay 名师资料总结-精品资料欢迎下载-名师精心整理-第 27 页,共 31 页 -mov P1,#0fdh mov r5,3ch mov a,r5 anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0fbh mov r5,3bh mov a,r5 swap a anl a,#0fh movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov r5,3bh mov a,r5 anl a,#0fh movc a,a+dptr mov P2,a lcall delay ret disp
48、8:mov dptr,#tab mov P1,#0fdh mov a,#00h movc a,a+dptr mov P2,a lcall delay mov P1,#0fbh mov a,#25 movc a,a+dptr mov P2,a lcall delay mov P1,#0f7h mov a,#25 movc a,a+dptr mov P2,a lcall delay ret timer:push PSW;时间中断push ACC 名师资料总结-精品资料欢迎下载-名师精心整理-第 28 页,共 31 页 -mov TH0,3CH mov TL0,0b0h djnz 30h,retur
49、n0 mov 30h,#15 lcall shij return0:pop ACC pop PSW reti timer1:push PSW;时间中断push ACC mov TH1,0d8H mov TL1,0f0h mov a,3bh add a,#01h da a mov 3bh,a cjne a,#00h,return4 mov a,3ch add a,#01h da a mov 3ch,a return4:pop ACC pop PSW reti shij:mov a,42h;正常走时处理add a,#01h da a mov 42h,a cjne a,#60h,s1 mov 42h
50、,#00h sjmp s0 s1:ljmp return1 s0:mov a,41h add a,#01h da a mov 41h,a cjne a,#60h,return1 mov 41h,#00h mov a,40h add a,#01h da a mov 40h,a 名师资料总结-精品资料欢迎下载-名师精心整理-第 29 页,共 31 页 -cjne a,#24h,return1 mov 40h,#00h mov a,46h add a,#01h da a mov 46h,a mov a,45h cjne a,#02h,tian0 lcall runnian mov a,33h cjn