47
§å ¸n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn ==================== ====================== ===================== ============ TRƯỜNG ĐẠI HC SƯ PHM KTHUT TP.HCM KHOA ĐIN-ĐIN TỬ ĐỒ ÁN MÔN HC1 THIT KMCH QUANG BÁO DÙNG VI ĐIU KHIN GVHD : ĐẬU TRNG HIN SVTH : LÊ XUÂN TÌNH 06119047 LƯƠNG CÔNG DANH 0611903 TP HChí Minh Ngày 17 Thán g 7 Năm 2009 Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Đi n_ Đi n t 1

QUANG BAONEW

  • Upload
    vu-ngo

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 1/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM

KHOA ĐIỆN-ĐIỆN TỬ 

ĐỒ ÁN MÔN HỌC1

THIẾT KẾ MẠCH QUANG BÁO

DÙNG VI ĐIỀU KHIỂN

GVHD : ĐẬU TRỌNG HIỂN

SVTH : LÊ XUÂN TÌNH 06119047

LƯƠNG CÔNG DANH 0611903

TP Hồ Chí Minh Ngày 17 Tháng 7 Năm 2009

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 1

Page 2: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 2/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

MỤC LỤC

 Lời nói đầu………………………………………………………..……2

Chương 1 GIỚI THIỆU 89C51…………………………….……...4

Chương 2-GIỚI THIỆU MẠCH QUANG BÁO…………………15

I.Tổng quan

II.Chức năng từng khối

Chương 3 MẠCH QUANG BÁO DÙNG

VI ĐIỀU KHIỂN 89C51…………………………………18

I.Nguyên lý làm việc của mạch quang báo

I.1Giới thiệu bảng đèn quang báo

I.2 Nguyên tắc làm sáng đèn LED 8x8

I.3 Nguyên tắc quét bảng ma trận LED

I.4 Phương pháp tạo hiệu ứng chử chạy

II. Sơ đồ nguyên lý

III. Linh kiện sử dụng trong mạch

IV. Lưu đồ giải thuật

V. Mã nguồn chương trình

Chương 4 – GIỚI THIỆU CÁC LINH KIỆN …………..…24

I. IC 74HC595

II. IC ULN 2803

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 2

Page 3: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 3/47

Page 4: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 4/47

Page 5: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 5/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Chức năng của các chân 89C51:

Port 0: từ chân 32 đến chân 39 (P0.0 _P0.7). Port 0 có 2 chức năng: trong các thiết kế cỡ nhỏ không dùng bộ nhớ mở rộng nó có chức năng như các đường IO, đối với thiết kế lớn có

 bộ nhớ mở rộng nó được kết hợp giữa bus địa chỉ và bus dữ liệu.Port 1: từ chân 1 đến chân 8 (P1.0 _ P1.7). Port 1 chỉ có chức năng dung làm các đường

điều khiển xuất nhập IO

Port 2: từ chân 21 đến chân 28 (P2.0 _P2.7). Nếu không dùng bộ nhớ mở rộng bên ngoàithì port 2 dùng làm các đường điều khiển IO.Nếu dung bộ nhớ mở rộng bên ngoài thì port 2 cóchức năng là bus địa chỉ cao A0 – A15.

Port 3: từ chân 10 đến chân 17 (P3.0 _ P3.7). Port 3 là port có 2 chức năng.Các chân portnày có nhiều chức năng , các công dụng chuyển đổi có liên hệ đặc biệt của 89C51 như ở bảng

sau:PSEN (Program store enable):

PSEN là tín hiệu ngõ ra ở chân 29 có tác dụng cho phép đọc bộ nhớ chương trình mở rộng thường được nối đến chân OE\ của Eprom cho phép đọc các byte mã lệnh.

PSEN ở mức thấp trong thời gian 89C51 lấy lệnh. Các mã lệnh của chương trình đượcđọc từ Eprom qua bus dữ liệu, được chốt vào thanh ghi lệnh bên trong 89C51 để giải mã lệnh.Khi 89C51 thi hành chương trình trong EPROM nội PSEN ở mức logic 1.

ALE (Address Latch Enable):

Khi 89C51 truy xuất bộ nhớ bên ngoài, Port 0 có chức năng là bus địa chỉ và dữ liệu(AD7 – AD0) do đó phải tách các đường dữ liệu và địa chỉ. Tín hiệu ra ALE ở chân thứ 30dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kết nối chúng vớiIC chốt.

Tín hiệu ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò là địa chỉ thấpnên chốt địa chỉ hoàn toàn tự động.

EA\ (External Access):

Tín hiệu vào EA\ ở chân 31 thường được mắc lên mức 1 hoặc mức 0.

Nếu ở mức 1 thì vi điều khiển thi hành chương trình từ bộ nhớ nội.

Nếu ở mức 0 thì vi điều khiển thi hành chương trình từ bộ nhớ ngoại.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 5

Page 6: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 6/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

RST (Reset):

 Ngõ vào chân 9 là ngõ vào Reset.Khi cấp điện cho hệ thống hoặc nhấn nút reset thì mạchsẽ reset vi điều khiển.Khi reset thì tín hiệu reset phải ở mức cao ít nhất 2 chu kì máy.

Các ngõ vào bộ dao động Xtal1, Xtal2:

Bộ tạo dao động được tích hợp bên trong 89C51. Khi sử dụng 89C51, người ta chỉ cầnnối thêm tụ thạch anh và các tụ. Tần số tụ thạch anh thường là 12 Mh – 24 Mh.

2. Cấu trúc bên trong của 89C51

B1. Sơ đồ khối bên trong 89C51:

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 6

Page 7: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 7/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Hình 2-3. Cấu trúc bên trong của vi điều khiển

 

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 7

Page 8: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 8/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

B2. Tổ chức bộ nhớ.

Hình 2-4. Bảng tóm tắt các vùng nhớ 89C51

RAM bên trong 89C51 được phân chia như sau:

Các bank thanh ghi có địa chỉ từ 00H đến 1FH.

RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH

RAM đa dụng từ 30H đến 7FH.

Các thanh ghi chức năng từ 80H đến FFH.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 8

