Hôm nay electronics sẽ gioi thiệu đến các bạn mạch lập trình điều khiển Led đơn với họ 89S51 , mô phỏng với proteus , code nạp .
1. Sơ đồ kết nối phần cứng :
Sáng tắt:
ORG 0000H
MAIN :
MOV P1,#0FFH;
CALL DELAY
MOV P1,#00H;
CALL DELAY
SJMP MAIN;
DELAY :
PUSH 00H;
MOV R0,#100;
MOV TMOD,#01H;
LOOP :
MOV TH0,#HIGH(-5000)
MOV TL0,#LOW(-5000)
SETB TR0;set TR0=1
JNB TF0,$
CLR TR0 ;
CLR TF0 ;
DJNZ R0,LOOP;
POP 00H;
RET
END
Sáng tắt , sáng dần sáng dồn , sáng đôi :
ORG 0000H
MAIN:
CALL CHOPTAT;
CALL SANGDAN;
CALL SANGDICH;
CALL SANGDOI;
SJMP MAIN
CHOPTAT:
MOV P1,#0FFH;
CALL DELAY
MOV P1,#00H;
CALL DELAY
RET
SANGDAN:
MOV R0,#00H;
MOV DPTR,#MALED;
LAP:MOV A,R0;
MOVC A,@A+DPTR;
MOV P1,A;
CALL DELAY
INC R0;
CJNE R0,#9,LAP;
RET
SANGDICH:
MOV R0,#00H;
MOV DPTR,#MALED1;
LAP1:MOV A,R0;
MOVC A,@A+DPTR;
MOV P1,A;
CALL DELAY
INC R0;
CJNE R0,#9,LAP1;
SANGDOI:
MOV R0,#00H;
MOV DPTR,#MALED2;
LAP2:MOV A,R0;
MOVC A,@A+DPTR;
MOV P1,A;
CALL DELAY
INC R0;
CJNE R0,#9,LAP2;
RET
MALED:
DB 0FFH,0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H
MALED1:
DB 0FFH,0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH
MALED2:
DB 0FFH,0FCH,0F9H,0F3H,0E7H,0CFH,9FH,3FH,7EH
DELAY:
PUSH 00H
MOV R0,#100
MOV TMOD,#01H;
LOOP:MOV TH0,#HIGH(-5000)
MOV TL0,#LOW(-5000)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
DJNZ R0,LOOP
POP 00H
RET
END
File hex viết ra từ CT trên : Tải Sáng tắt hex Tải sáng nhiều kiểu
Các bạn có thắc mắc hay muốn viết code thì ibox nhé !!! Bài sau electronics sẽ hướng dẫn bạn cách viết.