Chương 3: Thiết kế và thi công mạch
CHƯƠNG 3
THIẾT KẾ VÀ THI CÔNG MẠCH
3.1. TẠO KHỐI 64 LED HIỂN THỊ 3D
_ Thiết kế một khối led siêu sáng hình lập phương gồm 4 tầng, với 4 led ở
mỗi cạnh. Như vậy, mỗi tầng sẽ có 16 led và 4 tầng sẽ tạo được 1 khối 64 led.
Hình 3.1: Khối 64 led hiển thị 3D
_ Các chân led trên cùng 1 tầng (màu xanh) sẽ được nối chung chân anodes
(+). Các chân cùng 1 một cột (màu đỏ) được nối chung chân cathodes (-).
_ Như vậy, chúng ta sẽ tạo được 1 khối led 3D có thể điều khiển trực tiếp
đến từng con led.
26
Chương 3: Thiết kế và thi công mạch
3.2. Thiết kế bộ nguồn cho mạch
Sơ đồ 3.1: Khối nguồn
3.3. Thiết kế mạch nguyên lý
Sơ đồ 3.2: Sơ đồ mạch nguyên lý hoạt động
27
Chương 3: Thiết kế và thi công mạch
3.4. Sơ đồ mạch in
Sơ đồ 3.3: Sơ đồ mạch in
3.5. Thiết kế sắp xếp linh kiện
Hình 3.2: Thiết kế linh kiện trên mạch
28
Chương 3: Thiết kế và thi công mạch
3.6. Lưu đồ giải thuật và phần mềm cho 89S52
3.6.1. Lưu đồ giải thuật
Chương trình chính:
START
Khởi động 89S52
Xóa led
Chương trình sáng từng lớp
Chương trình sáng dần 4 cột phải trái
Chương trình sáng 4 cột trước sau
Chương trình xoay từng lớp
Chương trình sáng từng led
Chương trình sáng dần 4 lớp từ dưới lên
Chương trình sáng từng cột
Chương trình nở hoa chớp tắt
29
Chương 3: Thiết kế và thi công mạch
Chương trình con:
Chương trình sáng từng cột
Chương trình sáng dần 4 lớp từ dưới lên
R5=3
R5=3
P3 = FFH
P0 = FEH
P2 = FFH
P3 = 01H
P0 = 00H
P2 = 00H
Delay2
Delay1
A P0
RL A
P0 A
A P3
C=1
RLC A
P3 A
Delay2
Delay1
N
A = 7FH
N
Y
A = 0FH
Y
CPL P0.7
P3 = FFH
P2 = FEH
P0 = FFH
A P3
C=0
RLC A
P3 A
Delay2
Delay1
N
A P2
RL A
P2 A
A = 00H
Y
N
Delay2
R5 = 0
Y
N
A = 7FH
Y
RET
N
R5 = 0
Y
RET
30
Chương 3: Thiết kế và thi công mạch
Chương trình sáng dần 4 cột phải trái
Chương trình sáng 4 cột trước sau
R5=3
R5=3
Xóa led
P3 = FFH
P0 = F0H
P2 = FFH
P0 = E7H
P2 = E7H
Delay1
Delay1
P3 = FFH
P0 = 0FH
P2 = FFH
P0 = DBH
P2 = DBH
Delay1
Delay1
P3 = FFH
P0 = FFH
P2 = F0H
P0 = BDH
P2 = BDH
Delay1
Delay1
P3 = FFH
P0 = FFH
P2 = 0FH
P0 = 7EH
P2 = 7EH
Delay1
Delay1
P0 = BDH
P2 = BDH
P3 = FFH
P0 = FFH
P2 = F0H
Delay1
Delay1
P0 = DBH
P2 = DBH
P3 = FFH
P0 = 0FH
P2 = FFH
Delay1
N
Delay1
N
R5 = 0
Y
R5 = 0
Y
RET
RET
31
Chương 3: Thiết kế và thi công mạch
Chương trình sáng từng led
Xóa led
Delay1
P3 = 01H
P0 = FEH
Loop31
Loop31
P3 = 01H
P0 = FFH
P2 = F7H
A P3
RL A
P3 A
Delay1
Delay1
Loop31
Delay1
Loop31
P3 = 01H
P0 = 7FH
P2 = FFH
P3 = 01H
P0 = FFH
P2 = EFH
Delay1
Delay1
Loop31
P3 = 01H
P0 = F7H
P2 = FFH
Delay1
Loop31
P3 = 01H
P0 = FFH
P2 = 7FH
Delay1
Loop31
P3 = 01H
P0 = EFH
P2 = FFH
Delay1
Loop31
Loop31
P3 = 01H
P0 = FBH
P2 = FFH
P3 = 01H
P0 = FFH
P2 = FEH
Delay1
Delay1
RET
Loop31
P3 = 01H
P0 = FFH
P2 = BFH
Delay1
Y
Loop31
P3 = 01H
P0 = FDH
P2 = FFH
Delay1
P3.3 = 1
Loop31
P3 = 01H
P0 = FFH
P2 = DFH
Delay1
N
Loop31
RET
32
Chương 3: Thiết kế và thi công mạch
Chương trình xoay từng lớp
C4
C3
C4
R5=3
DL1
DL1
DL1
Xóa led
C5
C4
C3
DL1
DL1
DL1
C6
C5
C2
DL1
DL1
DL1
P3.1 = 0
P3.2 = 1
C6
C1
DL1
DL1
P2 = FFH
P0 = FFH
CLR P3.3
P3.0 = 1
C1
DL1
C2
DL1
C3
DL1
C4
DL1
C5
DL1
C6
DL1
P3.0 = 0
P3.1 = 1
C1
C1
DL1
C2
DL1
C3
DL1
C4
DL1
C5
DL1
C6
DL1
P3.2 = 0
P3.3 = 1
DL1
C2
DL1
C3
DL1
C1
DL1
C2
DL1
N
P3 = FFH
C1
DL1
Y
R5 =
0
RET
C2
DL1
C3
DL1
C4
DL1
C5
DL1
C6
DL1
C6
DL1
C5
DL1
33
Chương 3: Thiết kế và thi công mạch
C1
C4
C7
P2 = FFH
P0 = FFH
P2 = FFH
P0 = FFH
P2 = FFH
P0 = FFH
P0.0 = 0
P0.6 = 0
P2.2 = 0
P2.4 = 0
P0.5 = 0
P0.4 = 0
P2.0 = 0
P2.1 = 0
P2.5 = 0
P2.2 = 0
P0.6 = 0
P0.1 = 0
RET
RET
RET
C2
C5
P2 = FFH
P0 = FFH
P2 = FFH
P0 = FFH
P0.6 = 0
P0.7 = 0
P2.2 = 0
P2.3 = 0
P2.1 = 0
P2.7 = 0
P0.5 = 0
P0.3 = 0
RET
RET
C3
C6
P2 = FFH
P0 = FFH
P2 = FFH
P0 = FFH
P2.0 = 0
P2.1 = 0
P0.5 = 0
P0.4 = 0
P2.6 = 0
P2.1 = 0
P0.5 = 0
P0.2 = 0
RET
RET
Chương trình sáng từng lớp từ dưới lên
R5 = 3
P3 = 01H
P0 = 00H
P2 = 00H
Delay1
A P3
RL A
P3 A
Delay1
N
Y
A=
08H
A P3
RR A
P3 A
Delay1
N
A=
01H
Y
N
R5 = 0
Y
RET
34
Chương 3: Thiết kế và thi công mạch
Chương trình nở hoa chớp tắt
R5=3
Xóa led
Delay500ms
P0 = 86H
Delay500ms
Delay500ms
P3 = 00H
P2 = 68H
Delay500ms
Delay500ms
P3 = 0FH
P2 = 48H
Delay500ms
P3.2 = 1
P0 = DFH
Delay500ms
Delay500ms
P0 = 84H
P3.1 = 1
P2 = FDH
Delay500ms
N
R5 = 0
Y
RET
P2 = 40H
Delay500ms
P0 = 9FH
Delay500ms
P2 = F9H
Delay500ms
P0 = 97H
Delay500ms
P2 = 79H
Delay500ms
P0 = 04H
Delay500ms
P0 = 00H
Delay500ms
P2 = 00H
Delay500ms
Delay500ms
P0 = 00H
P2 = 00H
P2 = 69H
Delay500ms
Delay500ms
P3 = 00H
P0 = 96H
Delay500ms
Delay500ms
P3 = 0FH
P3.3 = 1
Delay500ms
Delay500ms
P3 = 00H
P3.0 = 1
Delay500ms
Delay500ms
P3 = 0FH
35
P3 = 0FH
Chương 3: Thiết kế và thi công mạch
3.6.2. Phần mềm cho 89S52
;========================================================
;P3 DIEU KHIEN TAN TICH CUC MUC 1
;P3.0 DIEU KHIEN TAN 1
;P0 VA P2 DIEU KHIEN LOP TICH CUC MUC 0
;========================================================
$MOD51
ORG 00H
MOV P3,#0FFH
MOV P0,#0FFH
MOV P2,#0FFH
MAIN:
LCALL
TUNGLOP
LCALL
SANG_COT
LCALL
TRUOCSAU
LCALL
XOAY_TL
LCALL
CT1
LCALL
SANG_DAN
LCALL
TUNGCOT
LCALL
NOHOA
SJMP MAIN
;========================================================
;CHUONG TRINH CON SANG TUNG LOP TU DUOI LEN VA TREN
XUONG
;========================================================
TUNGLOP:
MOV R5,#3
MOV P3,#01H
MOV P0,#00H
MOV P2,#00H
LCALL
DELAY1
36
Chương 3: Thiết kế và thi công mạch
LOOP11:
MOV A,P3
RL
A
MOV P3,A
LCALL
DELAY1
CJNE A,#08H,LOOP11
LOOP12:
MOV A,P3
RR
A
MOV P3,A
CALL DELAY1
CJNE A,#01H,LOOP12
DJNZ R5,LOOP11
RET
;========================================================
;CHUONG TRINH CON SANG TUNG COT
;========================================================
TUNGCOT:
MOV R5,#3
LOOP2:
MOV P3,#0FFH
MOV P0,#0FEH
MOV P2,#0FFH
LCALL
DELAY2
LOOP21:
MOV A,P0
RL
A
MOV P0,A
LCALL
DELAY2
CJNE A,#7FH,LOOP21
CPL P0.7
37
Chương 3: Thiết kế và thi công mạch
MOV P3,#0FFH
MOV P2,#0FEH
MOV P0,#0FFH
LCALL
DELAY2
LOOP22:
MOV A,P2
RL
A
MOV P2,A
CALL DELAY2
CJNE A,#7FH,LOOP22
DJNZ R5,LOOP2
RET
;========================================================
;CHUONG TRINH CON CT1
;========================================================
CT1:
MOV P0,#0FFH
MOV P2,#0FFH
MOV P3,#00H
CALL DELAY1
MOV P3,#01H
MOV P0,#0FEH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#0EFH
CALL DELAY1
CALL LOOP31
38
Chương 3: Thiết kế và thi công mạch
MOV P3,#01H
MOV P0,#0F7H
MOV P2,#0FFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#7FH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0EFH
MOV P2,#0FFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#0FEH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#0F7H
CALL DELAY1
CALL LOOP31
39
Chương 3: Thiết kế và thi công mạch
MOV P3,#01H
MOV P0,#07FH
MOV P2,#0FFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#0DFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FDH
MOV P2,#0FFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FFH
MOV P2,#0BFH
CALL DELAY1
CALL LOOP31
MOV P3,#01H
MOV P0,#0FBH
MOV P2,#0FFH
CALL DELAY1
CALL LOOP31
RET
40
Chương 3: Thiết kế và thi công mạch
;========================================================
LOOP31:
MOV A,P3
RL
A
MOV P3,A
LCALL
DELAY1
JNB P3.3,LOOP31
RET
;========================================================
;CHUONG TRINH CON SANG DAN 4 LOP
;========================================================
SANG_DAN:
MOV R5,#3
MOV P3,#01H
MOV P0,#00H
MOV P2,#00H
LCALL
DELAY1
LOOP111:
MOV A,P3
SETB C
RLC A
MOV P3,A
LCALL
DELAY1
CJNE A,#0FH,LOOP111
LOOP121:
MOV A,P3
CLR C
RLC A
MOV P3,A
41
Chương 3: Thiết kế và thi công mạch
CALL DELAY1
CJNE A,#00H,LOOP121
DJNZ R5,LOOP111
RET
;========================================================
;CHUONG TRINH CON SANG DAN 4 COT TU PHAI QUA TRAI
;========================================================
SANG_COT:
MOV R5,#3
LOOP112:
MOV P3,#0FFH
MOV P0,#0F0H
MOV P2,#0FFH
LCALL
DELAY1
MOV P3,#0FFH
MOV P0,#0FH
MOV P2,#0FFH
LCALL
DELAY1
MOV P3,#0FFH
MOV P0,#0FFH
MOV P2,#0F0H
LCALL
DELAY1
MOV P3,#0FFH
MOV P0,#0FFH
MOV P2,#0FH
LCALL
DELAY1
42
Chương 3: Thiết kế và thi công mạch
MOV P3,#0FFH
MOV P0,#0FFH
MOV P2,#0F0H
LCALL
DELAY1
MOV P3,#0FFH
MOV P0,#0FH
MOV P2,#0FFH
LCALL
DELAY1
DJNZ R5,LOOP112
RET
;========================================================
;CHUONG TRINH CON XOAY TUNG LOP
;========================================================
XOAY_TL:
MOV
R5,#3
MOV
P3,#00H
MAIN1:
MOV
P2, #0FFH
MOV
P0, #0FFH
CLR
P3.3
SETB
P3.0
LCALL
C1
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C5
43
Chương 3: Thiết kế và thi công mạch
LCALL
DL1
LCALL
C6
LCALL
DL1
CLR
P3.0
SETB
P3.1
LCALL
C1
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C5
LCALL
DL1
LCALL
C6
LCALL
DL1
CLR
P3.1
SETB
P3.2
LCALL
C1
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C5
LCALL
DL1
44
Chương 3: Thiết kế và thi công mạch
LCALL
C6
LCALL
DL1
CLR
P3.2
SETB
P3.3
LCALL
C1
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C5
LCALL
DL1
LCALL
C6
LCALL
DL1
MOV
P3, #0FFH
LCALL
C1
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C5
LCALL
DL1
LCALL
C6
LCALL
DL1
45
Chương 3: Thiết kế và thi công mạch
LCALL
C6
LCALL
DL1
LCALL
C5
LCALL
DL1
LCALL
C4
LCALL
DL1
LCALL
C3
LCALL
DL1
LCALL
C2
LCALL
DL1
LCALL
C1
LCALL
DL1
DJNZ
R5,MAIN11
RET
MAIN11:
LJMP MAIN1
C1:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P0.0
CLR P0.6
CLR P2.2
CLR P2.4
RET
C2:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P0.6
CLR P0.7
CLR P2.2
CLR P2.3
RET
46
Chương 3: Thiết kế và thi công mạch
C3:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P2.0
CLR P2.1
CLR P0.5
CLR P0.4
RET
C4:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P2.1
CLR P2.7
CLR P0.5
CLR P0.3
RET
C5:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P2.6
CLR P2.1
CLR P0.5
CLR P0.2
RET
C6:
MOV P2, #0FFH
MOV P0, #0FFH
CLR P2.5
CLR P2.2
CLR P0.6
CLR P0.1
RET
47
Chương 3: Thiết kế và thi công mạch
========================================================
;CHUONG TRINH CON NO HOA CHOP TAT
;========================================================
NOHOA:
MOV R5,#3H
HOASANG:
MOV P3,#00H
MOV P0,#0FFH
MOV P2,#0FFH
LCALL
DELAY500MS
SETB P3.2
MOV P0,#0DFH
LCALL
DELAY500MS
SETB P3.1
MOV P2,#0FDH
LCALL
DELAY500MS
MOV P0,#9FH
LCALL
DELAY500MS
MOV P2,#0F9H
LCALL
DELAY500MS
MOV P0,#97H
LCALL
DELAY500MS
MOV P2,#79H
LCALL
DELAY500MS
MOV P2,#69H
LCALL
DELAY500MS
MOV P0,#96H
LCALL
DELAY500MS
SETB P3.3
LCALL
DELAY500MS
SETB P3.0
48
Chương 3: Thiết kế và thi công mạch
LCALL
DELAY500MS
MOV P0,#86H
LCALL
DELAY500MS
MOV P2,#68H
LCALL
DELAY500MS
MOV P2,#48H
LCALL
DELAY500MS
MOV P0,#84H
LCALL
DELAY500MS
MOV P2,#40H
LCALL
DELAY500MS
MOV P0,#04H
LCALL
DELAY500MS
MOV P0,#00H
LCALL
DELAY500MS
MOV P2,#00H
LCALL
DELAY500MS
MOV P0,#00H
MOV P2,#00H
LCALL
DELAY500MS
CHOPTAT:
MOV P3,#00H
LCALL
DELAY500MS
MOV P3,#0FH
LCALL
DELAY500MS
MOV P3,#00H
LCALL
DELAY500MS
MOV P3,#0FH
LCALL
DELAY500MS
MOV P3,#00H
LCALL
DELAY500MS
49
Chương 3: Thiết kế và thi công mạch
MOV P3,#0FH
LCALL
DELAY500MS
DJNZ R5,NHAYVE
RET
NHAYVE:
LJMP HOASANG
;========================================================
;CHUONG TRINH CON SANG 4 COT TU TRUOC RA SAU
;========================================================
TRUOCSAU:
MOV R5,#3H
MOV P3,#0FFH
MOV P0,#0FFH
MOV P2,#0FFH
TRUOCSAU1:
MOV P0,#0E7H
MOV P2,#0E7H
LCALL
DELAY1
MOV P0,#0DBH
MOV P2,#0DBH
LCALL
DELAY1
MOV P0,#0BDH
MOV P2,#0BDH
LCALL
DELAY1
MOV P0,#7EH
MOV P2,#7EH
LCALL
DELAY1
50