Page 9: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 9/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Hình 2-5. Cấu trúc bộ nhớ Ram bên trong vi điều khiển

- Bộ nhớ trong 89C51 bao gồm ROM và RAM. RAM trong 89C51 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi và các thanhghi chức năng đặc biệt.

- 89C51 có bộ nhớ theo cấu trúc Harvard: có những vùng bộ nhớ riêng biệt cho chươngtrình và dữ liệu. Chương trình và dữ liệu có thể chứa bên trong 8951 nhưng 8951 vẫn có thểkết nối với 64K byte bộ nhớ chương trình và 64K byte dữ liệu.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 9

7F 7E 7D 7C 7B 7A 79 782F77 76 75 74 73 72 71 702E6F 6E 6D 6C 6B 6A 69 682D67 66 65 64 63 62 61 602C

5F 5E 5D 5C 5B 5A 59 582B57 56 55 54 53 52 51 502A4F 4E 4D 4C 4B 4A 49 482947 46 45 44 43 42 41 40283F 3E 3D 3C 3B 3A 39 382737 36 35 34 33 32 31 30262F 2E 2D 2C 2B 2A 29 282527 26 25 24 23 22 21 20241F 1E 1D 1C 1B 1A 19 182317 16 15 14 13 12 11 10220F 0E 0D 0C 0B 0A 09 082107 06 05 04 03 02

07

1

0020

Bank 31F18

Bank 21710

Bank 10F08

Bank thanh ghi 0

(maëc ñònh cho R0-R7)

0700

RAM ña duïng

7F

30

RAM

Ñòa chæ bit

87 86 85 84 83 82 81 8080 P0

khoâng ñöôïc ñòachæ hoùa bit

81 SP

khoâng ñöôïc ñòachæ hoùa bit

82 DPL

khoâng ñöôïc ñòachæ hoùa bit

83 DPH

khoâng ñöôïc ñòachæ hoùa bit

87 PCON

8F 8E 8D 8C 8B 8A 89 8888 TCONkhoâng ñöôïc ñòachæ hoùa bit89 TMOD

khoâng ñöôïc ñòa

chæ hoùa bit

8A TL0

khoâng ñöôïc ñòachæ hoùa bit

8B TL1

khoâng ñöôïc ñòachæ hoùa bit

8C TH0

97 96 95 94 93 92 91 9090 P1

9F 9E 9D 9C 9B 9A 99 9898 SCON

khoâng ñöôïc ñòachæ hoùa bit

99 SBUF

A7 A6 A5 A4 A3 A2 A1 A0A0 P2

AF – – AC ABAA

A9 A8A8 IE

– – – BC BB BA B9 B8B8 IP

E7 E6 E5 E4 E3 E2 E1 E0E0 ACC

D7 D6 D5 D4 D3 D2 – D0D0 PSW

B7 B6 B5 B4 B3 B2 B1 B0B0 P3

F7 F6 F5 F4 F3 F2 F1 F0F0 B

CAÙC THANH GHI CHÖÙC NAÊNG ÑAËCBIEÄT

Ñòa chæ  bit

khoâng ñöôïc ñòachæ hoùa bit

8D TH1

FF

Địa chỉ byte

Địa chỉ byte

Page 10: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 10/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Bộ nhớ bên trong 89C51 bao gồm ROM và RAM. RAM bao gồm nhiều thành phần: phầnlưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức

năng đặc biệt.89C51 có bộ nhớ theo cấu trúc Harvard: có những vùng nhớ riêng biệt cho chương trình và

dữ liệu. Chương trình và dữ liệu có thể chứa bên trong 89C51 nhưng 89C51 vẫn có thể kết nốivới 64 k byte bộ nhớ chương trình và 64 k byte bộ nhớ dữ liệu mở rộng.

Ram bên trong 89C51 được phân chia như sau:

• Các bank thanh ghi có địa chỉ từ 00H đến 1FH.

• Ram địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH.

• Ram đa dụng từ 30H đến 7FH.• Các thanh ghi chức năng đặc biệt từ 80H đến FFH.

Ram đa dụng:

Vùng nhớ Ram đa dụng gồm có 80 byte địa chỉ từ 30H – 7FH .Vùng nhớ bank thanhghi 32 byte từ 00H – 1FH cũng có thể dung làm vùng nhớ Ram đa dụng. Mọi địa chỉ trongvùng Ram đa dụng đều có thể truy xuất tự do dùng kiểu địa chỉ trực tiếp hoặc gián tiếp. Bộnhớ ngan xếp của vi điều khiển dùng bộ nhớ Ram nội nên dung lượng bộ nhớ ngăn xếp nhỏtrong khi đó các bộ vi xử lý bên ngoài làm bộ nhớ ngăn xếp nên dung lượng tùy ý mở rộng .

Ram có thể truy xuất từng bit:

89C51 chứa 210 bit được địa chỉ hóa từng bit, trong đó 128 bit chứa ở các byte có địachỉ từ 20H đến 2FH, các bit còn lại chứa trong nhóm thanh ghi chức năng đặc biệt.

Ýtưởng truy xuất từng bit bằng phần mềm là một đặc tính mạnh của vi điều khiển nóichung. Các bit có thể được đặt, xóa, and, or,… với 1 lệnh đơn. Ngoài ra các port cũng có thểtruy xuất được từng bít làm đơn giản phần mềm xuất nhập từng bit.

Các bank thanh ghi:

Bộ lệnh 89C51 hỗ trợ 8 thanh ghi có tên là R0 đến R7 và theo mặc định (sau khi resethệ thống), các thanh ghi nàyở các địa chỉ 00H đến 07H.

Đây là lệnh 1 byte dùng địa chỉ thanh ghi. Tuy nhiên có thể thi hành bằng lệnh 2 bytedùng địa chỉ trực tiếp nằm trong byte thứ 2: MOV A, 05H.

Lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanh hơn nhiều so với lệnhtương ứng dùng địa chỉ trực tiếp.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 10

Page 11: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 11/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Bank thanh ghi tích cực bằng cách thay đổi các bit trong từ trạng thái chương trình(PSW). Giả sủ thanh ghi thứ 3 đang được truy xuất, lệnh sau đây sẽ di chuyển nội dung củathanh ghi A vào ô nhớ ram có địa chỉ 18H:

MOV R0, A.Các thanh ghi có chức năng đặc biệt:

89C51 có 21 thanh ghi chức năng đặc biệt (SFR: Special Funtion Register) ở vùng trên củaRAM nội từ địa chỉ 80H đến FFH.

Chú ý: tất cả 128 địa chỉ từ 80H đến FFH không được định nghĩa, chỉ có 21 thanh ghi chứcnăng đặc biệt được định nghĩa sẵn các địa chỉ.

Các thanh ghi port xuất nhập:

Các port của 89C51 bao gồm port 0 ở địa chỉ 80H, port 1 ở địa chỉ 90H, port 2 ở địa chỉA0H, và port3 ở địa chỉ B0H. tất cả các port này đều có thể truy xuất từng bit nên rất thuậntiện trong khả năng giao tiếp.

Các thanh ghi timer:

89C51 có chứa 2 bộ định thời/ đếm 16 bit được dùng cho việc định thời hoặc đếm sựkiện. Timer 0 ở địa chỉ 8AH (TL0: byte thấp) và 8CH (TH0: byte cao). Timer 1 ở địa chỉ 8BH(TL1: byte thấp) và 8DH (TH1: byte cao). Việc khởi động timer được Set bởi Timer Mode

(TMOD) ở địa chỉ 89H và thanh ghi điều khiển timer (TCON) ở địa chỉ 88H, chỉ có TCONđược địa chỉ hóa từng bit.

Các thanh ghi port nối tiếp:

89C51 chứa một port nối tiếp dành cho việc trao đổi thông tin với các thiết bị nối tiếpnhư máy tính, modem hoặc giao tiếp nối tiếp với các IC khác. Một thanh ghi gọi là bộ đệm dữliệu nối tiếp (SBUF) ở địa chỉ 99H sẽ giữ cả 2 dữ liệu truyền và dữ liệu nhận. Khi truyền dữ

liệu thì ghi lên SBUF, khi nhận dữ liệu thì đọc SBUF. Các mode vận hành khác nhau được lậptrình qua thanh ghi điều khiển port nối tiếp SCON ở địa chỉ 98H.

Các thanh ghi ngắt:

89C51 có cấu trúc 5 nguồn ngắt, 2 mức ưu tiên. Các ngắt bị cấm sau khi reset hệ thốngvà sẽ được cho phép bằng việc ghi thanh ghi cho phép ngắt (IE) ở địa chỉ A8H, cả 2 thanh ghiđược địa chỉ hóa từng bit.

Thanh ghi điều khiển công suất:

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 11

Page 12: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 12/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Thanh ghi điều khiển công suất (PCON) ở địa chỉ 87H chứa các bit điều khiển.

Tín hiệu Reset:

89C51 có ngõ vào reset RST tác động ở mức cao trong khoảng thời gian 2 chu kỳ, sau đó

xuống mức thấp để 89C51 bắt đầu làm việc. RST có thể kích bằng tay bằng một phím nhấnthường mở, sơ đồ mạch reset như hình trên (hình a)

sau khi reset hệ thống được tóm tắt như sau:

Thanh ghi Nội dung

Đếm chương trình PC

Thanhghi tích lũy A

Thanh ghi B

Thanh ghi trạng thái

SP

DPTR 

Port 0 đến Port 3

IP

IE

Các thanh ghi định thời

0000H

00H

00H

00H

07H

0000H

FFH

XXX0000 B

0XX00000 B

00H

Hoạt động thanh ghi TIMER 

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 12

Page 13: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 13/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

89C51 có hai timer 16 bit, mỗi timer có bốn cách làm việc. Người ta sử dụng các timer để:

• Định khoảng thời gian.

• Đếm sự kiện.• Tạo tốc độ baud cho port nối tiếp trong 89C51.

Trong các ứng dụng định khoảng thời gian, người ta lập trình timer ở những khoảng đềuđặn và đặt cờ tràn timer. Cờ được dùng để đồng bộ hóa chương trình để thực hiện một tácđộng như kiểm tra trạng thái của các ngõ vào hoặc gửi sự kiện ra các ngõra. Các ứng dụngkhác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đo thời gian trôi qua giữa hai sựkiện (ví dụ đo độ rộng xung ).

Truy xuất các timer của 89C51 dùng sáu thanh ghi chức năng đặc biệt cho trong bảngsau:

SFR Mục Đích Địa chỉ Địa chỉ hóa từng bit

TCON Điều khiển Timer 88H Có

TMOD Chế độ Timer 89H Không

TL0 Byte thấp của Timer 0 90H Không

TL1 Byte thấp của Timer 1 91H Không

TH0 Byte cao của Timer 0 92H Không

TH1 Byte cao của Timer 1 93H Không

Các thanh ghi chức năng của timer trong 8031.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 13

Page 14: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 14/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Thanh ghi chế độ timer (TMOD):

Thanh ghi TMOD chứa hai nhóm 4 bit dùng để đặt chế độ làm việc cho Timer 0, vàTimer 1.

Bit Tên Timer Mô tả

7 GATE 1 Bit mở cổng, khi lên 1 timer chỉ chạy khi INT1 ở mứccao

6 C/T 1 Bit chọn chế độ Count/Timer  

1 = bộ đếm sự kiện

0 = bộ định khoảng thời gian

5 M1 1 Bit 1 của chế độ mode

4 M0 1 Bit 0 của chế độ mode

3 GATE 0 Bit mở cổng, khi lên 1 timer chỉ chạy khi INT0 ở mứccao

2 C/T 0 Bit chọn chế độ Count/Timer  

1 M1 0 Bit 1 của chế độ mode

0 M0 0 Bit 0 của chế độ mode

Tóm tắt thanh ghi chức năng TMOD.

Thanh ghi điều khiển timer(TCON)

Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển cho Timer 1, Timer 0.

Bit Ký hiệu Địa chỉ Mô tả

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 14

Page 15: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 15/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

