You are on page 1of 22

Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.

Nguyễn Tấn Đời

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

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-0- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

PHẦN 1
GIỚI THIỆU
LỜI MỞ ĐẦU
Trong thời đại bùng nổ thông tin hiện nay khả năng ứng dụng và tiềm lực phát triển của thông
tin quảng cáo là rất lớn,việc áp dụng các kỹ thuật mới vào lĩnh vực trên là rất cần thiết.
Khi đi đến đâu ta cũng dễ dàng bắt gặp những panô, áp phích, những bảng quảng các bằng điện
tử chạy theo nhiều hướng khác nhau, với những chữ và hình ảnh cùng nhiều màu sắc thật ấn tượng.
Từ yêu cầu của môn học kĩ thuật Vi điều khiển cũng như trong thực tiễn chúng em quyết định
chọn đề tài cho bài tập môn học là : Thiết kế mạch hiển thị dùng ma trận Led (Mạch đèn quảng cáo
hiển thị trên ma trận led).
Nhóm thực hiện đề tài cám ơn thầy Nguyễn Tấn Đời đã tận tình huớng dẫn và tạo điều kiện
thuận lợi cho nhóm chúng em hoàn thành tốt đề tài môn học này.
Nhóm thực hiện đề tài xin chân thành cám ơn quý thầy cô trong khoa Điện Tử cùng các bạn đã
góp ý và kinh nghiệm trong quá trình thực hiện đề tài này.
Em xin chân thành cám ơn!

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-1- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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
c.Nguyên lý hoạt động........................................................................ Trang 13
C.IC ULN2803............................................................................................... Trang 14
D.Thiết kế ...................................................................................................... Trang 15
a.Sơ đồ mạch nguồn 5V ..................................................................... Trang 15
b.Sơ đồ mạch hiển thị ......................................................................... Trang 16
E.Phần mềm ................................................................................................... Trang 19
a.Lưu đồ thuật toán............................................................................. Trang 19
b.Chương trình.................................................................................... Trang 24

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-2- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

PHẦN 2
NỘI DUNG
A. Giới thiệu họ vi điều khiển:
1.Vi điều khiển:
a.Giới thiệu họ vi điều khiển:
Bộ điều khiển đơn chip được công ty INTEL chế tạo vào năm 1980 là sản phẩm đầu tiên của họ
bộ vi điều khiển MCS-51. Ngày nay, họ MCS-51 có trên 250 biến thể khác nhau và được hầu hết các
công ty bán dẫn hàng đầu trên thế giới chế tạo,với số lượng trên 4 tỷ bộ mỗi năm. Họ MCS-51 có khả
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:

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-3- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

P1.0 ________ 1 40 ________VCC


P1.1 ________ 2 39 ________P0.0 (ADO)
P1.2 ________ 3 38 ________P0.1 (AD1)
P1.3 ________ 4 37 ________P0.2 (AD2)
P1.4 ________ 5 36 ________P0.3 (AD3)
P1.5 ________ 6 35 ________P0.4 (AD4)
P1.6 ________ 7 34 ________P0.5 (AD5)
P1.7 ________ 8 33 ________P0.6 (AD6)
RST ________ 9 32 ________P0.7 (AD7)
(RXD) P3.0 ________10 31 ________EA/VPP
(TXD) P3.1 ________11 30 ________ALE/PR0G
(IN10) P3.2 ________12 29 ________PSEN
(IN11) P3.3 ________13 28 ________P2.7 (A15)
T0 P3.4 ________14 27 ________P2.6 (A14)
T1 P3.5 ________15 26 ________P2.5 (A13)
(WR) P3.6 ________16 25 ________P2.4 (A12)
(R0) P3.7 ________17 24 ________P2.3 (A11)
XTAL1 ________18 23 ________P2.2 (A10)
XTAL2 ________19 22 ________P2.1 (A9)
GND ________20 21 ________P2.0 (A8)

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)

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-4- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời
5V

100u
100K

RST
Công Tắc
8.2K

GND

