Tải bản đầy đủ (.docx) (65 trang)

ĐỀ TÀI THIẾT KẾ MẠCH QUANG BÁO TRÊN MA TRẬN LED

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.02 MB, 65 trang )

Trường đại học sư phạm kỹ thuật Hưng Yên
Khoa Điện – Điện Tử
   
Thuyết minh đồ án môn học
Đề tài: : “Thiết kế mạch quang báo trên ma trận Led”

Giáo viên thực hiện : Đỗ Thành Hiếu
Sinh viên thực hiện: 1. Đặng Văn Bình
2. Lê Quý Thìn
3. Nguyễn Thị Phương Trang
Lớp : Đ.ĐTK5.1
Hưng Yên, ngày 06 tháng 12 năm 2010
1

MỤC LỤC
Lời nói đầu 4
CHƯƠNG I: GIỚI THIỆU VỀ VI ĐIỀU KHIỂN……………… 5
I.1. Các đặc điểm của hệ Vi Xử Lý 89C51 5
I.2. Cơ bản về cấu tạo của AT89C51 ……………………… 6
I.3. Tổ chức bộ nhớ của 89C51 10
I.4. Tóm tắt tập lệnh………………………………………………………… 14
CHƯƠNG II: GIỚI THIỆU VỀ QUANG MẠCH BÁO…………………….18
II.1. QUANG MẠCH BÁO ……….……………………………………….18
II.1.1. Tổng quan về mạch quang báo ……………………………………….18
II.1.2. Ứng dụng …………………………………………………………… 20
II.2. GIỚI THIỆU VỀ LED MA TRẬN…………………….………………. 21
II.2.1. Sơ đồ cấu tạo của LED ma trận ………………………………………21
II.2.2. Nguyên tắc quét bảng ma trận……………………………………… 23
II.2.3. Nguyên tắc làm sáng đèn trên bảng LED …………………………….23
II.2.4.
Phương pháp tạo hiệu ứng chữ chạy từ phải qua trái trên bảng LED 26


II.3. TRANSISTOR………………………………………………………… 27
II.3.1. Giới thiệu chung về Transistor…………………………………………27
II.3.2. Transistor C2383………………………………………………… … 34
II.4. IC SỐ ……………………………………………………………… 37
II.4.1. IC 74HC595……………………………………………………………37
II.4.2. ULN 2803 …………………………………………………………… 41
2
CHƯƠNG III: THIẾT KẾ VÀ THI CÔNG MẠCH ………………………….46
III.1. LƯU ĐỒ THUẬT GIẢI ……………………………………………… 46
III.2. CHƯƠNG TRÌNH ĐOẠN MÃ CODE ………………………………….48
III.3. SƠ ĐỒ MẠCH NGUYÊN LÝ VÀ NGUYÊN LÝ HOẠT ĐỘNG … 53
III.3.1. Sơ đồ mạch nguyên lý …………………………………………… 53
III.3.2. Nguyên lý hoạt động ………………………………………………59
TỔNG KẾT………………………………………………………………….60
TÀI LIỆU THAM KHẢO……………………………………………… 61
3
LỜI NÓI ĐẦU
Ngày nay, trước sự phát triển của khoa học mạnh mẽ của khoa học công
nghệ thì việc ứng dụng các thành tựu khoa học công nghệ vào cuộc sống của con
người ngày càng phổ biến. Đưa thông tin quảng cáo sản phẩm của mình đến với
khách hàng là một trong những chiến lược cạnh tranh của các nhà kinh doanh. Có
thể nói những bảng thông tin điện tử hay còn gọi là quang báo để quảng cáo đến
khách hàng là một chiến lược hàng đầu. Và để làm được như vậy có rất nhiều cách
như dùng kĩ thuật số nhưng việc xử dụng các vi điều khiển ngày càng chiếm ưu
thế hơn so với các bộ điều khiển khác. Tính ưu việt của nó thể hiện ở chỗ:
- Dễ dàng sử dụng trong các thiết bị điện tử hoặc hệ thống điện tử số.
- Chi phí nâng cấp thấp và cần rất ít linh kiện cho việc bảo dưỡng bảo hành.
- Mang lại hiệu quả kinh tế cao.
Vi điều khiển mang lại nhiều lợi nhuận lại có sức cành tranh cao do chất lượng
cao mang lại được sử dụng rộng dãi, càng tăng tính hấp dẫn về người dùng đồng

