CW DATA 0F9FCH ;寫指令 CR DATA 0F9FEH ;讀狀態(tài) DIW DATA 0F9FDH ;寫數(shù)據(jù) DIR DATA 0F9FFH ;讀數(shù)據(jù) ORG 0000H AJMP START ORG 0030H PANYAO: DB 01111110b,'C51',0 START: MOV R3,#38H LCALL XIEZL MOV R3,#01H LCALL XIEZL MOV R3,#0FH LCALL XIEZL MOV R3,#06H LCALL XIEZL
PAN1: MOV DPTR,#PANYAO MOV A,R2 MOVC A,@A+DPTR;按理說應該是顯示 C ,但是實際上A的數(shù)值是0FFH
mov p1,a jmp $ JZ PAN2 LCALL XIESJ INC R2 LCALL DELAY JMP PAN1 PAN2: CLR P1.0 JMP $
XIEZL: MOV DPTR,#CW MOV A,R3 ;1111B MOVX @DPTR,A LCALL BF RET XIESJ: MOV DPTR,#DIW MOVX @DPTR,A LCALL BF RET BF: MOV DPTR,#CR MOVX A,@DPTR JB ACC.7,BF RET DELAY: MOV R6,#50 D1:MOV R7,#100 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,DELAY RET END
|