日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx

上传人:b****3 文档编号:6906661 上传时间:2023-05-07 格式:DOCX 页数:17 大小:79.49KB
下载 相关 举报
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第1页
第1页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第2页
第2页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第3页
第3页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第4页
第4页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第5页
第5页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第6页
第6页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第7页
第7页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第8页
第8页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第9页
第9页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第10页
第10页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第11页
第11页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第12页
第12页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第13页
第13页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第14页
第14页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第15页
第15页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第16页
第16页 / 共17页
日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx

《日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx》由会员分享,可在线阅读,更多相关《日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx(17页珍藏版)》请在冰点文库上搜索。

日历时钟单片机课程设计附汇编程序+方案图+模块图+ddb模拟图Word文档格式.docx

AD6EQU45H;

初始化存储单元结束

ORG0000H

LJMPMAIN

ORG000BH;

T0中断入口

LJMPINT

ORG0030H

MAIN:

MOVR0,#AD1

MOVR7,#06H

LOOP0:

MOVA,#00H

MOV@R0,A

INCR0

DJNZR7,LOOP0;

R0~R7清零

MOVAD1,#37H

MOVAD2,#22H

MOVAD3,#0CH

MOVAD4,#08H

MOVAD5,#08H

MOVAD6,#08H;

初始化时间为12:

34:

56,日期为08年08月08日

MOVIE,#82H;

允许T0中断

MOVTMOD,#01H;

T0允许工作

MOVTH0,#4CH

MOVTL0,#00H;

送入计数初值0.05s

MOVR5,#00H

初始化结束

SETBTR0;

T0使能

LOOP:

LCALLTEST;

扫描键盘

CJNEA,#0FEH,NEXTD;

0FEH为1键

LCALLDY1MS

LCALLKEYDONE

NEXTD:

SJMPLOOP;

扫描键盘看是否需要调整日历

DISPLAY:

CJNEA,#0DFH,ERSHISI1;

0DFH为6键

SETBPSW.1;

显示十二小时

LJMPTIMEZHUAN

ERSHISI1:

CJNEA,#0EFH,ERSHISI2;

0EFH为5键

CLRPSW.1;

显示二十四小时

CLRCHANGE2

LJMPTIMEZHUAN

ERSHISI2:

CJNEA,#0CFH,CHANGE;

0CFH为5+6键

CLRPSW.1

SETBCHANGE2;

CHANGE2=1表示把十二表示法转换成二十四小时

CHANGE:

TIMEZHUAN:

LCALLTEST

CJNEA,#7FH,NEXTL;

7FH为8键

SETBPSW.5

LJMPZHUAN1

NEXTL:

CJNEA,#0BFH,ZHUAN1;

0BFH为7键

CLRPSW.5

ZHUAN1:

JBPSW.5,DAY;

PSW.5=0调整时间,为1则调整日期

MOVA,AD1;

调整时间键码分离

MOVB,#0AH

DIVAB

MOVR0,#DBUF

MOV@R0,B

MOVA,AD2

JBPSW.1,TIMEZHUAN1

LJMPTIMEZHUAN2

TIMEZHUAN1:

;

判断时间是否大于12

MOVA,AD3

MOVB,#0CH

SUBBA,B

JCNORMALT

MOVAD3,A

LJMPNORMALT

TIMEZHUAN2:

JNBCHANGE2,NORMALT;

判断是否加12

ADDA,#

CLRCHANGE2

NORMALT:

SJMPDDISP

DAY:

调整日期键码分离

MOVA,AD4

MOVA,AD5

MOVA,AD6

DDISP:

显示,串入并处的方式,上升沿写入

MOVR7,#06H

LOOP2:

MOVR6,#08H

MOVA,@R0

MOVDPTR,#TAB

MOVCA,@A+DPTR;

显示秒

CLRC

LOOP3:

RRCA

CLRCLK

MOVDISP,C

SETBCLK

DJNZR6,LOOP3

DJNZR7,LOOP2

RET

KEYDONE:

人工手动调整日历

AGAINB:

LCALLDY250MS;

防抖250ms

CJNEA,#7FH,NEXTL1;

LJMPZHUAN12

NEXTL1:

CJNEA,#0BFH,ZHUAN12

CLRPSW.5;

以上为扫描键盘并设置PSW.5

ZHUAN12:

JBPSW.5,NEXT6B;

判断调整日期还是时间

CJNEA,#0FDH,NEXTA;

0FDH为2键,如果按键值为FDH则结束

LJMPBACK

NEXTA:

CJNEA,#0FBH,NEXTB;

0FBH为3键

INCAD1;

秒加1

MOVA,AD1

CJNEA,#3CH,AGAINA

MOVAD1,#00H

