Em làm mạch đếm lùi 300 về 0, các bác xem giúp em đoạn code này sai ở đoạn nào mà add code vào led 7 đoạn chạy lung tung ạ,
em gửi kèm theo cả file mô phỏng, các bác xem giúp em, em cám ơn các bác
DV EQU R2
CHUC EQU R3
TRAM EQU R4
BGIAY EQU R5
ORG 000H
JMP MAIN
ORG 00BH
JMP NGAT_T0
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
CLR TF0
SETB TR0
MOV IE,#82H
TD:
MOV DV,#0
MOV CHUC,#0
MOV TRAM,#3
X1:
LCALL BCD_7DOAN
MOV BGIAY,#0
X0:
LCALL HIENTHI
CJNE BGIAY,#20,X0
MOV BGIAY,#0
DEC DV
CJNE DV,#0FFH,X1
MOV DV,#9
DEC CHUC
CJNE CHUC,#0FFH,X1
MOV CHUC,#9
DEC TRAM
CJNE TRAM,#0FFH,X1
JMP TD
NGAT_T0:
MOV TL0,#LOW(-50000)
MOV TH0,#HIGH(-50000)
INC BGIAY
RETI
BCD_7DOAN:
MOV R0,#02H
MOV R1,#30H
MOV DPTR,#500H
X4:
MOV A,@R0
MOVC A,@A+DPTR
MOV @R1,A
INC R0
INC R1
CJNE R0,#05H,X4
RET
HIENTHI:
MOV R0,#30H
MOV A,#0FEH
X5:
MOV P0,@R0
MOV P1,A
LCALL DELAY
MOV P1,#0FFH ;CH?NG LEM
INC R0
RL A
CJNE A,#0F7H,X5
RET
DELAY:
MOV R6,#100
X6:
MOV R7,#50
DJNZ R7,$
DJNZ R6,X6
RET
ORG 500H
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
em gửi kèm theo cả file mô phỏng, các bác xem giúp em, em cám ơn các bác
DV EQU R2
CHUC EQU R3
TRAM EQU R4
BGIAY EQU R5
ORG 000H
JMP MAIN
ORG 00BH
JMP NGAT_T0
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
CLR TF0
SETB TR0
MOV IE,#82H
TD:
MOV DV,#0
MOV CHUC,#0
MOV TRAM,#3
X1:
LCALL BCD_7DOAN
MOV BGIAY,#0
X0:
LCALL HIENTHI
CJNE BGIAY,#20,X0
MOV BGIAY,#0
DEC DV
CJNE DV,#0FFH,X1
MOV DV,#9
DEC CHUC
CJNE CHUC,#0FFH,X1
MOV CHUC,#9
DEC TRAM
CJNE TRAM,#0FFH,X1
JMP TD
NGAT_T0:
MOV TL0,#LOW(-50000)
MOV TH0,#HIGH(-50000)
INC BGIAY
RETI
BCD_7DOAN:
MOV R0,#02H
MOV R1,#30H
MOV DPTR,#500H
X4:
MOV A,@R0
MOVC A,@A+DPTR
MOV @R1,A
INC R0
INC R1
CJNE R0,#05H,X4
RET
HIENTHI:
MOV R0,#30H
MOV A,#0FEH
X5:
MOV P0,@R0
MOV P1,A
LCALL DELAY
MOV P1,#0FFH ;CH?NG LEM
INC R0
RL A
CJNE A,#0F7H,X5
RET
DELAY:
MOV R6,#100
X6:
MOV R7,#50
DJNZ R7,$
DJNZ R6,X6
RET
ORG 500H
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END