TCON.7 TF1 8FH Cờ báo tràn timer 1. Đặt bởi phần cứng khi tràn,được xóa bởi phần mềm, hoặc phần cứng khi bộxử lý chỉ đến chương trình phục vụ ngắt.

TCON.6 TR1 8EH Bit điều khiển timer 1 chạy đặt xóa bằng phầnmềm để cho timer chạy ngưng.

TCON.5 TF0 8DH Cờ báo tràn Timer 0.

TCON.4 TR0 8CH Bit điều khiển Timer 0 chạy

TCON.3 IE1 8BH Cờ cạnh ngắt 1 bên ngoài. Đặt bởi phần cứng khi phát hiện một cạnh xuống ở INT1 xóa bằng phầnmềm họăc phần cứng khi CPU chỉ đến chương

trình phục vụ ngắt.TCON.2 IT1 8AH Cờ kiểu ngắt 1 bên ngoài. Đặt xóa bằng phần

mềm để ngắt ngoài tích cực cạnh xuống /mứcthấp.

TCON.1 IE0 89H Cờ cạnh ngắt 0 bên ngòai

TCON.0 IT0 88h Cờ kiểu ngắt 0 bên ngoài

Khởi động và truy xuất thanh ghi timer:

Thông thường các thanh ghi được khởi động một lần đầu ở chương trình để đặt ở chế độlàm việc đúng. Sau đó, trong thân chương trình, các thanh ghi timer được cho chạy, dừng, các bit được kiểm tra và xóa, các thanh ghi timer được đọc và cập nhật…. theo đòi hỏi các ứngdụng.

TMOD là thanh ghi thứ nhất được khởi động vì nó đặt chế độ hoạt động. Ví dụ, các lệnhsau khởi động Timer 1 như timer 16 bit (chế độ 1) có xung nhịp từ bộ dao động tên chip choviệc định khoảng thời gian:

MOV TMOD, #1BLệnh này sẽ đặt M1 = 1 và M0 = 0 cho chế độ 1, C/ T= 0 và GATE = 0 cho xung nhịp

nội và xóa các bit chế độ Timer 0. Dĩ nhiên, timer không thật sự bắt đầu định thời cho đến khi bit điều khiển chạy TR1 được đặt lên 1.

 Nếu cần số đếm ban đầu, các thanh ghi TL1/TH1 cũng phải được khởi động. Mộtkhoảng 100 s có thể được khởi động bằng cách khởi động giá trị cho TH1/TL1 là FF9CH:

MOV TL1, #9CH

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 15

Page 16: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 16/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

MOV TH1, #0FFH

Rồi timer được cho chạy bằng cách đặt bit điều khiển chạy như sau:

SETB TR1

Cờ báo tràn được tự động đặt lên 1 sau 100 s. Phần mềm có thể đợi trong 100 s bằng  cách dùng lệnh rẽ nhánh có điều kiện nhảy đến chính nó trong khi cờ báo tràn chưa được đặtlên 1:

WAIT: JNB TF1, WAIT

Khi timer tràn, cần dừng timer và xóa cờ báo tràn trong phần mềm:

CLR TR1

CLR TF1

Ngắt ( INTERRUPT)

Một ngắt là sự xảy ra một điều kiện, một sự kiện mà nó gây ra treo tạm thời thời chươngtrình chính trong khi điều kiện đó được phục vụ bởi một chương trình khác.

Các ngắt đóng một vai trò quan trọng trong thiết kế và cài đặt các ứng dụng vi điềukhiển. Chúng cho phép hệ thống đáp ứng bất đồng bộ với một sự kiện và giải quyết sự kiện đótrong khi một chương trình khác đang thực thi.

Tổ chức ngắt của 89C51:

Có 5 nguồn ngắt ở 89C51: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port nối tiếp. Tất cảcác ngắt theo mặc nhiên đều bị cấm sau khi reset hệ thống và được cho phép từng cái một bằng phần mềm.

Khi có hai hoặc nhiều ngắt đồng thời, hoặc một ngắt xảy ra khi một ngắt khác đang được phục vụ, có cả hai sự tuần tự hỏi vòng và sơ đồ ưu tiên hai mức dùng để xác định việc thực

hiện các ngắt. Việc hỏi vòng tuần tự thì cố định nhưng ưu tiên ngắt thì có thể lập trình được.

Cho phép và cấm ngắt :

Mỗi nguồn ngắt được cho phép hoặc cấm ngắt qua một thanh ghi chức năng đặt biệt cóđịnh địa chỉ bit IE ( Interrupt Enable : cho phép ngắt ) ở địa chỉ A8H.

Bit Ký hiệu Địa chỉ bit Mô tả

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 16

Page 17: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 17/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

IE.7 EA AFH Cho phép / Cấm toàn bộ

IE.6 _ AEH Không được mô tả

IE.5 ET2 ADH Cho phép ngắt từ Timer 2(8052)

IE.4 ES ACH Cho phép ngắt port nối tiếp

IE.3 ET1 ABH Cho phép ngắt từ Timer 1

IE.2 EX1 AAH Cho phép ngắt ngoài 1

IE.1 ET0 A9H Cho phép ngắt từ Timer 0

IE.0 EX0 A8H Cho phép ngắt ngoài 0

Tóm tắt thanh ghi IE

Các cờ ngắt :

Khi điều kiện ngắt xảy ra thì ứng với từng loại ngắt mà loại cờ đó được đặt lên một đểxác nhận ngắt.

 Ngắt Cờ Thanh ghi SFR và vị trí bit

Bên ngoài 0 IE0 TCON.1Bên ngoài 1 IE1 TCON.3

Timer 1 TF1 TCON.7

Timer 0 TF0 TCON.5

Port nối tiếp TI SCON.1

Port nối tiếp RI SCON.0

Các lọai cờ ngắt

 Các vectơ ngắt :

 Khi chấp nhận ngắt, giá trị được nạp vào PC được gọi là vector ngắt. Nó là địa chỉ bắtđầu của ISR cho nguồn tạo ngắt, các vector ngắt được cho ở bảng sau

 Ngắt Cờ Địa chỉ vector 

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 17

Page 18: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 18/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Reset hệ thống RST 0000H

