//*****数码管显示8位二进制数程序段******//
//*****待显示数值存放在20H单元******//
ORG 50H
MOV 20H,#07FH ;待显示二进制数寄存单元,如01111111
START:
MOV DPTR, #DISPCODE ;表首地址赋给DPTR
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 21H,A ;二进制数第1位送21H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 22H,A ;二进制数第2位送22H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 23H,A ;二进制数第3位送23H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 24H,A ;二进制数第4位送24H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 25H,A ;二进制数第5位送25H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 26H,A ;二进制数第6位送26H单元
MOV A,20H
RR A
MOV 20H,A
ANL A,#01H
MOV 27H,A ;二进制数第7位送27H单元
MOV A,20H
RR A
ANL A,#01H
MOV 28H,A ;二进制数第8位送28H单元
INI:
MOV P2, #7FH
MOV R0, #21H
MOV R7, #08H
LOOP:
MOV A,@R0
MOVC A,@A+DPTR
MOV P0,A
ACALL DELAY
INC R0
MOV A,P2
RR A
MOV P2,A
DJNZ R7,LOOP
JMP INI
DELAY: MOV 26H,#4 ;延时服务子程序
DLY1: MOV 27H,#250
DJNZ 27H,$
DJNZ 26H,DLY1
RET
DISPCODE:DB 0C0H,0F9H ;共阳极连接时 0,1的显示码
END
原理图发给我看看
无法显示哪些数值?0?1?或是哪个位不能显示?