$INCLUDE(REG51.INC)
ORG 0000H
TURN_OFF;
MOV P3,#0FFH
MOV P0,#00H
MOV 30H,#10
JNB P3.1,RIGHT
JNB P3.2,LEFT
JMP TURN_OFF
;===QUAY PHAI===
RIGHT:
MOV R5,#8
MOV DPTR,#CODE1
MOV R0,#1
CLR P3.6
SETB P3.7
;K1:
JNB P3.2,LEFT
JNB QUAY
;===QUAY TRAI==
LEFT:
MOV R5,#8
MOV DPTR,#CODE2
MOV R0,#0
CLR P3.7
SETB P3.6
;K2:
JNB P3.1,RIGHT
JMP QUAY
;===CHUONG TRINH QUAY==
QUAY:
MOV R4,30H
JNB P3.0,STOP
CLR A
MOVC A@A+DPTR
MOV P0,A
CALL DELAY
INC DPTR
JNB P3.3,TANG_TOC
JNB P3.4 GIAM_TOC
K8:
CJNE R0,#0,K3
CJNE R0,#1,K4
K3:
;DJNZ R5,K1
DJNZ R5,QUAY
JMP RIGHT
K4:
;DJNZ R5,K2
DJNZ R5,QUAY
JMP LEFT
;==DUNG DONG CO===
STOP:
JMP TURN_OFF
;==TANG TOC==
TANG_TOC:
CJNE R4,#5,K7
JMP K8
K7:
DEC 30H
JMP K8
;==GIAM TOC==
GIAM_TOC:
CJNE R4,#20,K9
JMP K8
K9:
INC 30H
JMP K8
;===CHUOGN TRINH TRE===
DELAY:
MOV R1,30H
LOOP2: MOV R2,#5
LOOP1: MOV R3,#100
DJNZ R3,$
DJNZ R2,LOOP1
DJNZ R1,LOOP2
RET
;==BANG MA====
CODE1:
DB 0F1H,0F3H,0F2H,0F6H,0F4H,0FCH,0F8H,0F9H,
CODE2:
DB 0F9H,0F8H,0FCH,0F4H,0F6H,0F2H,0F3H,0F1H
END
mọi người cho em hỏi là code này đúng chưa? có thể chuyển sang c dùm em được không ạ!
e xin chân thành cảm ơn và hậu tạ
ORG 0000H
TURN_OFF;
MOV P3,#0FFH
MOV P0,#00H
MOV 30H,#10
JNB P3.1,RIGHT
JNB P3.2,LEFT
JMP TURN_OFF
;===QUAY PHAI===
RIGHT:
MOV R5,#8
MOV DPTR,#CODE1
MOV R0,#1
CLR P3.6
SETB P3.7
;K1:
JNB P3.2,LEFT
JNB QUAY
;===QUAY TRAI==
LEFT:
MOV R5,#8
MOV DPTR,#CODE2
MOV R0,#0
CLR P3.7
SETB P3.6
;K2:
JNB P3.1,RIGHT
JMP QUAY
;===CHUONG TRINH QUAY==
QUAY:
MOV R4,30H
JNB P3.0,STOP
CLR A
MOVC A@A+DPTR
MOV P0,A
CALL DELAY
INC DPTR
JNB P3.3,TANG_TOC
JNB P3.4 GIAM_TOC
K8:
CJNE R0,#0,K3
CJNE R0,#1,K4
K3:
;DJNZ R5,K1
DJNZ R5,QUAY
JMP RIGHT
K4:
;DJNZ R5,K2
DJNZ R5,QUAY
JMP LEFT
;==DUNG DONG CO===
STOP:
JMP TURN_OFF
;==TANG TOC==
TANG_TOC:
CJNE R4,#5,K7
JMP K8
K7:
DEC 30H
JMP K8
;==GIAM TOC==
GIAM_TOC:
CJNE R4,#20,K9
JMP K8
K9:
INC 30H
JMP K8
;===CHUOGN TRINH TRE===
DELAY:
MOV R1,30H
LOOP2: MOV R2,#5
LOOP1: MOV R3,#100
DJNZ R3,$
DJNZ R2,LOOP1
DJNZ R1,LOOP2
RET
;==BANG MA====
CODE1:
DB 0F1H,0F3H,0F2H,0F6H,0F4H,0FCH,0F8H,0F9H,
CODE2:
DB 0F9H,0F8H,0FCH,0F4H,0F6H,0F2H,0F3H,0F1H
END
mọi người cho em hỏi là code này đúng chưa? có thể chuyển sang c dùm em được không ạ!
e xin chân thành cảm ơn và hậu tạ