基于某总汇编语言编写的数码管显示时钟程序.docx
- 文档编号:1446110
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:11
- 大小:41.86KB
基于某总汇编语言编写的数码管显示时钟程序.docx
《基于某总汇编语言编写的数码管显示时钟程序.docx》由会员分享,可在线阅读,更多相关《基于某总汇编语言编写的数码管显示时钟程序.docx(11页珍藏版)》请在冰点文库上搜索。
基于某总汇编语言编写的数码管显示时钟程序
如图用汇编语言编写的可调时钟(用定时器定时,不精准),此程序只是提供一个idea
操作:
最上面的键是开始调整键,后面依次为时分秒的切换键、加键、减键、调整完成键。
程序如下:
SHIEQUR2
FENEQUR3
MIAOEQUR4
CHANGEEQUR5
ORG00H
LJMPMAIN
ORG000BH//中断入口
LJMPITOR
ORG60H
MAIN:
MOVTMOD,#01H//初始化定时器
MOVTH0,#3CH
MOVTL0,#0B0H//50mS
SETBET0
SETBEA
CLRF0//键盘设定标志位
MOVR0,#00H
MOVR1,#00H
MOVP0,#0FFH
MOVSHI,#00H
MOVFEN,#00H
MOVMIAO,#00H
MOVCHANGE,#00H
SETBTR0//打开定时器
M1:
LJMPKEY//键盘扫描
M2:
LCALLINIT//动态显示
LJMPM1
INIT:
MOVA,SHI//显示函数
MOVB,#0AH
DIVAB
MOV40H,A
MOV41H,B
CLRP2.0
CLRP2.1
CLRP2.2
JNBF0,O1
CJNECHANGE,#00H,O1
CJNER1,#0,O1
MOVP1,#00H
CPLP2.7
LCALLDELAY
LJMPO10
O1:
MOVDPTR,#TABLE
MOVA,40H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H
O10:
CLRP2.0
CLRP2.1
SETBP2.2
JNBF0,O2
CJNECHANGE,#00H,O2
CJNER1,#0,O2
MOVP1,#00H
LCALLDELAY
LJMPO20
O2:
MOVDPTR,#TABLE
MOVA,41H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H
O20:
CLRP2.0//显示小时
SETBP2.1
CLRP2.2
MOVP1,#040H
LCALLDELAY//显示分隔符
MOVP1,#00H
MOVA,FEN
MOVB,#0AH
DIVAB
MOV40H,A
MOV41H,B
CLRP2.0
SETBP2.1
SETBP2.2
JNBF0,O3
CJNECHANGE,#01H,O3
CJNER1,#0,O3
MOVP1,#00H
LCALLDELAY
LJMPO30
O3:
MOVDPTR,#TABLE
MOVA,40H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H
O30:
SETBP2.0
CLRP2.1
CLRP2.2
JNBF0,O4
CJNECHANGE,#01H,O4
CJNER1,#0,O4
MOVP1,#00H
LCALLDELAY
LJMPO40
O4:
MOVDPTR,#TABLE
MOVA,41H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H//显示分钟
O40:
SETBP2.0
CLRP2.1
SETBP2.2
MOVP1,#040H
LCALLDELAY//显示分隔符
MOVP1,#00H
MOVA,MIAO
MOVB,#0AH
DIVAB
MOV40H,A
MOV41H,B
SETBP2.0
SETBP2.1
CLRP2.2
JNBF0,O5
CJNECHANGE,#02H,O5
CJNER1,#0,O5
MOVP1,#00H
LCALLDELAY
LJMPO50
O5:
MOVDPTR,#TABLE
MOVA,40H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H
O50:
SETBP2.0
SETBP2.1
SETBP2.2
JNBF0,O6
CJNECHANGE,#02H,O6
CJNER1,#0,O6
MOVP1,#00H
LCALLDELAY
LJMPO60
O6:
MOVDPTR,#TABLE
MOVA,41H
MOVCA,@A+DPTR
MOVP1,A
LCALLDELAY
MOVP1,#00H//显示秒
O60:
RET
KEY:
MOVA,P0
XRLA,#0FFH
CJNEA,#00H,A1
LJMPM2
A1:
LCALLDELAY1
MOVA,P0
XRLA,#0FFH
CJNEA,#00H,KEY1
LJMPM2
KEY1:
CJNEA,#80H,KEY2//按键1、开始键
SETBF0
//CLRTR0
JNBP0.7,$
LJMPM2
KEY2:
CJNEA,#40H,KEY3//按键2、切换键
JNBF0,B1
INCCHANGE
MOVA,CHANGE
CJNEA,#03,B2
MOVCHANGE,#00H
B1:
JNBP0.6,$
LJMPM2
B2:
JNBP0.6,$
LJMPM2
KEY3:
CJNEA,#20H,KEY4//按键3、加键
JNBF0,C1
MOVA,CHANGE
CJNEA,#00,C2
INCSHI
CJNESHI,#24,C1
MOVSHI,#00H
C1:
JNBP0.5,$
LJMPM2
C2:
CJNEA,#01,C4
INCFEN
CJNEFEN,#60,C3
MOVFEN,#00H
C3:
JNBP0.5,$
LJMPM2
C4:
INCMIAO
CJNEMIAO,#60,C5
MOVMIAO,#00H
C5:
JNBP0.5,$
LJMPM2
KEY4:
CJNEA,#10H,KEY5//按键4、减键
JNBF0,D1
MOVA,CHANGE
CJNEA,#00,D2
CJNESHI,#00H,D0
MOVSHI,#24
D0:
DECSHI
D1:
JNBP0.4,$
LJMPM2
D2:
CJNEA,#01,D3
CJNEFEN,#00H,D00
MOVFEN,#60
D00:
DECFEN
JNBP0.4,$
LJMPM2
D3:
CJNEMIAO,#00H,D000
MOVMIAO,#60
D000:
DECMIAO
JNBP0.4,$
LJMPM2
KEY5:
JNBF0,D0000//按键5、停止键
CLRF0
MOVR0,#00H
D0000:
JNBP0.3,$
LJMPM2
ITOR:
MOVTH0,#3CH
MOVTL0,#0B0H
INCR0
JNBF0,E0
CPLP2.6
INC44H
MOVA,44H
CJNEA,#5,RETURN
MOV44H,#00H
LJMPE1
E0:
CJNER0,#19,RETURN
MOVR0,#00H
JBF0,E1
INCMIAO
CJNEMIAO,#60,RETURN
MOVMIAO,#00H
INCFEN
CJNEFEN,#60,RETURN
MOVFEN,#00H
INCSHI
CJNESHI,#24,RETURN
MOVSHI,#00H
LJMPRETURN
E1:
INCR1
CJNER1,#2,RETURN
MOVR1,#0
RETURN:
RETI
DELAY:
MOVR7,#255
DJNZR7,$
RET
DELAY1:
MOVR6,#115//10mS
DL1:
MOVR7,#248
DJNZR7,$
DJNZR6,DL1
RET
TABLE:
DB3FH,06H,5BH,4FH
DB66H,6DH,7DH,07H
DB7FH,6FH
END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 汇编语言 编写 数码管 显示 时钟 程序