电子钟设计程序神话boss.docx
- 文档编号:25557464
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:17
- 大小:1.40MB
电子钟设计程序神话boss.docx
《电子钟设计程序神话boss.docx》由会员分享,可在线阅读,更多相关《电子钟设计程序神话boss.docx(17页珍藏版)》请在冰豆网上搜索。
电子钟设计程序神话boss
ORG0000H
LJMPMAIN
ORG000BH
LJMPWB
ORG001BH
LJMPBEGIN1
MAIN:
MOVSP,#30H;主程序开始
MOVR0,#10H
MOVR1,#70H
LBO:
MOV@R1,#00H;初始化单元
INCR1
DJNZR0,LBO
MOV79H,#10;显示“-.”
MOV7CH,#10
MOV73H,#01H
CLRF0;清零标志位
MOVR4,#14H;循环赋初值
DELAY1:
MOVTMOD,#01H;定时50毫秒程序段
MOVTCON,#00H
MOVIE,#8AH
MOVIP,#04H
MOVTH0,#3CH;定时赋初值
MOVTL0,#0A0H
MOVTH1,#242;整点报时定时赋初值
MOVTL1,#23
KEY:
ACALLKS;键盘扫描程序段
JNZLK1;有键闭合
ACALLDIR
AJMPKEY;没有键闭合
LK1:
ACALLDIR;驱动显示程序防抖
ACALLDIR
ACALLKS;确认有键闭合?
JNZLK2;真有键闭合
ACALLDIR;没有键闭合是误按回去!
AJMPKEY
LK2:
MOV74H,A
JBACC.0,FW1;复位键按下转向复位程序
CLRA
ADDA,75H
JBACC.0,TZ1;判断是否是调整时的其他按键是就转向调整程序
AJMPKEY;不是!
不与理睬
KS:
MOVA,P1;键盘扫描子程序
CPLA
ANLA,#0FFH
RET
FW:
MOVR6,#60
SSS:
ACALLDIR
DJNZR6,SSS;复位/调整/启动程序
MOVA,73H
JBACC.1,XM2;第一次复位转显示P
JBACC.2,XM1;第二次复位转向调整并清零P字
JNBACC.3,FW3;第三次及以后转向调整和启动程序
XM1:
MOVR0,#08H
MOVR1,#77H
LO1:
MOV@R1,#00H;清零单元去P字
INCR1
DJNZR0,LO1
MOV79H,#20;显示“_.”
MOV7CH,#20
CLRA;清除73单元使其不再参与判断第几次复位
MOV73H,A
JNBACC.3,FW3
XM2:
MOV77H,#11;显示P程序
MOVR0,#07H
MOVR1,#7EH
LO2:
MOV@R1,#44;显P字
DECR1
DJNZR0,LO2
MOVR6,#60
SSS1:
ACALLDIR
DJNZR6,SSS1;延迟防抖
JMPKEY
FW1:
JBF0,FW2
SETBF0
MOVA,73H
RLA;73单元左移用于判断是第几次复位
MOV73H,A
JMPFW
FW2:
MOVA,73H
RLA;左移
MOV73H,A
CLRF0
JMPFW
FW3:
JBF0,LOOPX
MOVA,75H;调整/启动次数加1
ADDA,#01H;用于判断是调整还是启动
MOV75H,A
JMPTZ
LOOPX:
MOVA,75H;调整/启动次数加1
ADDA,#01H
MOV75H,A
MOVR6,#60
SSS2:
ACALLDIR
DJNZR6,SSS2;延迟防抖
CLRTR0
SETBTR0;启动定时
JMPKEY
TZ:
CLRTR0
MOVR6,#60
SSS3:
ACALLDIR
DJNZR6,SSS3;延迟防抖
JMPKEY
TZ1:
CLRTR0;调整程序段
MOVA,74H
JBACC.1,AD1;时针加1
JBACC.2,AD2;分针加1
JBACC.3,AD3;秒针加1
JBACC.4,EG1;以下为恶搞程序赫赫...
JBACC.5,EG2
JBACC.6,EG3
JBACC.7,EG4
MOVR6,#60
SSS4:
ACALLDIR
DJNZR6,SSS4;延迟防抖
JMPKEY
AD1:
MOVR0,#7EH;时针加1程序
MOVR6,#60
SSS5:
ACALLDIR
DJNZR6,SSS5;延迟防抖
ACALLJ1;加一
CJNER3,#24H,FH2;进位清零
MOV7EH,#00H
MOV7DH,#00H
JMPKEY
AD2:
MOVR0,#7BH;分针加1程序
MOVR6,#60
SSS6:
ACALLDIR
DJNZR6,SSS6;延迟防抖
ACALLJ1;加一
CJNER3,#60H,FH2;进位清零
MOV7BH,#00H
MOV7AH,#00H
JMPKEY
AD3:
MOVR0,#78H;秒针加1程序
MOVR6,#60
SSS7:
ACALLDIR
DJNZR6,SSS7;延迟防抖
ACALLJ1;加一
CJNER3,#60H,FH2;进位清零
MOV78H,#00H
MOV77H,#00H
JMPKEY
FH2:
JMPKEY
EG1:
MOVR2,#08H;恶搞小程序显示shen_.hua
MOVA,#12
MOVR1,#7EH
AI1:
MOV@R1,A
DECR1
INCA
DJNZR2,AI1
JMPKEY
EG2:
MOVR2,#08H;恶搞小程序显示_.cc_.boss
MOVA,#20
MOVR1,#7EH
AI2:
MOV@R1,A
DECR1
INCA
DJNZR2,AI2
JMPKEY
EG3:
MOVR2,#08H;恶搞小程序显示love_you
MOVA,#28
MOVR1,#7EH
AI3:
MOV@R1,A
DECR1
INCA
DJNZR2,AI3
JMPKEY
EG4:
MOVR2,#08H;恶搞小程序显示
MOVA,#36
MOVR1,#7EH
AI4:
MOV@R1,A
DECR1
INCA
DJNZR2,AI4
JMPKEY
WB:
PUSHACC;现场保护
PUSHPSW
CLRTR0
MOVTH0,#3CH
MOVTL0,#0A0H
SETBTR0
DJNZR4,ZDFH;16次中断未到中断退出
JS:
MOVR4,#014H;16次中断到重赋R4初值
MOVR0,#78H;指向秒计时单元(77H-78H)
ACALLJ1;加1
MOVA,R3;数据放入A(R3为2个单元组合成的十进制数)
CLRC
CJNEA,#60H,JM
JM:
JCZDFH;小于60秒时中断退出
ACALLQC;清0
MOVR0,#7BH;指向分计时单元(7AH-7BH)
ACALLJ1;加1
MOVA,R3
CLRC
CJNEA,#60H,JH
JH:
JCZDFH;小于60分时中断退出
SETBTR1;启动报时
ACALLQC;清0
MOVR0,#7EH;指向小时计时单元(7DH-7EH)
ACALLJ1;加1
MOVA,R3
CLRC
CJNEA,#24H,FC
FC:
JCZDFH;小于24小时中断退出
ACALLQC;清0
ZDFH:
POPPSW;中断返回程序段
POPACC;恢复现场
RETI
QC:
CLRA;清0程序段
MOV@R0,A
DECR0
MOV@R0,A
RET
;所有加一程序段
J1:
MOVA,@R0;取当前计时单元数据到A
DECR0;指向前一地址
SWAPA
ORLA,@R0;合并单元
ADDA,#01H
DAA;十进制调整
MOVR3,A
ANLA,#0FH;取低位
MOV@R0,A;
MOVA,R3
INCR0
SWAPA
ANLA,#0FH;取高位
MOV@R0,A
RET
DIR:
MOVR1,#77H;数码管显示程序
MOVR3,#0FEH
LD0:
MOVP2,R3
MOVA,@R1
MOVDPTR,#DSEG1;查表寻段码
MOVCA,@A+DPTR
MOVP0,A
ACALLDELAY
INCR1;加一显示
MOVA,R3
JNBACC.7,FH;循环8次后返回
RLA
MOVR3,A
AJMPLD0
FH:
RET
DELAY:
MOVR5,#80;40微秒延迟程序段
LOOP8:
NOP;显示时用
NOP
NOP
DJNZR5,LOOP8
RET
BEGIN1:
PUSHACC;整点报时程序段
PUSHPSW
CPLP3.4
CLRTR1
MOVTH1,#242
MOVTL1,#23
SETBTR1
MOVA,66H
INCA
MOV66H,A
CJNEA,0FFH,JHDH;产生255个周期的波形用于报时
CLRTR1
JHDH:
POPPSW
POPACC
RETI
;;;;
;10;11;12;20;28;36;学号
DSEG1:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,03FH,08CH,92H,89H,86H,0C8H,77H,89H,0C1H,88H,77H,0C6H,0C6H,77H,83H,0A3H,92H,92H,0C7H,0C0H,0C1H,86H,0F7H,91H,0C0H,0C1H,0C0H,80H,77H,0C0H,0B0H,77H,0F9H,92H,0FFH,7FH;段码表
;-.;P;S;H;E;N;_.;H;U;A;_.;C;C;_.;b;O;S;S;L;O;V;E;_;Y;OU;灭
END;;程序结束谢谢大家阅读嘿嘿..不懂请来找本人
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子钟 设计 程序 神话 boss