thời cũng mang lại nhiều lợi nhuận cho các nhà sản xuất. Đó là động lực để vi điều
khiển tăng trưởng cả về số lượng và chất lượng.Trong thời gian làm đồ án, chúng
em đã nhận được sự giúp đỡ nhiệt tình của thầy Đỗ Thành Hiếu , cùng với sự nỗ
lực của cả nhóm chúng em đã hoàn thành được để tài của mình và về cơ bản đã
đáp ứng được yêu cầu của đề tài. Đó là thiết kế chế tạo ra mạch chạy chữ dùng
trong quang báo.
Nhưng với sự phát triển của khoa học vô cùng lớn vì vậy tuy cố gắng song
không tránh khỏi thiếu sót chúng em rất mong nhận được sự giúp đỡ của các thầy
cô để đề tài của chúng em thêm hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!
Nhóm sinh viên thực hiện: Đặng Văn Bình
Lê Quý Thìn
Nguyễn Thị Phương Trang
4
CHƯƠNG I
GIỚI THIỆU VỀ VI ĐIỀU KHIỂN 89C51
I.1 CÁC ĐẶC ĐIỂM CỦA HỆ VI XỬ LÝ 89C51 :
Vi điều khiển (VĐK) là một hệ vi xử lý được tổ chức trong một chíp. Nó bao gồm:
+ Bộ vi xử lý


+ Có 40 chân
+ 4 kbyte ROM. 1, có thể ghi xoá được 1000 lần
+ 4 kbyte EPROM.
+ Dải tần số hoạt động từ 0MHz đến 24Mhz
+ Có 4 port xuất nhập (I/O) 8 bit
+ Có 128 byte RAM
+ 2 bộ định thời 16 bit
+ Mạch giao tiếp nối tiếp
+ Không gian nhớ chương trình (mã) ngoài 64k byte.

+ Không gian nhớ Data ngoài 64k byte.
+ Bộ xử lý bit thao tác trên các bit riêng.
+ 210 vị trí nhớ định địa chỉ, mỗi vị trí một bit.
+ Các thanh ghi chức năng, cơ chế điều khiển ngắt .
+ Các bộ thời gian dùng trong limh vực chia tần số và tạo thời gian thực.
+ Có thể lập trình được qua cổng nối tiếp
+ Bộ vi điều khiển có thể lạp chương trình để điều khiển các thiết bị thông tin,
viễn thông thiết bị đo lường,thiết bị điều chỉnh cũng nhuu các ứng dụng trong công
nghệ thong tin và kỹ thuật điều khiển tự động. có thể xem bộ VĐK như một hệ
VXL on-chíp đối với AT89C51, nó có đầy đủ chức năng của một hệ VXL 8 bit,
được điều khiển bởi một hệ lệnh, có số lệnh đủ mạnh, cho phép lập trình bằng hợp
ngữ (Assemply).
5
I. 2. CƠ BẢN VỀ CẤU TẠO CỦA AT89C51:

Hình1.2.1 : Sơ đồ chân của 89C51
6
Hình 1.2.2 : Sơ đồ khối của 89C51

7
+ GND(chân 20): Chân nối với 0v
+ Port 0(chân 32 – chân 29)
+ Port 0 là port xuất nhập 8 bit hai chiều. Port 0 còn được cấu hình làm bus
địa chỉ( byte thấp) và bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài
và bộ nhớ chương trình ngoài. Port cũng nhận các byte mã trong khi lập trình cho.
Flash và xuất các byte mã trong khi kiểm tra chương trình ( các điện trở kéo lên
bên ngoài được cần đến trong khi kiểm tra chương trình).
+ Port 1( chân 1- 8): port 1 là port xuất nhập 8 bit hai chiều. Port1 cũng nhận
byte địa chỉ thấp trong thời gian lập trình cho Flash.
+ Port 2 ( chân 21 – 28): Port 2 là port xuất nhập 8 bit hai chiều. Port 2 tạo ra

