[8051 TUTORIAL] BÀI 4 Chương trình đếm 000 đến 999 dùng ngắt ngoài
Sơ đồ mạch điện:
Chương trình mẫu:
DOWNLOAD CODE+MÔ PHỎNG
(Bấm vào link đợi 5s, sau đó bấm "Skip Ad" sẽ ra link download, pass giải nén: phamtandatx)
Chương trình mẫu:
DV EQU R2
CHUC EQU R3
TRAM EQU R4
ORG 000H
JMP MAIN
ORG 00BH
JMP NGAT_T0
MAIN:
MOV TMOD,#05H
MOV TH0,#0FFH
MOV TL0,#0FFH
CLR TF0
SETB TR0
MOV IE,#82H
MOV TRAM,#0
MOV CHUC,#0
MOV DV,#0
LOOP:
CALL BCD_7DOAN
CALL HIENTHI
JMP LOOP
;*********************************************
BCD_7DOAN:
MOV DPTR,#MA7DOAN
MOV R0,#02H ;DIA CHI THANH GHI R2
MOV R1,#20H
GM: MOV A,@R0
MOVC A,@A+DPTR
MOV @R1,A
INC R0
INC R1
CJNE R0,#05H,GM
RET
;*********************************************
HIENTHI:
MOV R0,#20H
MOV A,#08H
HT: MOV P0,@R0
MOV P2,A
CALL DELAY
MOV P2,#00H ;CHONG LEM
INC R0
RR A
CJNE A,#01H,HT
RET
;*********************************************
NGAT_T0:
INC DV
CJNE DV,#10,EXIT
MOV DV,#0
INC CHUC
CJNE CHUC,#10,EXIT
MOV CHUC,#0
INC TRAM
CJNE TRAM,#10,EXIT
MOV TRAM,#0
EXIT:
MOV TH0,#0FFH
MOV TL0,#0FFH
RETI
;*********************************************
DELAY:
MOV R7,#0FFH
DJNZ R7,$
RET
;*********************************************
MA7DOAN:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
DOWNLOAD CODE+MÔ PHỎNG
(Bấm vào link đợi 5s, sau đó bấm "Skip Ad" sẽ ra link download, pass giải nén: phamtandatx)
No comments