首页 单片机万年历程序

单片机万年历程序

举报
开通vip

单片机万年历程序单片机万年历程序 MS50_BUF EQU 30H S1_BUF EQU 31H SEC_BUF EQU 32H MIN_BUF EQU 33H HOUR_BUF EQU 34H DAY_BUF EQU 35H MON_BUF EQU 36H YEA_BUF EQU 37H ;分配存储空间 ORG 0000H LJMP MAIN ORG 000BH LJMP TO_ISR ORG 0030H MAIN: MOV SP,#70H LCALL INIT M1: JNB S1_LAB,M1 ;S1_LAB...

单片机万年历程序
单片机万年历程序 MS50_BUF EQU 30H S1_BUF EQU 31H SEC_BUF EQU 32H MIN_BUF EQU 33H HOUR_BUF EQU 34H DAY_BUF EQU 35H MON_BUF EQU 36H YEA_BUF EQU 37H ;分配存储空间 ORG 0000H LJMP MAIN ORG 000BH LJMP TO_ISR ORG 0030H MAIN: MOV SP,#70H LCALL INIT M1: JNB S1_LAB,M1 ;S1_LAB=1,原地执行 CLR S1_LAB LCALL T_SEC JNB F0,M1 CLR F0 LCALL T_MIN JNB F0,M1 CLR F0 LCALL T_HOUR JNB F0,M1 CLR F0 LCALL T_DAY JNB F0,M1 CLR F0 LCALL T_MON JNB F0,M1 CLR F0 LCALL T_YEAR LJMP M1 INIT: MOV TMOD,#02H;计数器T0不受外部控制,定时方式,工作方式2。 MOV TH0,#06H;定时器的初值为6 SETB TR0;开始计数 SETB ET0;溢出中断允许 SETB EA;开中断 MOV MS50_BUF,#0;初始化清零 MOV S1_BUF,#0;初始化清零 CLR S1_LAB;初始化清零 RET TO_ISR: PUSH PSW PUSH ACC INC MS50_BUF MOV A,MS50_BUF CLR C SUBB A,#200;晶振是12MHZ,12分频后位1us,(256-6)*200=50ms JC TS1 MOV MS50_BUF,#0 INC S1_BUF MOV A,S1_BUF CLR C SUBB A,#20;50*20=1s JC TS1 MOV S1_BUF,#0 SETB S1_LAB TS1: POP ACC POP PSW RETI END ;产生秒 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf T_SEC: MOV A,SEC_BUF ADD A,#1 DA A ;十进制调整 CJNE A,#60H,T_SEC1;A不等于60,则转T_SEC1 T_SEC2: MOV SEC_BUF,#0;等于60,则SEC_BUF置0 SETB F0;F0置1 RET T_SEC1: JNC T_SEC2;借位为0即A>60则转T_SEC2 CLR F0 MOV SEC_BUF,A RET ;秒进分 T_MIN: MOV A,MIN_BUF ADD A,#1 DA A CJNE A,#60H,T_MIN1 T_MIN2: MOV MIN_BUF,#0 SETB F0 RET T_MIN1: JNC T_MIN2 CLR F0 MOV MIN_BUF,A RET ;分进时 T_HOUR: MOV A,HOUR_BUF ADD A,#1 DA A CJNE A,#24H,T_HOUR1 T_HOUR2:MOV HOUR_BUF,#0 SETB F0 RET T_HOUR1:JNC T_HOUR2 CLR F0 MOV HOUR_BUF,A RET ;小时进天 T_DAY: MOV A,YEA_BUF LCALL BCD_TO_B ;BCD码转化为二进制 MOV B,#4 DIV AB MOV A,B JZ T_DAY2 ;闰年则转T_DAY2 MOV A,MON_BUF T_DAY12:LCALL BCD_TO_B DEC A ;月份参数减1 MOV DPTR,#MON_TAB MOVC A,@A+DPTR ADD A,#1;查出之后再加1 MOV B,A;本月那天转化为下个月的界限 MOV A,DAY_BUF ADD A,#1;当前日参数加1 DA A CJNE A,B,T_DAY11 T_DAY1: MOV DAY_BUF,#1 SETB F0 RET T_DAY11:JNC T_DAY1 MOV DAY_BUF,A CLR F0 RET T_DAY2: MOV A,MON_BUF CJNE A,#02H,T_DAY12;判断是否为2月,不是2月则转到T_DAY12 MOV B,#30H T_DAY21:MOV A,DAY_BUF ADD A,#1 DA A CJNE A,B,T_DAY22 T_DAY23:MOV DAY_BUF,#1 SETB F0 RET T_DAY22:JNC T_DAY23 MOV DAY_BUF,A CLR F0 RET MON_TAB DB 31H,28H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H;天进月 T_MON MOV A,MON_BUF ADD A,#1 DA A CJNE A,#12H,T_MON1 T_MON2: MOV MON_BUF,#0 SETB F0 RET T_MON1: JNC T_MON2 CLR F0 MOV MON_BUF,A RET ;月进年 T_YEAR: MOV A,YEA_BUF ADD A,#1 DA A RET ;年加1 BCD_TO_B:MOV R0,A SWAP A ANL A,#0FH MOV B,#10 MUL A,B MOV B,A MOV A,R0 ANL A,#0FH ADD A,B RET
本文档为【单片机万年历程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_105949
暂无简介~
格式:doc
大小:18KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-09-27
浏览量:13