Chương trình yêu cầu phải cho port 0 chạy trước,rồi nhấn 1 trong 2 nút:thì nó sẽ chạy nhanh hơn hoặc chậm hơn..Nhưng em hok biết chèn cái cho port 0 chạy trước ở đâu trong đoạn chương trình này,mà chỉ làm đc 2 nút nhanh chậm thội..Ai rảnh sửa giúp em
ORG 0
START:
MOV P3,#0
SETB P3.6
SETB P3.7
MAIN:
JNB P3.6,CV1
JNB P3.7,CV2
JMP MAIN
CV1:
MOV DPTR,#MALED
MOV R7,#0
LOOP:
MOV A,R7
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY
INC R7
CJNE R7,#8,LOOP
JMP MAIN
MALED:
DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,0H
CV2:
MOV DPTR,#MALED1
MOV R5,#0
LOOP1:
MOV A,R5
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY1
INC R5
CJNE R5,#8,LOOP1
JMP MAIN
MALED1:
DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,0H
DELAY:
MOV TMOD,#00000001B
MOV R4,#20
LAP1:
MOV TH0,#HIGH(-15000)
MOV TL0,#LOW(-15000)
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R4,LAP
DELAY1:
MOV TMOD,#00000001B
MOV R3,#10
LAP:
MOV TH0,#HIGH(-15000)
MOV TL0,#LOW(-15000)
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R3,LAP1
RET
END
Với cho em hỏi 1 cái nữa là:nếu điều khiển 8 chân của 1 port,rồi kèm theo 4 chân port nữa...có cách nào tắt led của 12 chân đó ko..rồi 4 chân còn lại chạy tiếp tục với 1 port khác ko???
Xin cảm ơn ạ
ORG 0
START:
MOV P3,#0
SETB P3.6
SETB P3.7
MAIN:
JNB P3.6,CV1
JNB P3.7,CV2
JMP MAIN
CV1:
MOV DPTR,#MALED
MOV R7,#0
LOOP:
MOV A,R7
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY
INC R7
CJNE R7,#8,LOOP
JMP MAIN
MALED:
DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,0H
CV2:
MOV DPTR,#MALED1
MOV R5,#0
LOOP1:
MOV A,R5
MOVC A,@A+DPTR
MOV P0,A
CALL DELAY1
INC R5
CJNE R5,#8,LOOP1
JMP MAIN
MALED1:
DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,080H,0H
DELAY:
MOV TMOD,#00000001B
MOV R4,#20
LAP1:
MOV TH0,#HIGH(-15000)
MOV TL0,#LOW(-15000)
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R4,LAP
DELAY1:
MOV TMOD,#00000001B
MOV R3,#10
LAP:
MOV TH0,#HIGH(-15000)
MOV TL0,#LOW(-15000)
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R3,LAP1
RET
END
Với cho em hỏi 1 cái nữa là:nếu điều khiển 8 chân của 1 port,rồi kèm theo 4 chân port nữa...có cách nào tắt led của 12 chân đó ko..rồi 4 chân còn lại chạy tiếp tục với 1 port khác ko???
Xin cảm ơn ạ
Comment