Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 0 - Ngô Trịnh Tiến Long
TRƯỜNG ĐẠI HỌC SƯ PHẠM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KỸ THUẬT TP.HCM ĐỘC LẬP – TỰ DO – HẠNH PHÚC
KHOA ĐIỆN-ĐIỆN TỬ
ÆÆÆ ÆÆÆ
ĐỒ ÁN MÔN HỌC II
ĐỀ TÀI : MẠCH HIỂN THỊ MA TRẬN LED
Làm Mạch Đèn Quảng Cáo
GIÁO VIÊN HƯỚNG DẪN : Th.s Nguyễn Tấn Đời
SINH VIÊN THỰC HIỆN : Nguyễn Huy Hưng
Ngô Trịnh Tiến Long
MSSV : 05401103
05401
LỚP : 05401DA
Đà Nẵng tháng 04 năm 2009
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 1 - Ngô Trịnh Tiến Long
PHẦN 1
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 2 - Ngô Trịnh Tiến Long MỤC LỤC
Phần 1 : Giới Thiệu Trang 1
Lời mở đầu Trang 1
Mục lục Trang 2
Phần 2 : Nội Dung Trang 3
A.Vi điều khiển Trang 3
a.Giới thiệu họ vi điều khiển Trang 3
b.Sơ đồ và chức năng các chân Trang 4
c.Các thanh ghi đặc biệt Trang 6
d.Hoạt động của bộ định thời Trang 9
e.Phần mềm lập trình MCS-51 Trang 11
B.Giới thiệu về ma trận led Trang 11
a.Cấu tạo Trang 11
b.Cơ sở lý thuyết Trang 12
năng ứng dụng rât rộng rãi, chúng có mặt trong nhiều sản phẩm dân dụng như máy giặt, máy điều hòa
nhiệt độ, lò vi sóng, nồi cơm điện… các thiết bị điện tử và viễn thông, các thiết bị đo lường và điều
khiển sử dụng trong công nghiệp,v v
Mỗi vi mạch MCS-51 bao gồm trong đó bộ xử lý trung tâm (CPU), bộ nhớ chỉ đọc (ROM), bộ nhớ đọc
ghi (RAM),các cổng vào ra song song 8 bít (I/O port), cổng vào ra nối tiếp (Serial port), các bộ đếm và
định thời (Timer), khối điều khiển ngắt (Interupt Control), khối điều khiển bus (Bus Control), và mạch
tạo xung nhịp (Oscillator). Giao tiếp giữa CPU và các khối bên trong của MCS-51 được thực hiện qua
các bus nội bộ gồm bus dữ liệu 8 bit, bus địa chỉ và các tín hiệu điều khiển khác. Cấu trúc trên cho phép
coi MSC-51 như một máy tính đơn chip 8 bít.
b.Sơ đồ và chức năng các chân:
Sơ đồ và các chân ra trên vỏ các vi mạch MCS51 như hình dưới đây và chức năng của các
chân:
89C51
+Chân 40:cung cấp nguồn cho chip (+ 5v).
+Chân 20: GND
+Chân 18,19: XTAL1, XTAL2(cung cấp xung clock tạo dao động dùng thạch anh). 18 XTAL1
12MH 19
XTAL2
30PF GND GND
+Chân 9: RST (chân reset)
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 5 - Ngô Trịnh Tiến Long
_Port2 (chân 11-chân 28):P2(P2.0-P2.7) đươc dùng làm cổng vào ra khi /EA được nối với +5v.
Khi /EA được nối đất thì port P2 được sử dụng để đưa ra 8 bít địa chỉ cao cho bộ nhớ ngoài.
_Port3 (chân 10-chân 17):P3 (P3.0-P3.7) có thể được dùng làm cổng vào ra hoặc dùng cho chức
năng khác như:
+ P3.0 (RxD) có thể được dùng để nhận số liệu nối tiếp.
+ P3.1 (TxD) có thể được dùng để phát số liệu nối tiếp.
+ P3.2 (INT0) có thể được dùng để nhận ngắt ngoài 0.
+ P3.3 (INT1) có thể được dùng để nhận ngắt ngoài 1.
+ P3.4 (T0) có thể được dùng để nhận xung clock Timer 0.
+ P3.5 (T1) có thể được dùng để nhận xung clock Timer 1.
+ P3.6 (/WR) khi /EA nối đất thì nó được dùng để đưa ra tín hiệu điều khiển ghi RAM ngoài.
+ P3.7 (/RD) khi /EA nối đất thì nó được dùng để đưa ra tín hiệu điều khiển đọc RAM ngoài.
c.Các thanh ghi đặc biệt:
a. Thanh ghi trạng thái chương trình (PSW)
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 6 - Ngô Trịnh Tiến Long
C AC FO RS1 RS0 0V - - - P
Cờ nhớ PSW7 C
Cờ nhớ phụ PSW6 AC
Cờ 0 PSW5 F0
Bit chọn dãy thanh ghi 1 PSW4 RS1
Bit chọn dãy thanh ghi 0 PSW3 RS3
Cờ tràn PSW2 0V
Dự trữ PSW1
Cờ chẵn lẻ PSW0 P
b. Thanh ghi B:
_Được dùng với thanh ghi A cho phép toán nhân và chia.
cập các thành phần dữ liệu của bảng nhảy hoặc bảng tìm kiếm.
_Trong 89C51 chia làm 4 nhóm lệnh:
+Nhóm lệnh cơ số học :
-Lệnh cộng : ADD
-Lệnh trừ : SUBB
-Lệnh nhân : MUL
-Lệnh chia : DIV
-Lệnh tăng : INC
-Lệnh chia : DEC
+Nhóm lệnh luận lý : AND, OR, XOR, NOT, SetB, CLR, CPL, RL, RR.
+Nhóm lệnh di chuyển : MOV
+Nhóm lệnh điều khiển : CALL, RET, MP, JMP, JNZ : nhảy nếu A=0. CJNE, DJNZ. d. Hoạt động của bộ Định Thời:
_Bộ định thời có các thanh ghi :
-TMOD (Time Mod): thanh ghi chế độ định thời.
-TCON (Time Control): thanh ghi điều khiển định thời.
-TL0 : Byte thấp của bộ đinh thời 0
-TL1 : Byte thấp của bộ định thời 1
-TH0 : Byte cao của bộ định thời 0
-TH1: Byte cao của bộ dịnh thời 1
_ 89C51 có hai bộ định thời 16 bit mỗi bộ định thời có 4 chế độ làm việc.
_Thanh ghi TMOD :
GATE C/T M1 M0 GATE C/T M1 M0
TIME1 TIME0
+C/T=1 : đếm sự kiện
+C/T=0: định một khoảng thời gian.
_Chế độ làm việc :
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
+Ký hiệu : EA … ET2 ES ET1 EX1 ET0 EX0
+EA: cho phép/ không cho phép ngắt toàn cục
+ET2/ET1/ET0: cho phép ngắt do Time 1/ Time 0
+EX1/EX0 : cho phép ngắt từ bên ngoài (ngắt ngoài 1/ngắt ngoài 0)
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 9 - Ngô Trịnh Tiến Long
e. Phần mềm lập trình vi điều khiển MCS-51
Có thể viết trên ngôn ngữ của Assembler hoặc các ngôn ngữ bậc cao khác như C, Visual Basic …Tập
lệnh của Assembler của họ MCS-51có 83 lệnh, được chia thành 5 nhóm là các lệnh số học, các lệnh
logic, các lệnh chuyển số liệu, các lệnh xử lý bít và các lệnh rẽ nhánh. Các lệnh xử lý bít là điểm mạnh
cơ bản của họ MCS-51, vì chúng làm cho chương trình chạy nhanh hơn. Chương trình Assembler được
viết trên máy tính sau đó được dịch ra mã máy của họ MSC-51 bằng biên dịch ASEM51, rồi mới nạp .
Nói chung chương trình viết trên ngôn ngữ Assembler khó hơn chương trình viết trên ngôn ngữ bậc cao
nhưng khi dịch ra mã máy sẽ ngắn gọn hơn và chạy nhanh hơn chương trình viết trên các ngôn ngữ
khác.
B. Giới thiệu về ma trận led
a. Cấu tạo
_Ma trận led bao gồm nhiều led đơn bố trí thành hàng và cột trong một vỏ. Các tín hiệu điều khiển cột
được nối với Anode trên tất cả các led trên cùng một cột. Các tín hiệu điều khiển hàng cũng được nối
với Cathode của tất cả các led trên cùng 1 hàng như hình vẽ :
H àng 1
2
duy nhất một led tại chổ gặp nhau của hàng và cột là sáng. Các bảng quang báo với số lượng led lớn
hơn cũng được kết nối theo cấu trúc như vậy.
Trong trường hợp ta muốn cho sáng đồng thời một số led rời rạc trên ma trận, để hiển thị một ký
tự nào đó, nếu trong hiển thị tĩnh ta phải cấp áp cao cho Anode và áp thấp cho Cathode, cho led
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 11 - Ngô Trịnh Tiến Long
tương ứng mà ta muốn sáng . Nhưng khi đó một số led ta không mong muốn cũng sẽ sáng , miễn là
nó nằm tại vị trí gặp nhau của các cột và hàng mà ta cấp nguồn . Vì vậy trong điều khiển led ma trận
ta không thể sử dụng phương pháp hiển thị tĩnh mà phải sử dụng phương pháp quét (hiển thị động),
có nghĩa là ta phải tiến hành cấp tín hiệu điều khiển theo dạng xung quét trên các hàng và cột cần
hiện thị. Để cho mắt nhìn thấy các led không bị nháy , thì tần số quét nhỏ nhất cho mỗi chu kỳ là
khoảng 20HZ (50ms). Trong lập trình điểu khiển led ma trận bằng vi xử lý ta cũng phải sử dụng
phương pháp quét như vậy.
Ma trận led có thể là loại chỉ hiển thị được một màu hoặc hiển thị được 2 màu trên một điểm , khi
đó led có số chân ra tương
ứng : đối với ma trận led 8x8 hiển thị một màu ,thì số chân ra là 16 ,
trong đó 8 chân dùng để điều khiển hàng và 8 chân còn lại dùng để điểu khiển cột . Đối với loại 8x8
có 2 màu thì số chân ra của led là 24 chân , trong đó có 8 chân dùng để điều khiển cột ( hoặc hàng )
chung cho cả hai màu , 16 chân còn lại thì 8 chân dùng để điều khiển hàng ( hoặc cột ) màu thứ nhất
, 8 chân còn lại dung để điều khiển màu thứ 2.
C. IC ULN2803
_ULN2803 là IC đệm đảo có 16 chân trong đó có 8 ngõ vào và 8ngõ ra, dứoi đây là hình dạng và
cấu tạo bên trong của 2803:
D. Thiết kế
a. Sơ đồ mạch nguồn 5v: 1 2 3 Xx: điện áp ngõ ra
78: nguồn dương
2: mass
1: chân vào 3: chân ra _Mạch được sử dụng rộng rãi do các ưu điểm như tích hợp toàn bộ linh kiện trong 1 kích thước nhỏ
điện áp ra luôn ổn định.
_Mạch ổn áp dùng IC 7805 trong đó tụ C
1
dùng để lọc và ổn định điện áp ngõ ra, tụ C
nhiên điện áp này có thể không ổn định hoặc có thể xảy ra hiện tượng ảnh hưởng lẫn nhau giữa các chân
tín hiệu đưa vào hàng, dẫn đến độ sáng tắt của đèn không chính xác.Để tránh hiện tượng này mỗi chân
ra của bộ đệm (là IC ULN2803) ta nối vào 8 chân B của BJT A564, 8 chân E của BJT A564 được nối
nguôn 5V và chân C của BJT này được đưa vào 16 hang của 2 ma trận Led.
Bộ đệm
hàng
Bộ đệm
cột
Ma trận led
89C51
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 14 - Ngô Trịnh Tiến Long
E. Phần mềm
a. Lưu đồ thuật toán
a .1 Lưu đồ thuật toán : đếm ngược
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 16 - Ngô Trịnh Tiến Long P3 A
RL A
INC R1
SS R1=8
1
R2 =8
P2 = 00H
P3 = 00H
SUBB A ,16
INC R0
Xuất R7 P1
Gán R0 A
DPTR=BANG MA
DPTR+1
A
A P2
Thời gian trể
2
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 17 - Ngô Trịnh Tiến Long P1 A
RL A
A R7
MOV P3,#00H
MOV P3,R3
MOV A,R0
MOV DPTR,#BANGMA
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
INC R0
MOV A,P3
RL A
MOV R3,A
INC R1
CJNE R1,#8,LOOP1_2
MOV R2,#8
L3:
MOV P2,#00H
MOV P3,#00H
MOV P1,R7
MOV A,R0
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 19 - Ngô Trịnh Tiến Long
SUBB A,#16
MOV DPTR,#BANGMA
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
INC R0
MOV A,P1
BANGMA:
DB 00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H
DB 1EH,21H,21H,21H,12H,00H C
DB 3FH,08H,08H,08H,3FH,00H H
DB 3EH,11H,21H,41H,3EH,00H U
DB 1EH,21H,21H,21H,12H,00H C
DB 3FH,10H,08H,10H,3FH,00H M
DB 0BEH,41H,21H,01H,3EH,60H,00H U
DB 3FH,10H,08H,04H,3FH,00H N
DB 1EH,21H,25H,25H,16H,00H G
DB 3FH,10H,08H,04H,3FH,00H N
DB 1FH,0A8H,68H,0A8H,1FH,00H A
DB 3FH,10H,08H,10H,3FH,00H M
DB 3FH,10H,08H,10H,3FH,00H M
DB 1EH,61H,21H,0A1H,5EH,00H O
DB 21H,21H,3FH,21H,21H,00H I
DB 11H,23H,25H,29H,11H,00H 2
DB 1EH,21H,21H,21H,1EH,00H 0
DB 1EH,21H,21H,21H,1EH,00H 0
DB 19H,25H,25H,25H,1EH,00H 9
END