Hệ thống điều khiển LED đơn(Asem).Lập trình vi điều khiển AT89S

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 :



2.Code nạp :( viết trên Keic )
 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.

Previous
Next Post »