các byte cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớ chương trình
ngoài và trong thời gian truy xuất bộ nhớ dữ liệu ngoài, sử dụng các địa chỉ 16 bit.
Trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 8 bit, port 2
phát các nội dung của các thanh ghi đặc biệt, port 2 cũng nhận các bits địa chỉ cao
và vài tín hiệu điều khiển trong thời gian lập trình cho Flash và kiểm tra chương
trình.
+ Port 3 ( chân 10- 17): Port 3 cũng nhận một vài tín hiêu điều khiển cho việc
lập trình Flash và kiểm tra chương trình. Port 3 là port xuất nhập 8 bit hai chiều,
port 3 cũng còn làm các chức năng khác của AT89C51. các chức năng này được
nêu như sau:
Chân Tên Chức năng
P3.0 RxD Ngõ vào port nối tiếp
P3.1 TxD Ngõ ra port nối tiếp
P3.2 INT0 Ngõ vào ngắt ngoài 0
P3.3 INT1 Ngõ vào ngắt ngoài 1
P3.4 T0 Ngõ vào bên ngoài của bộ định thời 1
P3.5 T1 Ngõ vào bên ngoài của bộ định thời 0
P3.6 WR Điều khiển ghi bộ nhớ dữ liệu ngoài
P3.7 RD Điều khiển đọc bộ nhớ dữ liệu ngoài

8
+ RST ( chân 9)
Ngõ vào reset. Mức cao trên chân này trong hai chu kỳ máy trong khi bộ dao
động đang hoạt động sẽ reset AT89C51
+ ALE/PROG( chân 30)
ALE là một xung ngõ ra để chốt byte thấp của địa chỉ trong khi xuất bộ nhớ
ngoài. Chân này cũng làm ngõ vào chân lập trình (PROG) trong thời gian lạp trình
cho Flash. Khi hoạt động bình thường xung ngõ ra luôn có tần số không đổi là 1/6
tần số của mạch dao động, có thể được dùng cho các mục đích định thời bên
ngoài. Khi cần, hoạt động chân ALE có thể được vô hiệu hoá bằng cách set bit 0

của thanh ghi chức năng đặc biệt có địa chỉ 8Eh. Khi bit này được set, ALE chỉ tích
cực trong thời gian thực hiện lệnh MOVX hoặc MOVC. Ngược lại chân này sẽ
được kéo lên cao. Việc set bit không cho phép hoạt động chôt byte thấp của địa chỉ
sẽ không có tác dụng nếu bộ vi điều khiển đang ở chế độ thực thi chương trình
ngoài.
+ PSEN(chân 29): PSEN (program Store Enable) là xung điều khiển truy xuất
chương trình ngoài. Khi AT89C51 đang thực thi chương trình từ bộ nhớ chương
trình ngoài, PSEN được kích hoạt hai lần mỗi chu kỳ máy, nhưng hai hoạt động
PSEN sẽ bị bỏ qua mỗi khi truy cập bộ nhớ dữ liệu ngoài.
+ EA vpp(chân 31): Là chân cho phép truy xuất bộ nhớ chương trình ngoài ( địa
chỉ từ 0000h tới ffffh). EA = 0 cho phép truy xuát bộ nhớ chương trình ngoài,
ngược lại EA = 1 sẽ thực thi chương trình bên trong chip. Tuy nhiên, lưu ý rằng
nếu bít khoá 1 được lập trình EA được chốt bên trong khi reset
+ XTAL1& XTAL2: Là hai ngõ vào ra của hai bộ khuyếch đại đảo của mạch dao
động, được cấu hình để dùng như một bộ tạo dao động trên chip

Hình1.2.3: Bộ tạo dao động
9
I.3. TỔ CHỨC BỘ NHỚ CỦA 89C51:
7F
RAM ĐA DỤNG
30
2F 7F 7E 7D 7C 7B 7A 79 78
2E 77 76 75 74 73 72 71 70
2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60
2B 5F 5E 5D 5C 5B 5A 59 58
2A 57 56 55 54 53 52 51 50
29 4F 4E 4D 4C 4B 4A 49 48
28 47 46 45 44 43 42 41 40

