6位8段数码管显示2按键.doc
COUNTER EQU 57H DISPBUF EQU 58H ORG 0000H
AJMP START
ORG 0003H
AJMP LOOP2
ORG 30H
START:
MOV SP,#5FH
MOV P1,#0FFH
MOV P0,#0FFH
MOV P2,#0FFH
SETB IT0
SETB EX0
SETB EA
MOV DISPBUF,#0
MOV DISPBUF+1,#1
MOV DISPBUF+2,#2
MOV DISPBUF+3,#3
MOV DISPBUF+4,#4
MOV DISPBUF+5,#5
LOOP1:
LCALL DISP1
AJMP LOOP1
DISP1:
PUSH ACC
PUSH PSW
MOV R1,#DISPBUF
MOV COUNTER,#0 D_L1:
MOV A,COUNTER
MOV DPTR,#BITTAB
MOVC A,@A+DPTR
ORL P2,#11111100B
ANL P2,A
MOV A,R1
MOV R0,A
MOV A,@R0
MOV DPTR,#DISPTAB1
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY
INC R1
INC COUNTER
MOV A,COUNTER
CJNE A,#6,D_L1
POP PSW
POP ACC
RET
LOOP2:
LCALL DISP2
AJMP LOOP2
DISP2:
PUSH ACC
PUSH PSW
MOV R1,#DISPBUF
MOV COUNTER,#0 D_L2:
MOV A,COUNTER
MOV DPTR,#BITTAB
MOVC A,@A+DPTR
ORL P2,#11111100B
ANL P2,A
MOV A,R1
MOV R0,A
MOV A,@R0
MOV DPTR,#DISPTAB2
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY
INC R1
INC COUNTER
MOV A,COUNTER
CJNE A,#6,D_L2
POP PSW
POP ACC
RET
BITTAB: DB 7FH,0BFH,0DFH,0EFH,0F7H,0FBH
DISPTAB1: DB 88H,83H,0C6H,0A1H,86H,8EH //设置
A=88H,B=83H,C=C6H,D=A1H,E=86H,F=8EH
DISPTAB2: DB 0F9H,0A4H,0B0H,99H,92H,82H
DELAY:
PUSH PSW
SETB RS0
MOV R7,#50 D1:
MOV R6,#20 D2:
DJNZ R6,$
DJNZ R7,D1
POP PSW
RET
END
按下按钮 数码管由显示ABCDEF变化到123456
本文档为【6位8段数码管显示2按键.doc】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。