资源描述:
《汇编编写的电子时钟程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、汇编编写的电子时钟程序电子时钟汇编程序默认分类2008-01-1414:59:11阅读1254评论1字号:大中小原理说明:本系统采用单片机AT89S51设计一个多功能电子时钟能实现时分秒年月日显示,能定时,还要调整时间、日期、定时时间。单片机AT89S51的P0口接数码管的7段,P2口接数码管的位选。P1.0-P1.5接按键,P1.7按蜂鸣,数码管是两个四位一体共阴的单片机复位后时钟默认的时间为00-00-00、默认的日期为07-11-02、默认的定时时间为02-23-59。程序如下:SET_1BITP1.0;秒、日控制键SET_2BITP1.1;分
2、、月控制键SET_3BITP1.2;时、年控制键SET_4BITP1.3;切换时分秒显示SET_5BITP1.4;切换年月日显示SET_6BITP1.5;定时设置键SECONDEQU30H;秒寄储单元MINUTEEQU31H;分寄储单元HOUREQU32H;时寄储单元DAYEQU33H;日寄储单元MONTHEQU34H;月寄储单元YEAREQU35H;年寄储单元TCNTEQU36H;计数寄储单元YYYEQU37HMDEQU38H;定时控制分寄储单元HDEQU39H;定时控制时寄储单元RDAYEQU3AH;定时控制日寄储单元SDYEQU3BH;报警延时
3、寄储单元ORG0000HAJMPTANGORG000BHLJMPINT_T0TANG:MOVDPTR,#TABMOVHOUR,#0;对时、分、秒、年、月、日初始化MOVMINUTE,#0MOVSECOND,#0MOVDAY,#2MOVMONTH,#11MOVYEAR,#07MOVMD,#59MOVHD,#23MOVRDAY,#2MOVSDY,#0MOVTCNT,#0MOVTMOD,#01HMOVTH0,#4CHMOVTL0,#00HMOVIE,#82HSETBTR0;******************************************
4、***************************************;判断定时日、时、分是否有控制键按下,是哪一个键按下,并调用显示定时日、时、分子程序;*********************************************************************************LJMPA1KS1:LCALLDISPLAY3JNBSET_6,A1JNBSET_1,SS2JNBSET_2,SS3JNBSET_3,SS4LJMPKS1SS2:LCALLDELAYJBSET_1,KS1INCMDMOVA,MDS
5、ETBP1.7CJNEA,#60,SJ1MOVMD,#-1LJMPKS1SS3:LCALLDELAYJBSET_2,KS1INCHDMOVA,HDSETBP1.7CJNEA,#24,SJ2MOVHD,#-1LJMPKS1SS4:LCALLDELAYJBSET_3,KS1INCRDAYMOVA,MONTHADDA,#9MOVCA,@A+DPTRMOVYYY,AMOVA,RDAYSETBP1.7CJNEA,YYY,SJ3MOVRDAY,#0LJMPKS1SJ1:JBSET_1,SS2LCALLDISPLAY3SJMPSJ1SJ2:JBSET_2,SS2L
6、CALLDISPLAY3SJMPSJ2SJ3:JBSET_3,SS2LCALLDISPLAY3SJMPSJ3;*************************************************************;判断时分秒是否有控制键按下,是哪一个键按下,并调用显示时分秒;*************************************************************A1:LCALLDISPLAY1JNBSET_5,A2JNBSET_6,KS1JNBSET_1,S1JNBSET_2,S2JNBSET_3
7、,S3LJMPA1S1:LCALLDELAY;去抖动JBSET_1,A1INCSECOND;秒值加1MOVA,SECONDCJNEA,#60,timej0;判断是否加到60秒MOVSECOND,#0LJMPK1S2:LCALLDELAYJBSET_2,A1K1:INCMINUTE;分钟值加1MOVA,MINUTECJNEA,#60,timej1;判断是否加到60分MOVMINUTE,#0LJMPK2S3:LCALLDELAYJBSET_3,A1K2:INCHOUR;小时值加1MOVA,HOURCJNEA,#24,timeJ2;判断是否加到24小时MO
8、VHOUR,#0MOVMINUTE,#0MOVSECOND,#0LJMPDLJMPA1;**********