27 3F 3E 3D 3C 3B 3A 39 38
26 37 36 35 34 33 32 31 30
25 2F 2E 2D 2C 2B 2A 29 28
24 27 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18
22 17 16 15 14 13 12 11 10
21 0F 0E 0D 0C 0B 0A 09 08
20 07 06 05 04 03 02 01 00
1F
BANK 3
18
10
17
BANK 2
10
0F
BANK 1
08
07
Bank thanh ghi 0 ( mặc định cho R0-R7)
00
CẤU TRÚC RAM NỘI
11
Bộ nhớ bên trong chip bao gồm ROM, RAM va EPROM. RAM trên chip
bao gồm vùng RAM đa chức năng, vùng RAM với từng bit được định địa chỉ, các
dây thanh ghi (bank) và các thanh ghi chức năng đặc biệt.
Có 2 đặc tính đáng lưu ý:
+ Các thanh ghi và các port I/O được định địa chỉtheo kiểu ánh xạ bộ nhớ
và được truy xuất như một vị trí nhớ trong bộ nhớ.
+ Vùng track thường trú trong RAM trên chip thay vì ở trong RAM ngoài

như đối với các bộ vi xử lý.
a. Vùng RAM đa mục đích:
Có 80 byte, địa chỉ từ 30H đến 7FH
Bất cứ vị trí nào trong vùng RAM ta đều có thể truy xuấttụ do bằng cách sử
dụng định địa chỉ trực tiếp hoặc gián tiếp.
Ví dụ:
+ Kiểu định địa chỉ trực tiếp:
MOV A,5FH ;Đọc nội dung tại địa chỉ 5FH của RAM
+ Kiểu định địa chỉ gián tiếp: (Qua các thanh ghi R0,R1)
MOV R0,#5FH ; Di chuyển giá trị5FH vào thanh ghi R0
MOV A,@R0 ; Di chuyển dữ liệu trỏ tới R0 và thanh chứa A
b. Vùng RAM định địa chỉ:
12
Chip 8951 chứa 210 vi trí định địa chỉ in đó có 128 byte chứa trong các byte
ở địa chỉ 20H đến 2FH (16 byte x 8 = 128 bits), phần còn lại chứa trong các
thanh ghi chức năng đặc biệt.
Công dụng: + Truy xuất các bit riêng rẽ thông qua các phần mền.
+ Các port có thể địng địa chỉ từng bit, làm đơn giản việc giao
tiếp băng phần mền với các thiết bị xuất nhập đơn bit.
Ví dụ: + Set bit trực tiếp:
SETB 67H; lệnh làm nhiệm vụ set bit 67H bằng 1
+ Hoặc ta có thẻ sử dụng lệnh sau để set bít 67H là bit lớn nhất của
byte 2CH:
ORL A,#10000000B ;Tác dung set bit
c. Các thanh ghi chức năng đặc biệt (SFR)
Không phải tất cả 128 địa chỉ từ 80H đến FFH đều được định nghĩa mà chit
có 21 địa chỉ được định nghĩa.
Các thanh ghi chức năng đặc biệt bao gồm:
+ Tử trạng thái chương trình PSW: có địa chỉ là D0H
+ Thanh ghi B: Có địa chỉ F0Hđược dùng chung với thanh chứa A trong các

