这程序8路p0输出是正常的,改为p0和p2的10路输出,P2就不正常了,而且也不能循环了,各位高手看看什么原因。
START:MOV DPTR, #TABLE
LOOP: CLR A
MOVC A, @A+DPTR
MOV P0, A
INC DPTR
MOVC A, @A+DPTR
MOV P2, A
INC DPTR
CJNE A,#01H,LOOP1 ;取到01就返回重新循环
JMP START
LOOP1:
ACALL DELAY
JMP LOOP
;--------------------------
;0.5s延时程序
;--------------------------
DELAY:MOV R5, #25
DLY1: MOV R6, #100
DLY2: MOV R7, #100
DJNZ R7, $
DJNZ R6, DLY2
DJNZ R5, DLY1
RET
TABLE:
DB 0FEH,0FFH,0FDH,0FFH,0FBH,0FFH,0F7H
DB 0FFH,0EFH,0FFH,0DFH,0FFH,0BFH,0FFH
DB 07FH,0FFH,0FFH,0FDH,0FFH,07FH ;10灯右移表
DB 01H,01H ;结束标志
END