;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
HANG DATA P0
CLK BIT P2.4
DT BIT P2.5
RCK BIT P2.6
ORG 0000H
MAIN:
MOV A,#0
MOV DPTR,#MACHU
LAP:
MOV R2,#10
LAP1:
LCALL HIENTHI
DJNZ R2,LAP1
INC DPTR
MOV A,DPL
CJNE A,#LOW(MACHU+250),LAP
LJMP MAIN
HIENTHI:
MOV R0,#0 ; NHAP GIA TRI BAN DAU
SETB DT
;CLR DT
SCAN:
CLR CLK ; TICH CUC 1 COT
CLR RCK
SETB CLK
SETB RCK
MOV A,R0
MOVC A,@A+DPTR
CPL A
MOV HANG,A ; XUAT DU LIEU RA HANG 1
INC R0
MOV A,R0
LCALL DELAY ; TRE~
MOV HANG,#00H ;CHONG LEM
;SETB DT
CLR DT ;CHONG LEM
LCALL DELAY1
CJNE R0,#49,SCAN ; KIEM TRA QUET DU 32 COT
RET
;----------------------------------------------------------
DELAY:
MOV TMOD,#02H
MOV TH0,#HIGH(-1500)
MOV TL0,#LOW(-1500)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;----------------------------------------------------------
DELAY1:
PUSH 00H
PUSH 01H
MOV R1,#1
LOOP1:
MOV R0,#50
DJNZ R0,$
DJNZ R1,LOOP1
POP 01H
POP 00H
RET
;----------------------------------------------------------
MACHU:
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 07FH,07FH,07FH,07FH,07FH ;//_
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C0H,0BFH,0BFH,0BFH,0C0H ;//U
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 080H,0F6H,0F6H,0F6H,0F9H ;//P
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 083H,0F5H,0F6H,0F5H,083H ;//A
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0F3H,0FDH,080H ;//M
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 080H,0F6H,0F6H,0F6H,0F9H ;//P
DB 00FFH,9FH,9FH,0FFH,0FFH
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0F3H,0FDH,080H ;//M
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 080H,0F7H,0EBH,0DDH,0BEH ;//K
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0C1H ;//O
DB 0FFH,0FFH ;SPACE
DB 083H,0F5H,0F6H,0F5H,083H ;//A
DB 0FFH,0C9H,0C9H,0FFH,0FFH ;//:
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 0FFH,0BEH,080H,0BEH,0FFH ;//I
DB 0FFH,0FFH ;SPACE
DB 080H,0B6H,0B6H,0B6H,0BEH ;//E
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 07FH,07FH,07FH,07FH,07FH ;//_
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 0FFH,0BEH,080H,0BEH,0FFH ;//I
DB 0FFH,0FFH ;SPACE
DB 080H,0B6H,0B6H,0B6H,0BEH ;//E
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 0C0H,0BFH,0BFH,0BFH,0C0H ;//U
END
nhờ mấy a giải thik dùm e cái code này.code này viết để điều khiển mạch quang báo led ma trận dùng AT 89s52.code này là code asm.
HANG DATA P0
CLK BIT P2.4
DT BIT P2.5
RCK BIT P2.6
ORG 0000H
MAIN:
MOV A,#0
MOV DPTR,#MACHU
LAP:
MOV R2,#10
LAP1:
LCALL HIENTHI
DJNZ R2,LAP1
INC DPTR
MOV A,DPL
CJNE A,#LOW(MACHU+250),LAP
LJMP MAIN
HIENTHI:
MOV R0,#0 ; NHAP GIA TRI BAN DAU
SETB DT
;CLR DT
SCAN:
CLR CLK ; TICH CUC 1 COT
CLR RCK
SETB CLK
SETB RCK
MOV A,R0
MOVC A,@A+DPTR
CPL A
MOV HANG,A ; XUAT DU LIEU RA HANG 1
INC R0
MOV A,R0
LCALL DELAY ; TRE~
MOV HANG,#00H ;CHONG LEM
;SETB DT
CLR DT ;CHONG LEM
LCALL DELAY1
CJNE R0,#49,SCAN ; KIEM TRA QUET DU 32 COT
RET
;----------------------------------------------------------
DELAY:
MOV TMOD,#02H
MOV TH0,#HIGH(-1500)
MOV TL0,#LOW(-1500)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET
;----------------------------------------------------------
DELAY1:
PUSH 00H
PUSH 01H
MOV R1,#1
LOOP1:
MOV R0,#50
DJNZ R0,$
DJNZ R1,LOOP1
POP 01H
POP 00H
RET
;----------------------------------------------------------
MACHU:
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 07FH,07FH,07FH,07FH,07FH ;//_
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C0H,0BFH,0BFH,0BFH,0C0H ;//U
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 080H,0F6H,0F6H,0F6H,0F9H ;//P
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 083H,0F5H,0F6H,0F5H,083H ;//A
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0F3H,0FDH,080H ;//M
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 080H,0F6H,0F6H,0F6H,0F9H ;//P
DB 00FFH,9FH,9FH,0FFH,0FFH
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0DDH ;//C
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0F3H,0FDH,080H ;//M
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 080H,0F7H,0EBH,0DDH,0BEH ;//K
DB 0FFH,0FFH ;SPACE
DB 080H,0F7H,0F7H,0F7H,080H ;//H
DB 0FFH,0FFH ;SPACE
DB 0C1H,0BEH,0BEH,0BEH,0C1H ;//O
DB 0FFH,0FFH ;SPACE
DB 083H,0F5H,0F6H,0F5H,083H ;//A
DB 0FFH,0C9H,0C9H,0FFH,0FFH ;//:
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 0FFH,0BEH,080H,0BEH,0FFH ;//I
DB 0FFH,0FFH ;SPACE
DB 080H,0B6H,0B6H,0B6H,0BEH ;//E
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 07FH,07FH,07FH,07FH,07FH ;//_
DB 0BEH,080H,0BEH,0BEH,0C1H ;//D
DB 0FFH,0FFH ;SPACE
DB 0FFH,0BEH,080H,0BEH,0FFH ;//I
DB 0FFH,0FFH ;SPACE
DB 080H,0B6H,0B6H,0B6H,0BEH ;//E
DB 0FFH,0FFH ;SPACE
DB 080H,0FDH,0FBH,0F7H,080H ;//N
DB 0FFH,0FFH,0FFH,0FFH,0FFH ;SPACE
DB 0FEH,0FEH,080H,0FEH,0FEH ;//T
DB 0FFH,0FFH ;SPACE
DB 0C0H,0BFH,0BFH,0BFH,0C0H ;//U
END
nhờ mấy a giải thik dùm e cái code này.code này viết để điều khiển mạch quang báo led ma trận dùng AT 89s52.code này là code asm.