phếp toán nhân và chia.
+ Con trỏ Stack (SP) : là thanh ghi 8 bit ở địa chỉ 81H, nó chứa địa chỉ của dữ
liệu hiện đang ở đỉnh của stack.
+ Con trỏ dữ liệu DPTR:
Dùng để truy xuất bộ nhớ chương trình ngoài hoặc bộ nhớ dữ liệu ngoài.
DPTR là thanh ghi 16 bit có địa chỉ 82H (byte thấp ) và 83H (byte cao).
Ví dụ:
MOV A,#55H ;Nạp hằng dữ liệu 55H và thanh chứa A
MOV DPTR,%1000 ;Nạp hằng địa chỉ 16 bit 1000H cho
; con trỏ DPTR
13
MOV @DPTR,A ; Chuyển dữ liệu từ A vao RAM ngoài
; tai địa chỉ DPTR trỏ tới.
+ Các thanh ghi port:
- Port 0 : địa chỉ 80H
- Port 1 : địa chỉ 90H
- Port 2 : địa chỉ A0H
- Port 3 : địa chỉ B0H
+ Các thanh ghi định thời:
IC 8951 có 2 bộ định thời/đếm dùng để định khoảng thời gian hoặc đếm các
sự kiện.
- Bộ định thời 0: địa chỉ 8AH (TL0 ) va 8CH (TH0)
- Bộ định thời 1: địa chỉ 8bH (TL1 ) va 8DH (TH1)
Hoạt động của bộ định thời được thiết lậpbởi thanh ghi chế độ định thời
TMOD ở địa chỉ 89H và thanh ghi đieèu khiển bộ định thời TCON ở địa chỉ
88H (chỉ có TCON được định địa chỉ từng bit)
+ Các thanh ghi của port nối tiếp: Chip 8951 có 1 port nối tiếp để truyền
thông với các thiết bị như các thiết bị đầu cuối hoặc model
+ Các thanh ghi ngắt: có một cấu trúc ngắt với 2 mức ưu tiên và 5 nguyên
nhân ngắt. Các ngắt bị vô hiệu hoá sau khi Reset hệ thống và được phép bằng

cách vào thanh ghi IE ở địa chỉA8H. Mức ưu tiên ngắt được thiết lập bơit thanh
ghi IP ở địa chỉ B8H.
+ Thanh ghi điều khiển nguồn: PCON có địa chỉ 87H
I.4 TÓM TẮT TẬP LỆNH .
Thông qua việc khảo sát các kiểu định địa chỉ và các ví dụ trên các tình
huống lập trình điển hình để chúng ta tiếp cận tập lệnh của họ MCS-51.
a.Các kiểu định địa chỉ.
Có 8 kiểu định địa chỉ :
14
+ Thanh ghi.:
VD: MOV PSW,#00011000B
+ Trực tiếp :
VD: MOV P1, A
+ Gián tiếp:
VD: MOV A,@R0
+ Tức thời:
VD: MOV A, #54
+ Tương đối:
VD: SJMP THREE :Nhảy đến nhãn THREE
+ Tuyệt đối:
VD: AJMP THREE
+ Dài:
+ Chỉ số.
VD: JMP @A+DPTR
b. Các loại lệnh:
Có 5 nhóm lệnh:
+ Nhóm lệnh số học.
ADD A , nguồn: Cộng toán hạng nguồn vào A
ADD A, #data : Cộng dữ liệu data với A
ADDC A,nguồn: Cộng nguồn với A và cờ nhớ.

ADDC A,#data : Cộng dữ liệu data với A và cờ nhớ.
SUBB A, nguồn: Trừ A với nguồn
SUBB A,#data : Trừ A với data
INC A : Tăngnội dung thanh ghi A lên 1
15
DEC A : Giảm nội dung thanh ghi A lên 1
INC DPTR : Tăng DPTR
MUL AB : Nhân nội dung thanh ghi A và B
DIV AB : Chia A cho B
DA A : Hiệu chình thập phân thanh ghi A
+ Nhóm lệnh Logic.
ANL A, nguồn AND
ANL A, #data
ANL direct,A
ANL direct , #data
ORL A, nguồn OR
ORL A, #data
ORL direct,A
ORL direct , #data
XRL A, nguồn OR
XRL A, #data
XRL direct,A
XRL direct , #data
CLR A Xoá A
CPL A Lấy bù A
RL A Quay trái A
RLC A Kể cả cờ nhớ
RR A Quay phải A
RRC A Kể cả cờ nhớ
SWAP A Hoán đồi 2 nửa 4 bit