Bên ngoài 0 IE0 0003H

Timer 0 TF0 000BH

Bên ngoài 1 IE1 0013H

Timer 1 TF1 001BH

Port nối tiếp TI và RI 0023H

Timer 2 002BH

Vector reset hệ thống (RST ở địa chỉ 0000H) được để trong bảng này vì theo nghĩa này,nó giống ngắt : nó ngắt chương trình chính và nạp cho PC giá trị mới.

************************************************************************************

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 18

Page 19: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 19/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

CHƯƠNG 2

GIỚI THIỆU MẠCH QUANG BÁO

I. Tổng quanĐể 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ẻ đơngiả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ỏnghóc không đáng có.

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ưnggiá 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êmEEPROM(để 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ìnhmớ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ướcmá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ềuKhiể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ệncó 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.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 19

Page 20: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 20/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

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ệntử 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ử trongvà 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, emquyế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.CHỨC NĂNG TỪNG KHỐI TRONG MẠCHQUANG BÁO

Sơ đồ khối mạch quang báo

• KHỐI DAO ĐỘNG: tạo xung nhịp dao động cho Vi Điều Khiển. Sử dụng thạch anhtần số 12MHz .

• KHỐI GIẢI MÃ ĐỊA CHỈ CỘT : Nhận tín hiệu từ Vi Điều Khiển, từ đó đưa ra tín hiệu cho phép cột LED nào trên

 bảng đèn (ma trận LED) được phép sáng. Tại mỗi thời điểm chỉ có một cột LED được phép sáng.Tín hiệu sau đó được đưa qua bộ đệm dòng cho cột. IC được sử dụng cho bộgiải mã cột là 74HC595 - Ghi dịch 8 bit vào nối tiếp ra song song

• KHỐI GIẢI MÃ HÀNG VÀ CHỐT DỮ LIỆU RA HÀNG:Nhận tín hiệu từ Vi Điều Khiển. Dử liệu sau đó được đưa qua bộ đệm dòng cho

hàng sử dụng 8 con Transistor A1015 để phun dũng ra hàng

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 20

Page 21: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 21/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

• KHỐI CÁC BỘ ĐỆM DềNG CHO CỘT VÀ HÀNG :Được sử dụng đề đảm bảo độ sáng của các LED trân màn hình là đồng đều khi chỉ

1 LED sáng hay cả 8 LED của một cột đều sáng. Sử dụng transistor(A1015) và các ICđệm chuyên dụng(ULN2803).

ĐỆM DềNG CHO HÀNG:-Để tớnh dũng điện cho IC đệm dũng hàng thỡ bạn phải xem độ dài quang bỏo của bạn là bao nhiờu, trờn một hàng cú bao nhiờu con Led.VD: Trờn của bạn đang là 8x32 có 32 Led nằm trờn một hàng, giả sử tại một thờiđiểm nào đó cả 32 Led này đều sỏng, mỗi Led coi là 20mA, như vậy ta cần mộtdũng điện ra hàng >= 32*20mA = 640mA. (Cho một hàng)Bộ đệm dũng này cũn cú thể gọi là bộ phun dũng.

ĐỆM DềNG CHO CỘT:- Để tớnh dũng điện cột thỡ bạn phải xem là quang bỏo của bạn rộng bao nhiờu,

trờn một cột cú bao nhiờu Led.VD: Của bạn đang có 8 Led trên một cột như vậy dũng tối đa của 1cột là 8*20mA =160mA. Bộ đệm dũng của cột phải > = 160mA. Bộ này cũn cú thể gọi là bộ hỳt dũng.

• KHỐI ĐIỀU KHIỂN TRUNG TÂM (89C51):Gồm vi điều khiển cú nhiệm vụ xuất tớn hiệu điều khiển khối quột và khối cụng suất để

cung cấp sự điều khiển cho led ma trận

• KHỐI CẤP NGUỒN: có nhiệm vụ cấp đủ nguồn cho mạch điện nhưng bản thân nókhông bị quá dòng.

******************************************************************

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 21

Page 22: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 22/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

CHƯƠNG 3MẠCH QUANG BÁO DÙNG

VI ĐIỀU KHIỂN 89C51

I. Nguyªn lý lµm viÖc cña m¹ch quang b¸oMạch điện sử dụng Vi Điều Khiển nên về phần cứng khá đơn giản.Khối điều khiển trung tâm sử dụng Vi Điều Khiển 89C51.Khối giải mã dữ liệu hàng sử dụng 8 con transistor cú chức năng giống như cổng NOT.

Khối giải mã địa chỉ cột sử dụng IC 74HC595, đây là thanh ghi dịch 8-bit vào nối tiếp ra song song.Ta sử dụng IC này nhằm mục đích tiết kiệm chân giaotiếp giữa IC giải mã với Vi Điều Khiển. ChânDATA-IN (14) để đưa dữ liệu nối tiếpvào, chân CLK (11) đưa xung đồng hồ dịch bit, chânLATCH(12) để chốt dữ liệu được gửi ra. 8 đầu ra được nối đến 8 cột của bảng LED thông qua mạchđệm dòng.

 Nguyên lý hoạt động: Chương trình phần mềm chứa trong Vi Điều Khiển làmnhiệm vụ điều khiển chính mọi hoạt động của mạch. Chương trình phần mềm gồm cónhiều chương trình con: chương trình hiển thị, chương trình cập nhật.

I.1 Giới thiệu về bảng LED ma trận

Trước khi đi vào nguyên lý hoạt động của mạch ta tìm hiểu qua về bảng ma trận LEDđược sử dụng trong đề tài.

Bảng hiển thị ma trận LED (dot-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. Trongkhố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 đượcghé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ềuloại cỡ to hơn như 16x16 hay 32x32…

Trên thị trường ta thường thấy các bảng LED cỡ lớn, dài hàng mét với đủ kích cỡ. Các bảng LED đó là do hàng nghìn LED đơn ghép lại. Khi thiết kế những bảng LED to như vậy tacần chú ý đến sự đồng đều về độ sáng của các LED để việc hiển thị được đồng đều. Bên cạnhđó vấn đề cấp nguồn cho mạch cũng cần được chú ý và thiết kế cho phù hợp. Trong đề tài này

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 22

Page 23: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 23/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

em sử dụng hai bảng LED 8x8 cho việc hiển thị, sử dụng ma trận 5x7 cho việc hiển thị mỗimột ký tự.

Sau đây là sơ đồ ghép nối của hai loại bảng LED thông dụng là 5x7 và 8x8.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 23

Page 24: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 24/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

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ânCathode 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ầnchú ý điều này để điều khiển cho đúng. 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ạchcho đúng.

Dưới đây là sơ đồ chân của bảng LED 8x8 được dùng trong đề tài.

• Các số gạch chân là hàng

• Các số không gạch chân là cột

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 24

Page 25: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 25/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

I.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ự. Xét với

 bảng LED 5x7 dưới đây (H1.3).

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 25

Page 26: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 26/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

I.3 Nguyên tắc quét bảng ma trận LED

Trong đề tài này em sử dụng hai bảng LED 8x8 ghép lại thành một bảng cỡ 8x32 (8 hàng và32 cột). Mỗi ký tự sẽ được hiển thị trong một khung cỡ 5x7. Dưới đây là nguyên tắc quét và

hiển thị một ký tự (giả thiết là chữ R) trên khung hình 5x7.Để 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ùnglú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 ‘1’,và dữ liệu hàng tương ứng là mức ‘0’ 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ắtcộ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 16 cột của bảng LED. Việc quéthiển thị này diễn ra trong thời gian rất ngắn, cỡ vài chục mili giây, ta sẽ thấy hình ảnhhay 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 đượcsá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ủamắ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ểnhay 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ả 2châ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đất, LED sẽ tắt khi không có điện áp đưa vào chân dương.Với đề tài này, chúng em chọn loạima trận LED 8x8 để hiển thị.Ta có sơ đồ nguyên lý của Ma trận LED 8x8:

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 26

Page 27: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 27/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Để ma trận có thể sáng như hình vẽ (hiển thị một phần của chữ ADIDAS):

Đèn LED thứ nhất Đèn LED thứ hai Đèn Led thứ ba

Thực hiện quét dòng và cột:

- Chọn cột 1, đưa điện áp cột 1 về 0.- Sau đó chọn và quét lần lượt các hàng 1,2,3,4,5,6,7,8 như sau:

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 27

Page 28: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 28/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

+ Đèn 1 tắt Điện áp đưa vào hàng 1 là 0V.

+ Đèn 2 tắt Điện áp đưa vào hàng 2 là 0V.

+ Đèn 3 sáng Điện áp đưa vào hàng 3 là 5V.

+ Đèn 4 sáng Điện áp đưa vào hàng 4 là 5V.

+ Đèn 5 sáng Điện áp đưa vào hàng 5 là 5V.

+ Đèn 6 sáng Điện áp đưa vào hàng 6 là 5V.

+ Đèn 7 sáng Điện áp đưa vào hàng 7 là 5V.

+ Đèn 8 sáng Điện áp đưa vào hàng 8 là 5V.

Chọn cột 2, nối đất. Sau đó quét lần lượt các hàng 1,2,3,4,5,6,7,8.

+ Đèn 1 tắt Điện áp đưa vào hàng 1 là 0V.

+ Đèn 2 sáng Điện áp đưa vào hàng 2 là 5V

+ Đèn 3 tắt Điện áp đưa vào hàng 3 là 0V

+ Đèn 4 sáng Điện áp đưa vào hàng 4 là 5V

+ Đèn 5 tắt Điện áp đưa vào hàng 5 là 0V

+ Đèn 6 tắt Điện áp đưa vào hàng 6 là 0V

+ Đèn 7 tắt Điện áp đưa vào hàng 7 là 0V

+ Đèn 8 tắt Điện áp đưa vào hàng 8 là 0V

- Tiếp tục quét với các cột từ 3 đến 8 bằng cách như trên, sau đó chuyển sang quét đèn LEDthứ hai và thứ ba một cách tương tự.

- Để mắt người nhận biết được toàn bộ hình ảnh của ma trận ta phải tiến hành quét nhiềulần. Do mắt người không phân biệt được sự thay đổi ảnh nếu ảnh đó được quét với tốc độ 24

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 28

Page 29: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 29/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

hình/s nên nếu ta quét ảnh với tốc độ lớn hơn hoặc bằng 24 hình/s thì ảnh sẽ chạy liên tục vàkhông bị giậtk 

I.4. Phương pháp tạo hiệu ứng chữ chạy từ phải qua trái trên

bảng LED

Sau khi đã hiển thị được hình ảnh lên bảng LED. Bây giờ ta sẽ tìm hiểu cách tạohiệu ứng chữ chạy trên bảng LED. Thủ thuật ở đây là quét và hiển thị một hình ảnhtrong một thời gian nhất định, sau đó ta dịch dữ liệu của các cột sang trái một vị trí,khi đó ta sẽ tạo được hiệu ứng chữ chạy trên bảng LED.

Đề tài này ta sử dụng mạch mẫu là bảng LED 8x32, sử dụng 32 byte RAM làm bộđệm cho màn hình, lưu giá trị dữ liệu hàng của 32 cột. Bộ đệm được khai báo trong

RAM nội của chip 89C51 là một mảng gồm 33 phần tử.Chương trình hiển thị làmnhiệm vụ đọc dữ liệu từ các vị trí 0 đến 32 của bộ đệm và đ ưa ramàn hình hiển thị.Hiệu ứng chữ chạy được tạo ra bằng cách dịch giá trị các phần tử đi một vị trí

(54, 43, 32,21,10 )Sau mỗi lần dịch ta lại gọi chương trình hiển thị. Khi đótrên bảng LED ta sẽ quan sát được hiệu ứng chữ chạy.

VD:Di chuyển ký tự trên ma trận Led

Di chuyển chuỗi “AB” trên ma trận Led từ trái sang phải:

- Tính toán dữ liệu hiển thị

Giả sử cần hiển thị chuỗi “AB”:

Chữ ‘A’: 7Eh, 09h, 09h, 09h, 7EhChữ ‘B’: 7Fh, 49h,49h,49h, 36h

Giữa chữ A và B có một cột trống để phân biệt.

Chuỗi “AB”: 7Eh, 09h, 09h, 09h, 7Eh, 00h, 7Fh, 49h,49h,49h, 36h

Có thể thêm khoảng trắng trước và sau chuỗi để chuỗi hiện ra từ từ

Chuỗi “ AB ”: 00h, 00h, 00h, 00h, 00h, 7Eh, 09h, 09h, 09h, 7Eh, 00h, 7Fh,49h,49h,49h, 36h,00h, 00h, 00h, 00h

Khai báo biến:

 pa DB 00h, 00h, 00h, 00h, 00h

DB 7Eh, 09h, 09h, 09h, 7Eh, 00h

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 29

Page 30: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 30/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

DB 7Fh, 49h, 49h, 49h, 36h, 00h

DB 00h, 00h, 00h

 Như vậy, một ký tự cần hiển thị trên ma trận Led cần 6 byte và 5 byte 00h đầuchuỗi, 3 byte 00h cuối chuỗi một chuỗi dài 50 ký tự sẽ cần số byte lưu trữ chomã Led là: 50*6 + 5 + 3 = 308 byte.

- Hiển thị ký tự:

Quá trình hiển thị và cho chữ chạy mô tả như hình vẽ:

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 30

Page 31: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 31/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 31

Page 32: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 32/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Lần 1: hiển thị từ pa[0] ÷ pa[4]

Lần 2: hiển thị từ pa[1] ÷ pa[5]

Lần 16: hiển thị từ pa[15] ÷ pa[19]

lần j: hiển thị từ pa[j] ÷ pa[j+5]

Chuỗi “AB” gồm 2 ký tự cần lưu trữ 20 byte và quét tổng cộng 20 - 4 = 16lần

Chuỗi 50 ký tự cần lưu trữ 50*6 + 8 = 308 byte và quét 304 lần .

II.SƠ ĐỒ NGUYÊN LÝ

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 32

Page 33: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 33/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

III. Linh kiện sử dụng trong mạchI

- Khối điều khiển trung tâm: Vi điều khiển 89C51(1c)

- Giải mã dữ liệu hàng:Transistor A1015(8c)

- Giải mã địa chỉ cột: IC 74HC595 (4c)

IC ULN 2803(4c)

- Điện trở 100, tụ 10uF,

- Bảng LED 8x8 (4 bảng)

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 33

Page 34: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 34/47

KHOÂNG      C      O       Ù

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

IV. Lưu đồ giải thuật

VII. Mã nguồn chương trình

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 34

Naïp caùc maõ leänhvaøo con troû döû lieäu

DPTR

Goïi chöông trìnhcon queùt matrix

Kieåm tra xemxuaát hieån thò

xong chöa

Khôûi taïo caùcgiaù trò ban ñaàu

Baét ñaàu

Page 35: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 35/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Chöông trình ñieàu khieån :(ngoân ngöõ Asembly)

DULIEU BIT P3.0CLK  BIT P3.1CHAR  EQU P1  org 0000h start:

  mov a,#00h  mov p1,#0ffh  mov dptr,#DL

  mov r6,#31  ;HE  SO  NHAN BD:  mov r3,#255  ;  so cot  du lieu

loop:  mov r1,#0loop1:  setb DULIEU ; dua du lieu vao 595  mov r2,#0 lap: mov p1,#0ffh

  setb CLK  ;tao  xung  clock  vao 595  clr DULIEU  clr CLK   mov a,r2  movc a,@a+dptr  cpl a  mov CHAR ,a  mov 7fh,#100  ; cho thoi  gian ngan  djnz 7fh,$  inc r2

  cjne r2,#33,lap ;  so cot  led  matran  inc r1  cjne r1,#4,loop1 ; toc do chay chu  inc dptr  djnz r3,loop  djnz r6,BD   jmp start

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 35

Page 36: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 36/47

Page 37: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 37/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

CHƯƠNG 4GIỚI THIỆU CÁC LINH KIỆN

LIÊN QUAN

I. IC 74HC595 

IC 74HC595 là IC ghi dịch 8-bit, vào nối tiếp ra song song với một thanh ghi lưu trữ(storage register) và đầu ra 3 trạng thái.

Chức năng của IC:- Vào dữ liệu 8-bit- Đầu ra 8 -bit nối tiếp và 8-bit song song- Thanh ghi lưu trữ với đầu ra 3 trạng thái- Tần số dịch 100MHz (Typical) Mô tả chân của IC 74HC595- VCC và GND: chân cấp nguồn cho IC. Điện áp nguồn cấp trong khoảng 2V -5.5V.- Q0 ~Q7: 8 đầu ra dữ liệu song song, chân Q7’ là chân ra dữ liệu nối tiếp- MR là chân Reset IC, tích cực mức thấp (0). Khi đưa mức 0 vào chân này thì IC sẽ thực hiệnReset, tất cả đầu ra đều về 0.- SHCP là chân nhận xung đồng hồ của thanh ghi dịch- STCP là chân nhận xung đồng hồ cho thanh ghi lưu trữ- OE: chân cho phép xuất dữ liệu ra, tích cực mức thấp. Khi hoạt động chân này ở mức 0. Khiđưa chân OE lên mức 1 các đầu ra sẽ ở trạng thái trở kháng cao- Ds là chân nhận dữ liệu nối tiếp.

Hoạt động của ICDữ liệu sau khi được đưa vào chân Ds của IC, bit dữ liệu đó sẽ được dịch ứng với sườn dươngcủa xung nhịp, từ mức thấp-lên-cao( LOW-TO-HIGH ) đưa tới chân SHCP , dữ liệu vào tại

mỗi thanh ghi sẽ được đưa sang thanh ghi lưu trữ khi có một sườn dương của xung nhịp đi vàochân STCP. Xung đồng hồ tại chân SHCP phải xuất hiện trước xung nhịp vào chân STCP.Mỗi xung clock đưa vào chân SHCP tươngứng với một bit dữ liệu đưa vào tại chân Ds, 8xung ứng với 8-bit dữ liệu đưa vào, chúng được lưu rong thanh ghi lưu trữ. Khi một tín hiệutích cực mức 0 đưa vào chân OE thì 8-bit dữ liệu này sẽ được dưara 8 đầu ra song song. Khicó 8 bit dữ liệu tiếp theo được dịch vào thì 8 bit dữ liệu trước đó sẽ lần lượt được dịch ra nốitiếp nhau qua chân Q7’.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 37

Page 38: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 38/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Trong chế độ hoạt động bình thường của IC, các chân MR sẽ được nối với dương nguồn, chânOE sẽ nối với đất.

Khi ghép nối các IC 74595 nối tiếp nhau thành mạng IC thì các chân SHCP và STCP của tất

cả các IC sẽ được nối chung với nhau và nối với nguồn xung nhịp, chân Ds của IC đầu tiên sẽnối với chân vào dữ liệu (từ các IC khác), còn các IC sau đó thì được mắc nối tiếp nhau, chânDs của IC này nối với chân Q7’ của IC trước đó.

Sơ đồ chân 74HC595

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 38

Page 39: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 39/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Giản đồ thời gian quá trình truyền dử liệu

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 39

Page 40: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 40/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

II. ULN 2803Là IC gồm 8 cổng đảo, mỗi cổng đảo gồm transistor ghép darlington với dòng điện và

điện áp ngõ ra cao.

a.Sơ đồ chân.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 40

Page 41: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 41/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

 

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử

Chân 9,10 là các chân cấp nguồn.

Chân 1..8 là các ngõ vào.

Chân 11..18 là các ngõ ra đảo.

41

Page 42: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 42/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

b.Thông số của IC ULN 2803

Ta có thể tăng điện áp ngõ ra bằng cách thêm các điện trờ treo ở ngỏ ra với điện áp kéo

lên cao.

Điện áp cung cấp 5-12V

Điện áp ngõ vào tối đa 30V

Điện áp ngõ ra tối đa 50V

Dòng điện ngõ ra tối đa 500mA

Dòng điện ngõ vào 25mA

c. Chức năng:

Đệm được 8 đường riêng biệt (nối trược tiếp được với 8 chân của 74595 và 8 chân kianối với các cột của led matrix)- Dòng ra tới 500 mA-Chức năng của ULN2803 giống như bộ hút dòng

-Để tính dòng điện cột thì bạn phải xem là quang báo của bạn rộng bao nhiêu, trên một cột có bao nhiêu Led.VD: Của bạn đang có 8 Led trên một cột như vậy dòng tối đa của 1cột là 8*20mA = 160mA.

Bộ đệm dòng của cột phải > = 160mA. Bộ này còn có thể gọi là bộ hút dòng.

III. KHẢO SÁT TRANSISTOR A1015:Transtor A1015 loại transistor PNP có dòng điện ra bảo hòa cao.

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 42

Page 43: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 43/47

Page 44: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 44/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

CHƯƠNG 5THI CÔNG MẠCH QUANG BÁO

• SƠ ĐỒ MẠCH IN

KHỐI ĐIỀU KHIỂN

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 44

Page 45: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 45/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

KHỐI QUÉT LED

KHỐI HIỂN THỊ

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 45

Page 46: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 46/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Ưu khuyết điểm của mạch trên:

*Ưu điểm:

- Mạch điện tử trên dùng trong việc quảng cáo rất sinh động, việc thay thế nội

dung quảng cáo hay cách thức thể hiện dể dàng ít tốn kém, có thể sử dụng ở nhiều

nơi như: trong nhà ga, trong sân bay, các biểu ngữ ngoài đường…So với việc dùng

 băng ron hay bảng quảng cáo dán đềcal thì nó tiện dụng và việc thay đổi nội dung

dể dàng hơn.

*Khuyết điểm:

-So với việc dùng các bảng quảng cáo thông thường thì việc dùng bảng điện tử cógiá thành cao và việc sử dụng nó đòi hỏi người dùng phải có kiến thức sơ về điện

tử.

-Khi bị hỏng việc thay thế tốn nhiều tiền.

-Chưa có điều khiển được cách chạy chử

IV. HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI

Đồ án này có thể được phát triền lên thành đồ án tốt nghiệp với việc giao tiếp vớimáy tính có thể thay đổi cách họat động cũng như nội dung bảng quang báo bằng việcthay đổi nội dung trên máy tính, hay có thề dủng remote đều khiển từ xa bảng quang

 báo. Một kỹ thuật cao hơn là có thề thay đổi nội dung của bảng quang báo thông quamạng internet như các bảng quang báo mà ta đã thấy trên các xa lộ để hướng dẫn giaothông.t

Thay mặt nhóm, em xin chân thành cảm ơn thành cảm ơn thầy ĐẬU TRỌNG HIỂN

là giảng viên trực tiếp hướng dẫn chúng em trong quỏ trỡnh làm đồ ỏn này.

Cũng chân thành cảm ơn các bạn trong lớp KMT. Những kinh nghiệm,những bổ sung

của các bạn đã giúp chỳng tôi hoàn thành đề tài này.

Xin chân thành cảm ơn!

Sinh viªn: Lª Xu©n T×nh _L¬ng C«ng Danh Khoa Điện_Điện tử 46

Page 47: QUANG BAONEW

7/31/2019 QUANG BAONEW

http://slidepdf.com/reader/full/quang-baonew 47/47

§å ̧n m«n m«n häc 1 GVHD: §Ëu Träng HiÓn===========================================================================

Tài Liệu Tham Khảo:

1. Vi Xữ lý- Nguyeón Đỡnh Phỳ

2. Datasheet cua IC 74HC595 và ULC2803 www.datasheetall.com 

3 . Các bài viết trên các diễn đàn điện tử

- Diễn đàn www.dientuvietnam.net

+ Mục “Kiến thức chung về Vi Điều Khiển“ - Tìm hiểu vầ mạch

quang báo.

+ Các bài viết về Vi Điều Khiển 89C51 và cách lập trình

4.  - Và Các tài liệu khỏc được tìm kiếm thông qua trang web của

GOOGLE

www.google.com.vn

************************************************************************************