SJMPAGAINA

NEXTB:

CJNEA,#0F7H,NEXTC;

0F7H为4键

INCAD2;

分加1

MOVAD2,#00H

NEXTC:

CJNEA,#0EFH,AGAINA;

INCAD3;

时加1

CJNEA,#18H,AGAINA

MOVAD3,#00H

NEXTT:

NEXT6B:

CJNEA,#0FDH,NEXTAB;

JIESHUJIAN;

0FDH为2键

NEXTAB:

CJNEA,#0FBH,NEXTBB;

INCAD4;

日加1

CJNEA,#20H,AGAINA

MOVAD4,#01H

NEXTBB:

CJNEA,#0F7H,NEXTCB;

INCAD5;

月加1

CJNEA,#0DH,AGAINA

MOVAD5,#01H

NEXTCB:

INCAD6;

年加1

CJNEA,#64H,AGAINA

MOVAD6,#00H

AGAINA:

LCALLDISPLAY

LJMPAGAINB

BACK:

INT:

INCR5

CJNER5,#20,NEXTS1;

循环20次,每次循环为0.05秒,共0.05*20=1秒

MOVR5,#00H

LCALLDISPLAY;

满一秒后的显示

LJMPMEND

NEXTS1:

LJMPNEXTS;

MEND:

CJNEA,#0AH,LAREMEND

SETBLED;

满十秒关灯,否则继续

LAREMEND:

INCAD1

CJNEA,#3CH,NEXTS2

LJMPMEND1

NEXTS2:

以上为看是否修改秒,满60,分加一否则跳转继续

MEND1:

INCAD2

CJNEA,#3CH,NEXTS3

LJMPMEND2

NEXTS3:

以上为看是否修改分,满60,时加一否则跳转继续

MEND2:

INCAD3

CJNEA,#0Ah,ZAIJIANCHA

AJMPBAOSHI

ZAIJIANCHA:

CJNEA,#0Bh,ZHENGCHANG

BAOSHI:

CLRLED;

以上为两个报时开灯

ZHENGCHANG:

CJNEA,#18H,NEXTS4;

不满二十四小时跳出

LJMPMEND3;

满二十四后跳到清零小时继续加天

NEXTS4:

LJMPNEXTS

MEND3:

MOVAD3,#00H

INCAD4

CJNEA,#02H,JIXUTIAN;

判断是否为二月份

MOVB,#4H

MOVA,B

JZRUNNIAN;

判断是否为闰年

PINGNIAN:

MOVA,AD4;

平年

CJNEA,#1DH,NEXTS

AJMPJIXUYUE

RUNNIAN:

闰年

CJNEA,#1EH,NEXTS

JIXUTIAN:

不为二月,再查看是那个月

CJNEA,#01H,PAN1

LJMPSANSHIYI

PAN1:

CJNEA,#03H,PAN3

PAN3:

CJNEA,#04H,PAN4

LJMPSANSHI

PAN4:

CJNEA,#05H,PAN5

PAN5:

CJNEA,#06H,PAN6

PAN6:

CJNEA,#07H,PAN7

PAN7:

CJNEA,#08H,PAN8

PAN8:

CJNEA,#09H,PAN9

PAN9:

CJNEA,#10H,PAN10

PAN10:

CJNEA,#11H,SANSHIYI

SANSHIYI:

月份:

1,3,5,7,8,10,12

CJNEA,#20H,NEXTS

SANSHI:

月份:

2,4,6,8,11

CJNEA,#1FH,NEXTS

JIXUYUE:

满月后加年

CJNEA,#0DH,NEXTS

INCAD6

CJNEA,#64H,NEXTS;

年满100后清零

NEXTS:

再赋初值

MOVTL0,#00H

RETI

DY250MS:

延迟防抖250ms

MOVR4,#0FAH

LOOP8:

DJNZR4,LOOP8

DY1MS:

延迟防抖1ms

MOVR5,#0B0H

LOOP7:

MOVR7,#2AH

DJNZR7,$

DJNZR5,LOOP7

键盘扫描子程序

TEST:

MOVR7,#08H

SETBP1.7

CLRP1.7;

低电平锁存

NOP

SETBP1.7;

高电平输出

MOVA,#0FFH

AGAIN3:

CLRP2.3

MOVC,P3.5;

把p3.5的状态存入C

SETBP2.3

RLCA;

键盘状态存入A

DJNZR7,AGAIN3;

扫描八个按键

TAB:

DB88H,0EBH,4CH,49H,2BH,19H,18H,0CBH,08H,09H

子程序功能索引:

TEST——扫描键盘

DDISP——显示

NEXTS——重新赋初值

DY1MS——延迟防抖1ms

END

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2