16
+Nhóm lệnh di chuyển dữ liệu
MOV A, nguồn Di chuyển toán hạng nguông đến đích
MOV A, # data
MOV dest , A
MOV dest, #data
MOV DPTR,#data16
MOVC A,@A+DPTR Di chuyển từ bộ nhớ chương trình
MOVC A,#A+PC
MOVX A,@Ri
MOVX A,@DPTR
MOVX @Ri,A
MOVX @DPTR,A
PUSH direct Cất vào Stack
POP direct Lấy ra từ Stack
XCH A,source Trao đồi các byte
XCHD A,@Ri Trao đồi các digit thấp
+ Nhóm lệnh xử lí bit.
CLR C xoá bit
CLR bit
SETB C
SETB bit
CPL C
CPL bit
ANL C, bit AND
ANL C ,/bit AND NOT bit với C
17
ORL C, bit
ORL C, /bit
MOV C,bit

MOV bit, C
JC rel Nhảy đến Rel nếu C=1
JNC rel Nhảy đến Rel nếu C=0
JB bit, rel Nhảy nếu bit bằng 1
JNB bit, rel Nhày nếu bit =0
JBC bit , rel Nhảy nếu bit =1 rồi xoá bit
+Nhóm lệnh rẽ nhánh.
ACALL addr11 Gọi chương trình con
LCALL addr16
RET Quay về từ chương trình con
RETI Quay về từ chương trình ngắt
AJMP addr11 Nhảy
LJMP addr16
SJMP rel
JMP @ A+DPTR
JZ rel Nhảy nếu A=0
JNZ rel Nhảy nếu A <>0
CJNE A,direct, rel So sánh và nhảy
CJNE #data, rel
CJNE Rn,#data, rel
CJNE @ Ri,# data, rel
DJNZ Rn, rel Giảm và nhảy nếu khác 0
18
DJNZ direct, rel
NOP Không làm gì
CHƯƠNG II
GIỚI THIỆU VỀ MẠCH QUANG BÁO
II.1. MẠCH QUANG BÁO
II.1.1 Tổng quan về mạch quang báo.
Để thiết kế một mạch quang báo thì có nhiều phương án để lựa chọn như: dùng

EEPROM, dùng máy tính điều khiển trực tiếp, dùng vi xử lý, vi điều khiển.
Khi sử dụng EEPROM để lưu trữ thông tin hiển thị kết hợp với các IC giải đa
hợp (Demultiplexer) để điều khiển qua trình hiển thị trên màn hình. ưu điểm của
EEPROM là thông tin không bị mất khi không có nguồn cấp và khi muốn thay đổi
nội dung bản tin ta chỉ việc lập trình lại cho EEPROM (thay đổi phần mềm). Việc
thay đôi như vậy xem ra có vẻ đơn giản, nhưng ta cần có mạch nạp và phần mềm
điều khiển. Việc tháo lắp nhiều sẽ dẫn đến hỏng hóc không đáng có.
19
Khi vi xử lý được sử dụng trong mạch thì mạch sẽ có thêm nhiều tính năng hơn
nhưng giá thành cho một sản phẩm cũng vì thế mà tăng lên. Một mạch vi xử lý cần
có thêm EEPROM(để lưu chương trình điều khiển), RAM và các IC giao tiếp
ngoại vi khác(8255, 74373…). Một kít vi xử lý như vậy sẽ đem lại cho bảng
thông tin những tính năng như: việc cập nhật nội dung hiển thị sẽ dễ dàng
hơn(không cần tháo IC ra) bằng các nhập chương trình mới vào RAM, các hiệu
ứng đặc biệt về màu sắc cũng được thực hiện dễ dàng. Tuy nhiên như đã nói ở trên,
do vấn đề giá thành cao nên phương án này không được chọn.
Dùng máy tính để điều khiển bảng tin cũng là một phương án. Nhưng do kích
thước máy tính lớn chiếm nhiều diện tích, lại đắt tiền nên ta không sử dụng.
Phương án được lựa chọn là dùng Vi Điều Khiển. Vì sao lại chọn Vi Điều
Khiển?
Thứ nhất: Ngày nay Vi Điều Khiển được sử dụng rộng rãi trong các ứng dụng
hướng điều khiển do kích thước gọn, khả năng tích hợp cao nhiều tính năng trong
một con Vi Điều Khiển khiến cho mạch điện tử trở nên đơn giản hơn nhiều.
Thứ hai: Giá thành của Vi Điều Khiển không quá đắt như Vi xử lý. Trên thế
giới hiện có rất nhiều nhà sản xuất Vi Điều Khiển (ATMEL, ZILOG, MicroChip,
Motorola, Cypress…). Sự cạnh tranh của các nhà sản xuất về giá thành và khả
năng tích hợp đem lại lợi ích cho người sử dụng.
Thứ ba: Vi Điều Khiển được coi như một “small computer” hay System On
Chip (SoC). Bên trong vi điều khiển bao gồm CPU, ROM , RAM, EEPOM, các
giao tiếp ngoại vi, các khối số học và tương tự (ADC,DAC, op-amp, bộ so sánh…)

