You are on page 1of 2

Họ và tên: Bùi Thiện Quang

MSSV: 20085851
Bài làm
org 0023h
LJMP ngat
ORG 0h
main:
MOV P2,#00H
MOV TMOD,#20H
MOV TH1,#0FDH
MOV SCON,#50H
SETB TR1
MOV IE,#90h
main1:
CJNE A,#"A",aaa
CALL choptat
aaa: CJNE A,#"B",bbb
CALL Sangdan
bbb: CJNE A,#”C”,ccc
CALL Tatdan
ccc: CJNE A,#”D”,ddd
CALL Sangxenke
ddd: CJNE A,#”E”, main1
CALL clear
SJMP main1

ngat:
CLR ri
MOV A,sbuf
RETI

clear:
MOV p2,#00h
RET

choptat:
MOV P2,#0FFH
LCALL DELAY
MOV P2,#00H
LCALL DELAY
RET

Sangdan:
CLR A
CLR C
MOV A,00H
LAP1:MOV P2,A
CALL DELAY
SETB C
RLC A
JNC LAP1
LJMP ngat
RET

Tatdan:
MOV A,#0FFH
LAP2:MOV P2,A
CALL DELAY
CLR C
RRC A
JC LAP2
LJMP ngat
RET

Sangxenke:
MOV R0, #4
MOV A,#00H
MOV P2,A
CALL DELAY
LAP3:SETB C
RLC A
MOV P2,A
CALL DELAY
RLC A
MOV P2,A
CALL DELAY
DJNZ R0, LAP 3
LJMP NGAT
RET
DELAY:
MOV R7,#0ffh
del: MOV R6,#0ffh
DJNZ R6,$
DJNZ R7,del
RET
End

You might also like