+Chân 31 (/EA) là tín hiệu vào, khi nối /EA với +5v thì MCS-51chỉ làm việc với bộ nhớ ROM,
RAM bên trong nó. Còn khi nối /EA với đất thì MCS-51 làm việc với bộ nhớ ROM, RAM bên ngoài.
+Chân 30 (ALE) là tín hiệu ra dùng để chốt 8 bít địa chỉ thấp (A0-A7) khi sử dụng bộ nhớ
ngoài.
+Chân 29 (/PSEN) là tín hiệu ra tích cực ở mức thấp dùng để đọc mã lệnh từ bộ nhớ chương
trình bên ngoài khi /EA được nối với đất, khi /EA được nối với +5v thì PSEN luôn không tích cực ở
mức cao.
+4 port I\O: mỗi port có 8 chân :
_Port 0(chân 32-chân 39): P0 (P0-P0.7) được dùng làm cổng vào ra khi /EA được nối với +5V.
Khi /EA nối đất thì port 0 được dùng làm bus địa chỉ và số liệu cho bộ nhớ ngoài. Khi đó, ở nửa đầu của
chu kỳ lệnh truy nhập bộ nhớ ngoài, MCS-51 đưa ra port 0 8 bít địa chỉ thấp, sau đó port 0 thành bus số
liệu 8 bít, do đó phải dùng ALE để chốt 8 bít địa chỉ thấp vào thanh chốt địa chỉ phần thấp.
_Port 1(chân 1-chân 8) : P1(P1.0-P1.7) đuợc dùng làm cổng vào ra.
_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)

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-5- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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. Con trỏ dữ liệu (DPTR):
_Dùng để truy xuất bộ nhớ chương trình ngoài, bộ nhớ dữ liệu ngoài là thanh ghi 16 bit ( DPL
và DPH ).
d.Thanh ghi của bộ định thời :
_89C51 có 1 thanh ghi điều khiển và 1 thanh ghi chế độ :
+TMOD: là đặt các chế độ cho bộ định thời.
+TCON: để điều khiển bộ định thời .
e.Thanh ghi ngắt IE : có 5 nguyên nhân ngắt
+Ngắt do bộ định thời 0 và bộ định thời1
+Ngắt do ngắt ngoài 0 và ngắt ngoài1
+Ngắt cho cổng nối tiếp.
*Tập lệnh 89C51:
_Trong 89C51 có 8 chế độ định địa chỉ:
+ Định địa chỉ thanh ghi:dùng để truy xuất thanh ghi từ R0-R7
+ Định địa chỉ trực tiếp : dùng để truy xuất các biến nhớ hoặc các thanh ghi trên chip.
+ Định địa chỉ gián tiếp : dùng hai thanh ghi R0, R1 để hoạt động như một con trỏ, nội dung của
nó được chỉ ra trong RAM : @ trước R0 hoặc R1: @R0; @R1.
Định địa chỉ tức thời : khi toán trạng nguồn là hằng số thay vì biểu thức toán học. Hằng số này
có thể được đưa vào lệnh và đây là một dữ liệu tức thời. Người ta dùng các dấu # trước các toán hạng
tức thời.
+Ngoài ra còn có:

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-6- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

- Định địa chỉ tương đối.


- Định địa chỉ tuyệt đối.
- Định địa chỉ dài.
- Định địa chỉ tham chiếu (định địa chỉ số và truy cập Rom nội), được sử dụng khi truy
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 :

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-7- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

M1 M0 Chế độ
0 0 0 13 bit
0 1 1 16 bit
1 0 2 8 bit tự nạp lại

1 1 3 Chia sẻ

_ Sủ dụng bộ định thời để :


+ Định một khoảng thời gian.
+ Đếm sự kiện .
_Thiết lập chế độ hoạt động cho TMOD
+4 bit thấp dành cho TIMER 0
+4 bit cao dành cho TIMER 1
_Thanh ghi TCON:
TF1 TR1 TF0 TR0 IF1 IT1 IF0 IT0
TIME 1 TIME 0
_TR1/TR0: bit điều khiển bộ định thời được set hoặc xoá bởi phần mềm để chạy hoặc ngưng bộ định
thời.
_TF0/TF1: cờ tràn bộ định thời 0/1 được bởi phần cứng, được xoá bởi phần mềm hoặc bởi phần cứng
các vectơ xử lý đến thủ tục ngắt.
_ Hoạt động của tổ chức ngắt (IE):
_Có 5 nguyên nhân ngắt:
+2 ngắt ngoài
+2 ngắt bộ định thời
+1 ngắt do port nối tiếp
_Khi reset, tất cả các ngắt đều vô hiệu hoá.
_Thanh ghi cho phép :
IE7 IE6 IE5 IE4 IE3 IE2 IE1 IE0

+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)

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-8- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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

Cột 1 2 3 4

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


-9- Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

b. Cơ sở lý thuyết
_Dựa trên nguyên tắc quét hình, ta có thể thực hiện việc hiển thị ma trận đèn bằng cách quét theo
cột.Mỗi led trên ma trận LED có thể coi như một điểm ảnh. Địa chỉ của mỗi điểm ảnh này được xác
định đồng thời bởi bộ đệm hàng và bộ đệm cột, điểm ảnh này sẽ được xác định trạng nhờ dữ liệu
đưa ra từ bộ vi điều khiển 89C51.
Như vậy tại mỗi thời điểm chỉ có trạng thái của một điểm ảnh được xác định. Tuy nhiên khi xác
định địa chỉ và trạng thái của điểm ảnh tiếp theo thì các điểm ảnh còn lại sẽ chuyển về trạng thái tắt
(nếu led sáng thì sẽ tắt dần ). Vì thế để hiển thị được toàn bộ hình ảnh của ma trận LED, ta có thể
quét ma trận nhiều lần với tốc độ quét rất lớn, lớn hơn nhiều lần so với thời gian kịp tắt của đèn. Mắt
người chỉ nhận biết đươc tối đa 24hình/s do đó nếu tốc độ quét rất lớn thì sẽ không nhận ra được sự
thay đổi nhỏ của led mà sẽ thấy được toàn bộ hình ảnh cần hiển thị.
c. Nguyên lý hoạt động
_ Khi có một tín hiệu điều khiển ở cột và hàng, các chân Anode của các led trên cột tương ứng
được cấp điện áp cao, đồng thời các chân Cathode của các led trên hàng tương ứng được cấp điện áp
thấp. Tuy nhiên lúc đó chỉ có một led sáng, vì nó có đồng thời điện thế cao trên Anode và điện thế
thấp trên Cathode. Như vậy khi có một tín hiệu điều khiển hàng và cột thì tại một thời điểm chỉ có
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

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 10 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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:

Bộ đệm đảo dùng IC ULN2803 nhằm đảo bít nếu ngõ vào ở mức cao qua 2803 ra sẽ là mức thấp và
ngược lại. ULN2803 chịu đựng mức điện áp từ 6V-15V.

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 11 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

D. Thiết kế
a. Sơ đồ mạch nguồn 5v:

78XX
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ụ C1 dùng để lọc và ổn định điện áp ngõ ra, tụ C2 để lọc nhiễu cao
tần. Điện áp ngõ vào thường cao hơn điện áp ngõ ra để mạch hoạt động tốt.

b. Sơ đồ mạch hiển thị


b.1 Sơ đồ khối

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 12 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

Bộ đệm
hàng

Ma trận led
89C51

Bộ đệm
cột

b.2 Nhiệm vụ các khối


+ 89C51: Là nơi lưu giữ các chương trình chính và dữ liệu.
+ Ma trận led : dùng để hiển thị.
+ Bộ đệm : dùng để ổn định dữ liệu.
b.3 Nguyên lý hoạt động của mạch
+ Đối với hàng ta dùng 8chân của port 2 nối trực tiếp với 8 đầu vào của IC ULN2803 và 8
đầu ra của IC này được đưa vào 16 hàng của 2 ma trận led.
Dữ liệu được đưa trực tiếp từ 89C51 qua IC ULN203 vào các hàng của ma trận led. Tuy nhiên
dữ liệu này không ổn định hoặc 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 tại 8 chân ra của bộ đệm
(ULN2803) ta nối vào 8 chân B của BJT A564, 8 chân E của A564 nối với nguồn 5V, và chân C của
BJT được đưa ra 16 hàng của 2 ma trận led.
+ Đối với cột ta dùng 8 chân của port 3 và 8 chân của port 1 được nối trực tiếp với 16 đầu
vào của 2IC 2803, và 16 đầu ra của 2IC này được đưa vào 16 cột của 2 ma trận led.
+Điện áp có thể đưa trực tiếp từ 89C51 qua IC ULN2803 vào các hàng của ma trận led .Tuy
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.
http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng
- 13 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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


- 14 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

Bắt đầu

Gán R4= 60
Gán R6= 60
Gán 10H= 60
Gán 20H= 60

3 4 Gán R3= 01H


Gán R7= 01H
Gán R1= 0
Gán R2= 0
Gán R0=20H

1 5 P2=00H
P1=00H
P3=00H

Xuất R3 P3
Gán R0 A

DPTR=BANG MA
DPTR+1 A

A P2

Thời gian trể

INC R0

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 15 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

P3 A

RL A

INC R1

1
SS R1=8

2 R2 =8

P2 = 00H
P3 = 00H

Xuất R7 P1
Gán R0 A

SUBB A ,16

DPTR=BANG MA
DPTR+1 A

A P2

Thời gian trể

INC R0

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 16 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

P1 A

RL A

A R7

2
SS R2=8

R0 A

SS A=10

4
R6 =30

INC 10H
INC 20H

R6 = 30

3
SS R4=60

END

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 17 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

b. Chương trình
ORG 0000H
LOOP1: MOV R4,#91
MOV R6,#5
MOV 10H,#16
MOV 20H,#0
LOOP1_1: MOV R3,#01H
MOV R7,#01H
MOV R1,#0
MOV R2,#0
MOV R0,#01H
LOOP1_2: MOV P2,#00H
MOV P1,#00H
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

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 18 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

SUBB A,#16
MOV DPTR,#BANGMA
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
INC R0
MOV A,P1
RL A
MOV R7,A
DJNZ R2,L3
MOV A,R0
CJNE A,10H,LOOP1_2
DJNZ R4,LOOP1_1
INC 10H
INC 20H
MOV R6,#5
DJNZ R4,LOOP1_1
JMP LOOP1
DELAY:
MOV TMOD,#01H
MOV TH0,#HIGH(-50)
MOV TL0,#LOW(-50)
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
RET

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 19 - Ngô Trịnh Tiến Long
Đề tài:Thiết kế mạch hiển thị dùng ma trận led. GVHD:Ths.Nguyễn Tấn Đời

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

http://www.ebook.edu.vn SVTH: Nguyễn Huy Hưng


- 20 - Ngô Trịnh Tiến Long
Đề 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


- 21 - Ngô Trịnh Tiến Long

You might also like