tuỳ theo từng loại.
Tại Viêt Nam, thị trường Vi Điều Khiển khá sôi động. Chỉ cần vào một của
hàng điện tử bất kỳ ta đều có thể mua được một con Vi Điều Khiển ưng ý. Về công
cụ phát triển cho Vi Điều Khiển ta có thể tìm thấy rất nhiều trên mạng Internet, trên
các diễn đàn về điện tử trong và ngoài nước, hầu hết đều là các tiện ích miễn phí
dành cho người sử dụng …
Sau một thời gian nghiên cứu về Vi Điều Khiển, mà cụ thể là dòng Vi Điều
Khiển, em quyết định chọn Vi Điều Khiển 89C51 để thực hiện đề tài “thiết kế
mạch quang báo dùng Vi Điều Khiển ”.
II.1.2 Ứng dụng
20
Hằng ngày chúng ta nhin thấy những biển quang cáo hay những bảng thông
báo tất cả những cái đó là ứng dụng của quang báo mà tạo nên làm cho nó chạy
lên chạy xuống, ngang dọc Như vậy quang báo ngày nay đã được sử dụng nhiều
vào các lĩnh vực khác nhau như : giới thiệu sản phẩm thông báo tin tức với ứng
dụng rộng rãi như vậy thì chúng ta hãy đi tìm hiểu nó thế nào nó hoạt động thế nào,
chạy ra sao tất cả những cái đó hông qua đề tài " Thiết kế và thi công mạch
quang báo dùng EROM. Quang báo có thể hiện thị được các hình ảnh cử động chứ
ko gói gọn trong việc hiện thị chữ> nhưng trong đề tài này chỉ có gói gọn trong
việc hiện thị chữ chạy. Các bạn có thể tải tài liệu về tham khảo!
II.2 GIỚI THIỆU VỀ LED MA TRẬN
II.2.1 Sơ đồ cấu tạo của LED ma trận
Bảng hiển thị ma trận LED (diot-matrix display) có rất nhiều loại và đủ kích
cỡ to nhỏ khác nhau, mỗi bảng gồm có rất nhiều LED đơn được ghép lại với nhau
trong một khối. Trong khối đó các LED đơn được sắp sếp theo các hàng và các cột,
tại mỗi giao điểm của hàng với cột là một LED đơn, và người ta thường phân biệt
các loại bảng LED theo số hàng và cột. Một bảng LED 5x7 tức là có 5 cột dọc và 7
hàng ngang, tổng cộng sẽ có 5x7=35 LED đơn được ghép lại. Cũng như vậy một
bảng 8x8 là có 8 hàng và 8 cột, do 64 LED đơn ghép lại. Và nhiều loại cỡ to hơn
như 16x16 hay 32x32…

21

Hình2.1.1: Minh họa một bảng led matrix 8x8:
Sơ đồ cấu tạo: một ma trận led có 16 chân được sắp xếp theo thứ tự 8 hàng 8 cột
được đánh số từ 1 đến 8, số chân của led được đánh từ 1 đến 16 theo sơ đồ hình vẽ.

22
Hình 2.1.2: Sơ đồ ghép nối của bảng led matrix 8x8:
Khi đóng vỏ, sự phân bố chân các hàng và cột là không theo thứ tự (do tính
phức tạp trong ghép nối), do đó ta cần tìm hiểu kỹ để mắc mạch cho đúng, nên theo
thứ tự đó ta có các chân số cột gồm: 13,3,4,10,6,11,15,16;các chân số hang theo
thứ tự là: 9,14,8,12,1,7,2,5. Bảng ma trận LED có hai loại, loại có các cột là các
chân Anode, còn hàng là các chân Cathode và loại kia thì ngược lại các cột là
Cathode, hàng là Anode. Khi sử dụng LED ta cần chú ý điều này để điều khiển cho
đúng.
23
II.2.2.
Nguyên tắc làm sáng đèn trên bảng LED
Khi muốn làm sáng LED đơn, ta cần đưa điên áp dương vào chân Anode
và điện áp âm
vào chân Cathode với giá trị thích hợp, khi đó LED sáng.
Giá trị điện áp và dòng điện tuỳ
thuộc vào màu sắc từng loại LED. Dòng
chảy qua các LED để đảm bảo độ sáng bình thường là từ 10mA cho đến
25mA.
Khi ta muốn làm sáng một điểm trên bảng ma trận LED ta cũng làm
tương tự.
II.2.3. Nguyên tắc quét bảng ma trận LED
Trong đề tài này em sử dụng 4 bảng LED 8x8 ghép lại thành một bảng cỡ 8x32
(8 hàng và 32 cột). Để hiển thị ký tự lên bảng LED, ở đây ta dùng phương pháp

quét cột và xuất dữ liệu hàng. Quá trình quét cột là ta gửi tín hiệu cho phép đến
từng cột trong từng thời điểm. Cùng lúc đó ta gửi dữ liệu hàng đến 7 hàng. Trong
đề tài này tín hiệu cho phép cột là mức logic ‘0’, và dữ liệu hàng tương ứng là mức
‘1’ hay ‘1’ của từng hàng, mức ‘0’ ứng với LED sáng (on) và mức ‘1’ là tắt (off).
• Đầu tiên ta đưa dữ liệu cần hiển thị đến 7 hàng, ví dụ 11100110
• Kích hoạt cột thứ nhất và các LED tương ứng sẽ sáng. Tạo một thời gian trễ,
sau đó tắt cột thứ nhất.
• Gửi tiếp giá trị dữ liệu 7 hàng của cột thứ 2, kích hoạt cột thứ 2, tạo trễ và lại
tắt cột thứ 2.
• Quá trình quét đó cứ tiếp diễn cho đến khi quét hết 32 cột của bảng LED.
Việc quét hiển thị này diễn ra trong thời gian rất ngắn, cỡ vài chục ms, ta sẽ
thấy hình ảnh hay chữ hiển thị trên bảng LED. Tuy rằng trong mỗi thời điểm
chỉ có một cột được sáng nhưng do thời gian quét rất nhanh và do hiện
tương lưu ảnh trong võng mạc của mắt nên ta thấy hình ảnh xuất hiện liên
tục. Tần số quét cần phải đảm bảo sao cho đủ hoặc lớn hơn 24hình/s.
Thường ta chọn tần số quét từ 40Hz đến 100Hz hoặc có thể lớn hơn.
Dữ liệu hiển thị của hàng được lấy từ EEPROM hoặc từ Flash ROM của Vi
Điều Khiển hay từ ROM ngoài.
Trạng thái của một LED sẽ được quyết định bởi tín hiệu điện áp đi vào đồng
thời cả 2 chân. Ví dụ để LED sáng thì điện áp 5V phải đưa vào chân dương và
chân âm phải được nối mass, LED sẽ tắt khi chân âm nối với điện áp mức cao. Với
đề tài này, chúng em chọn loại ma trận LED 8x8 để hiển thị.Ta có sơ đồ nguyên lý
của Ma trận LED 8x8:
24
Hình 2.1.3: Sơ đồ guyên lý led matric
Để ma trận có thể sáng như hình vẽ (hiển thị một phần của chữ ABCD):

Hình 2.1.4: hiển thị chữ trên Led matric
Đèn LED thứ nhất Đèn LED thứ hai Đèn LED thứ ba
Thực hiện quét dòng và cột:

25

×