Tải bản đầy đủ (.doc) (30 trang)

Thiết kế mạch LED sao băng – hiển thị chữ trên LCD sử dụng họ 8051 kèm đủ file đồ án

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 (496.18 KB, 30 trang )

Đồ án vi xử lý GVHD: Trần Trung Tín
LỜI MỞ ĐẦU
Kỹ thuật vi điều khiển hiện nay rất phát triển, nó được ứng dụng vào rất nhiều
lĩnh vực sản xuất công nghiệp, tự động hóa, trong đời sống và còn nhiều lĩnh vực khác
nữa. So với kỹ thuật số thì kỹ thuật vi điểu khiển nhỏ gọn hơn rất nhiều do nó được
tích hợp lại và có khả năng lập trình được để điều khiển. Nên rất tiện dụng và cơ động.
Với tính ưu việt của vi điều khiển thì trong phạm vi đồ án nhỏ này, chúng em dùng vi
điều khiển để Thiết kế mạch LED sao băng – hiển thị chữ trên LCD sử dụng họ
8051
Mục đích của đề tài hướng đến: tạo ra bước đầu cho sinh viên thử nghiệm
những ứng dụng của vi điều khiển trong thực tiễn để rồi từ đó tìm tòi, phát triển nhiều
ứng dụng khác trong đời sống hằng ngày cần đến.
Tham gia vào thực hiện đề tài "Thiết kế mạch LED sao băng – hiển thị chữ
trên LCD sử dụng họ 8051". Dưới sự hướng dẫn của thầy Trần Trung Tín. Chúng em
mong rằng sự nhiệt tình của thầy sẽ giúp chúng em thực hiện đề tài thành công.
Việc thực hiện xong đồ án môn học bằng các kiến thức đã học, một số sách
tham khảo và một số nguồn tài liệu khác nên không tránh khỏi những thiếu sót. Vì vậy
nhóm rất mong được sự góp ý của thầy cô và các bạn.
Chúng em xin chân thành cảm ơn!
CCVT03A Trang 1
Đồ án vi xử lý GVHD: Trần Trung Tín
NHẬN XÉT CỦA GIÁO VIÊN






















CCVT03A Trang 2
Đồ án vi xử lý GVHD: Trần Trung Tín
MỤC LỤC
LỜI MỞ ĐẦU 1
NHẬN XÉT CỦA GIÁO VIÊN 2
2
2
2
2
2
2
2
2
2
2
2
2
2

2
2
2
2
2
2
2
2
MỤC LỤC 3
MỤC LỤC HÌNH ẢNH, BẢNG BIỂU 6
CHƯƠNG 1. TỔNG QUAN VỀ VI ĐIỀU KHIỂN 89C51 7
1.1 Giới thiệu chung về họ vi điều khiển 8051 7
1.2 Sơ đồ chân của IC 89C51 7
1.2.1 Chức năng của các chân 89C51 7
1.3 Các thanh ghi port xuất nhập 10
1.3.1 Các thanh ghi timer 10
CCVT03A Trang 3
Đồ án vi xử lý GVHD: Trần Trung Tín
1.3.2 Các thanh ghi port nối tiếp 10
1.3.3 Các thanh ghi ngắt 10
1.3.4 Thanh ghi điều khiển công suất 11
1.3.5 Tín hiệu Reset 11
1.3.6 Hoạt động thanh ghi TIMER 11
1.3.7 Thanh ghi chế độ timer (TMOD) 12
1.3.8. Thanh ghi điều khiển timer(TCON) 13
1.3.9 Khởi động và truy xuất thanh ghi timer 13
1.3.10 Ngắt (INTERRUPT) 14
CHƯƠNG 2. TỔNG QUAN VỀ LED – LCD 17
2.1 Tổng quan về LED 17
LED ( light-emitting diode) Diode phát quang 17

2.1.1 Cấu tạo led đơn 17
2.1.2 Nguyên lý làm việc 18
2.1.3 Ứng dụng của LED 18
2.2 Tìm hiểu về màn hình LCD 19
2.2.1 Phân loại LCD 19
2.2.2 Mô tả về các chân của Màn hình LCD 16x2 19
2.2.3 Nguyên tắc hiển thị ký tự trên màn hình LCD 21
CHƯƠNG 3. MẠCH LED SAO BĂNG - HIỂN THỊ LCD 23
3.1 Mạch led sao băng 23
3.1.1 Nguyên lý làm việc của mạch hiển thị 23
3.1.2 Sơ đồ nguyên lý 23
3.1.3 Sơ đồ mô phỏng bằng proteus 23
3.1.4 Sơ đồ mạch in 26
3.2 Mạch hiển thị LCD 27
3.2.1 Nguyên lý hoạt động 27
3.2.2 Sơ đồ nguyên lý 27
3.2.3 Sơ đồ mô phỏng bằng protues 28
3.2.4 Sơ đồ mạch in 28
KẾT LUẬN 29
TÀI LIỆU THAM KHẢO 30
CCVT03A Trang 4
Đồ án vi xử lý GVHD: Trần Trung Tín
CCVT03A Trang 5
Đồ án vi xử lý GVHD: Trần Trung Tín
MỤC LỤC HÌNH ẢNH, BẢNG BIỂU
DANH MỤC CÁC HÌNH VẼ
Hình 1.1: Hình dạng thực tế và sơ đồ chân của AT89C51 7
Hình 1.2 Chân XTAL 1 và XTAL 2 của nguồn tạo xung 9
Hình 1.3 Sơ đồ chân RESET của 89C51 11
Hình 2.1 Hình dạng thực tế Led đơn 17

Hình 2.2 Cấu tạo của Led đơn 17
Hình 2.3 Sơ đồ nguyên lý làm việc Led đơn 18
Hình 2.4 Sơ đồ chân của LCD 16x2 19
Hình 3.1 Sơ đồ nguyên lý mạch hiển thị dùng Led đơn 23
Hình 3.2 Sơ đồ mô phỏng mạch hiển thị dùng Led đơn 26
Hình 3.3 Sơ đồ mạch in led sao băng 26
Hình 3.4 Sơ đồ nguyên lý hiển thị LCD 27
Hình 3.5 Sơ đồ mô phỏng mạch LCD 28
Hình 3.6 Sơ đồ mạch in LCD 28
DANH MỤC BẢNG BIỂU
Bảng 1.1 Chức năng các chân của port 3 8
Bảng 1.2 Các thanh ghi trạng thái của chân RESET 11
Bảng 1.3 Các thanh ghi chức năng của timer trong 8031 12
Bảng 1.4 Tóm tắt thanh ghi chức năng TMOD 12
Bảng 1.5 Thanh ghi điều khiển timer 13
Bảng 1.6 Tóm tắt thanh ghi IE 15
Bảng 1.7 Các loại cờ ngắt trong 89C51 15
Bảng 1.8 Các vecter ngắt trong 80C51 16
Bảng 2.1 Tác dụng các chân của LCD 16x2 19
Bảng 2.2 Chức năng chân RS và R/W theo mục đích sử dụng 20
Bảng 2.3 Mã lệnh trong LCD 21
CCVT03A Trang 6
Đồ án vi xử lý GVHD: Trần Trung Tín
CHƯƠNG 1. TỔNG QUAN VỀ VI ĐIỀU KHIỂN 89C51
1.1 Giới thiệu chung về họ vi điều khiển 8051
Với chip 8051 lần đầu tiên được đưa ra thị trường thì nó có các đặc trưng được
tóm tắt như sau:
- 4KB ROM
- 128byte RAM
- 4 port xuất nhập (I/O)8 bit

- 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
- Không gian nhớ rữ liệu ngoài 64k
- Bộ xử lý bit (thao tác trên các bít riêng rẽ)
- 210 vị trí được định địa chỉ, mỗi vị trí 1 bit
1.2 Sơ đồ chân của IC 89C51
Dưới đây là hình dạng thực tế và sơ đồ chân của vi điều khiển AT89C51
Hình 1.1: Hình dạng thực tế và sơ đồ chân của AT89C51
1.2.1 Chức năng của các chân 89C51
 Chân VCC: Chân số 40 là VCC cấp điện áp nguồn cho Vi điều khiển. Nguồn
điện cấp là +5V±0.5.
 Chân GND: Chân số 20 nối GND (hay nối Mass). Khi thiết kế cần sử dụng
một mạch ổn áp để bảo vệ cho Vi điều khiển, cách đơn giản là sử dụng IC ổn áp 7805.
CCVT03A Trang 7
Đồ án vi xử lý GVHD: Trần Trung Tín
 Port 0 (P0): Port 0 gồm 8 chân (từ chân 32 đến 39) có hai chức năng:
Chức năng xuất/nhập : Các chân này được dùng để nhận tín hiệu từ bên ngoài
vào để xử lí, hoặc dùng để xuất tín hiệu ra bên ngoài, chẳng hạn xuất tín hiệu để điều
khiển led đơn sáng tắt.
Chức năng là bus dữ liệu và bus địa chỉ (AD7-AD0) : 8 chân này (hoặc Port 0)
còn làm nhiệm vụ lấy dữ liệu từ ROM hoặc RAM ngoại (nếu có kết nối với bộ nhớ
ngoài), đồng thời Port 0 còn được dùng để định địa chỉ của bộ nhớ ngoài.
 Port 1 (P1): Port P1 gồm 8 chân (từ chân 1 đến chân 8), chỉ có chức năng làm
các đường xuất/nhập, không có chức năng khác.
 Port 2 (P2): Port 2 gồm 8 chân (từ chân 21 đến chân 28) có hai chức năng:
Chức năng xuất/nhập
Chức năng là bus địa chỉ cao (A8-A15): khi kết nối với bộ nhớ ngoài có dung
lượng lớn,cần 2 byte để định địa chỉ của bộ nhớ, byte thấp do P0 đảm nhận, byte cao
do P2 này đảm nhận.

 Port 3 (P3): Port 3 gồm 8 chân (từ chân 10 đến 17):
Chức năng xuất/nhập
Với mỗi chân có một chức năng riêng thứ hai như trong bảng sau :
Bảng 1.1 Chức năng các chân của port 3
Bit Tên Chức năng
P3.0 RxD Ngõ vào nhận dữ liệu nối tiếp
P3.1 TxD Ngõ xuất dữ liệu nối tiếp
P3.2 INT0 Ngõ vào ngắt cứng thứ 0
P3.3 INT1 Ngõ vào ngắt cứng thứ 1
P3.4 T0 Ngõ vào của Timer/Counter thứ 0
P3.5 T1 Ngõ vào của Timer/Counter thứ 1
P3.6 WR Ngõ điều khiển ghi dữ liệu lên bộ nhớ ngoài
P3.7 RD Ngõ điều khiển đọc dữ liệu từ bộ nhớ bên ngoài
P1.0 T2 Ngõ vào của Timer/Counter thứ 2
P1.1 T2X Ngõ Nạp lại/thu nhận của Timer/Counter thứ 2
CCVT03A Trang 8
Đồ án vi xử lý GVHD: Trần Trung Tín
 Chân RESET (RST)
Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban
đầu cho vi điều khiển. Hệ thống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ
này ở mức 1 tối thiểu 2 chu kì máy.
 Chân XTAL1 và XTAL2
Hai chân này có vị trí chân là 18 và 19 được sử dụng để nhận nguồn xung
clock từ bên ngoài để hoạt động, thường được ghép nối với thạch anh và các tụ
để tạo nguồn xung clock ổn định.
Hình 1.2 Chân XTAL 1 và XTAL 2 của nguồn tạo xung
 Chân cho phép bộ nhớ chương trình PSEN
PSEN ( program store enable) tín hiệu được xuất ra ở chân 29 dùng để
truy xuất bộ nhớ chương trình ngoài. Chân này thường được nối với chân
OE (output enable) của ROM ngoài.

Khi vi điều khiển làm việc với bộ nhớ chương trình ngoài, chân này
phát ra tín hiệu kích hoạt ở mức thấp và được kích hoạt 2 lần trong một
chu kì máy
Khi thực thi một chương trình ở ROM nội, chân này được duy trì ở
mức logic không tích cực (logic 1)
(Không cần kết nối chân này khi không sử dụng đến)
 Chân ALE (chân cho phép chốt địa chỉ-chân 30)
Khi Vi điều khiển truy xuất bộ nhớ từ bên ngoài, port 0 vừa có chức
năng là bus địa chỉ, vừa có chức năng là bus dữ liệu do đó phải tách các
đường dữ liệu và địa chỉ. Tín hiệu ở chân ALE dùng làm tín hiệu điều
khiển để giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối
chúng với IC chốt.
CCVT03A Trang 9
Đồ án vi xử lý GVHD: Trần Trung Tín
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào
vi điều khiển, như vậy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock
cung cấp cho các phần khác của hệ thống.
Ghi chú: khi không sử dụng có thể bỏ trống chân này.
 Chân EA
Chân EA dùng để xác định chương trình thực hiện được lấy từ ROM
nội hay ROM ngoại.
Khi EA nối với logic 1(+5V) thì Vi điều khiển thực hiện chương trình
lấy từ bộ nhớ nội.
Khi EA nối với logic 0(0V) thì Vi điều khiển thực hiện chương trình
lấy từ bộ nhớ ngoài.
1.3 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ận tiện trong khả năng giao tiếp.
1.3.1 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.
1.3.2 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ếp như 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ập trình qua thanh ghi điều khiển port nối tiếp SCON
ở địa chỉ 98H.
1.3.3 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ống và 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.
CCVT03A Trang 10
Đồ án vi xử lý GVHD: Trần Trung Tín
1.3.4 Thanh ghi điều khiển công suất
Thanh ghi điều khiển công suất (PCON) ở địa chỉ 87H chứa các bit điều khiển.
1.3.5 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ấn thườ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:
Hình 1.3 Sơ đồ chân RESET của 89C51
Bảng 1.2 Các thanh ghi trạng thái của chân RESET
1.3.6 Hoạt động thanh ghi TIMER
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 để:

CCVT03A Trang 11
Thanh ghi Nội dung
Đếm chương trình PC 0000H
Thanhghi tích lũy A 00H
Thanh ghi B 00H
Thanh ghi trạng thái 00H
SP 07H
DPTR 0000H
Port 0 đến Port 3 FFH
IP XXX0000 B
IE 0XX00000 B
Các thanh ghi định thời 00H
Đồ án vi xử lý GVHD: Trần Trung Tín
• Đị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ụng khá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ảng sau:
Bảng 1.3 Các thanh ghi chức năng của timer trong 8031.
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
1.3.7 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.
Bảng 1.4 Tóm tắt thanh ghi chức năng TMOD
Bit Tên Timer Mô tả
7 GATE 1 Bit mở cổng, khi lên 1 timer chỉ chạy khi INT1 ở mức
cao
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ức
cao
2 C/T 0 Bit chọn chế độ Count/Timer
1 M1 0 Bit 1 của chế độ mode
CCVT03A Trang 12
Đồ án vi xử lý GVHD: Trần Trung Tín
0 M0 0 Bit 0 của chế độ mode
1.3.8. 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.
Bảng 1.5 Thanh ghi điều khiển timer
Bit Ký hiệu Địa chỉ Mô tả
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ần mề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ần mề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ức
thấ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
1.3.9 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 ứng dụng.
TMOD là thanh ghi thứ nhất được khởi động vì nó đặt chế độ hoạt động. Ví dụ,
các lệnh sau khởi động Timer 1 như timer 16 bit (chế độ 1) có xung nhịp từ bộ dao
động tên chip cho việc định khoảng thời gian:
MOV TMOD, #1B
Lệnh này sẽ đặt M1 = 1 và M0 = 0 cho chế độ 1, C/ T= 0 và GATE = 0 cho xung
CCVT03A Trang 13
Đồ án vi xử lý GVHD: Trần Trung Tín
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.
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
1.3.10 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ương trì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ều khiể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.
CCVT03A Trang 14
Đồ án vi xử lý GVHD: Trần Trung Tín
Bảng 1.6 Tóm tắt thanh ghi IE
Bit Ký hiệu Địa chỉ bit Mô tả
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
 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.
Bảng 1.7 Các loại cờ ngắt trong 89C51
Ngắt Cờ Thanh ghi SFR và vị trí bit
Bên ngoài 0 IE0 TCON.1
Bê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 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
CCVT03A Trang 15
Đồ án vi xử lý GVHD: Trần Trung Tín
Bảng 1.8 Các vecter ngắt trong 80C51
Ngắt Cờ Địa chỉ vector
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.
CCVT03A Trang 16
Đồ án vi xử lý GVHD: Trần Trung Tín
CHƯƠNG 2. TỔNG QUAN VỀ LED – LCD
2.1 Tổng quan về LED

LED ( light-emitting diode) Diode phát quang
Hình 2.1 Hình dạng thực tế Led đơn
2.1.1 Cấu tạo led đơn
Điôt phát quang gồm có một lớp tiếp xúc P-N và hai chân cực anốt (A), catốt (K).
Anốt nối với bán dẫn loại P, còn Catốt được nối với bán dẫn loại N.
Hình 2.2 Cấu tạo của Led đơn
CCVT03A Trang 17
Đồ án vi xử lý GVHD: Trần Trung Tín
Vật liệu chế tạo điôt phát quang đều là các liên kết của các nguyên tố thuộc nhóm
3 và nhóm 5 của bảng tuần hoàn Menđêlêep nhƣ GaAs, hoặc liên kết 3 nguyên tố như
GaAsP v.v
Đây là các vật liệu tái hợp trực tiếp, có nghĩa là sự tái hợp xảy ra giữa các điện tử
ở sát đáy dải dẫn và các lỗ trống ở sát đỉnh dải hóa trị.
2.1.2 Nguyên lý làm việc
Hình 2.3 Sơ đồ nguyên lý làm việc Led đơn
Khi LED phân cực thuận, các hạt dẫn đa số khuếch tán ồ ạt qua tiếp xúc P-N,
chúng gặp nhau sẽ tái hợp và các photon được phát sinh. Tốc độ tái hợp trong quá
trình bức xạ tự phát này tỉ lệ với nồng độ điện tử trong phần bán dẫn P và nồng độ lỗ
trống trong phần bán dẫn N.
Đây là các hạt dẫn thiểu số trong chất bán dẫn. Như vậy, để tăng số photon bức xạ
ra cần phải gia tăng nồng độ hạt dẫn thiểu số trong các phần bán dẫn. Cường độ dòng
điện của điôt tỉ lệ với nồng độ hạt dẫn được "chích" vào các phần bán dẫn, do đó
cường độ phát quang của LED tỉ lệ với cường độ dòng điện qua điôt. Như vậy LED có
khả năng biến đổi tín hiệu điện thành tín hiệu quang, nên nó được coi là dụng cụ phát
quang.
Điện áp phân cực cho LED gần bằng độ rộng vùng cấm của vật liệu, do đó các
LED bức ở các bước sóng khác nhau sẽ được chế tạo từ các vật liệu bán dẫn có độ
rộng vùng cấm khác nhau và điện áp phân cực cho chúng cũng khác nhau. Tuy nhiên
LED có điện áp phân cực thuận của LED là từ 1.5V ~ 3V tùy từng loại LED.
LED đỏ 1,4V - 1,8V

LED vàng 2V - 2,5V
LED xanh lá cây 2V - 2,8V
Khi LED hoạt động bình thường thì dòng qua LED từ 10mA đến 50mA.
2.1.3 Ứng dụng của LED
Đèn chiếu sáng sử dụng các LED phát ánh sáng trắng.
CCVT03A Trang 18
Đồ án vi xử lý GVHD: Trần Trung Tín
LED được dùng để làm bộ phận hiển thị trong các thiết bị điện, điện tử, đèn quảng
cáo, trang trí, đèn giao thông.
Có nghiên cứu về các loại LED có độ sáng tương đương với bóng đèn bằng khí
neon. Đèn chiếu sáng bằng LED được cho là có các ưu điểm như gọn nhẹ, bền, tiết
kiệm năng lượng.
Các LED phát ra tia hồng ngoại được dùng trong các thiết bị điều khiển từ xa cho
đồ điện tử dân dụng.
2.2 Tìm hiểu về màn hình LCD
2.2.1 Phân loại LCD
Có thể chia các module LCD làm hai loại chính :
Loại hiển thị ký tự (character LCD ) gồm có các kích cỡ 16x1(16 ký tự 1 dòng);
16x2 (16 ký tự x 2 dòng) ; 16x4 (16 ký tự x 4 dòng); 20x1 (20 ký tự x1 dòng) v.v
Loại hiển thị đồ họa (graphic LCD ) đen trắng hoặc màu ,gồm các kích cỡ 1,47
inch (128 x128 điểm ảnh) ;1,8 inch (128 x 160 điểm ảnh); 2,4 inch (240x 320 điểm
ảnh) v.v…
2.2.2 Mô tả về các chân của Màn hình LCD 16x2
Hình 2.4 Sơ đồ chân của LCD 16x2
Bảng 2.1 Tác dụng các chân của LCD 16x2
Chân Ký hiệu I/O Mô tả
1 VSS - Đất
2 VCC - Nguồn +5V
3 VEE - Cấp nguồn điều khiển phản
4 RS I RS=0 chọn thanh ghi lệnh

RS=1 chọn thanh dữ liệu
CCVT03A Trang 19
Đồ án vi xử lý GVHD: Trần Trung Tín
5 R/W I R/W=1 đọc dữ liệu
R/W =0 ghi dữ liệu
6 E I/O Cho phép
7 DB0 I/O Các bít dữ liệu
8 DB1 I/O Các bít dữ liệu
9 DB2 I/O Các bít dữ liệu
10 DB3 I/O Các bít dữ liệu
11 DB4 I/O Các bít dữ liệu
12 DB5 I/O Các bít dữ liệu
13 DB6 I/O Các bít dữ liệu
14 DB7 I/O Các bít dữ liệu
 Chức năng của các chân :
Chân Vcc: cấp nguồn dương
Chân Vss: cấp nguồn âm
Chân VEE : điều khiển độ tương phản của LCD
Chân chọn thanh ghi RS :có hai thanh ghi rất quan trọng trong LCD, chân RS
(register select) được dùng để chọn thanh ghi như sau : Nếu RS=1 thì thanh ghi dữ liệu
được chọn cho phép người dùng gửi dữ liệu cần hiể thị về LCD; Nếu RS=0 thì thanh
ghi mà lệnh được chọn để cho phép người dùng gửi một lệnh chẳng hạn như lệnh xóa
màn hình ,đưa con trỏ về đầu dòng…
Chân đọc/ghi (R/W) :đầu vào đọc/ghi cho phép người dùng ghi thông tin lên
LCD khi R/W =0 hoặc đọc thông tin từ nó khi R/W=1
Bảng 2.2 Chức năng chân RS và R/W theo mục đích sử dụng
RS RW Chức năng
0 0 Ghi vào thanh ghi IR để ra lệnh cho LCD
0 1 Đọc cờ bận ở DB7 và giá trị của bộ đếm địa chỉ ở DB0-DB6
1 0 Ghi vào thanh ghi DR

1 1 Đọc dữ liệu từ DR
Chân cho phép E(Enable) :Chân cho phép E được sử dụng bởi LCD để chốt dữ
liệu của nó .Khi dữ liệu được cấp đến chân dữ liệu thì một xung mức cao xuống thấp
phải được áp đến chân này để LCD chốt dữ liệu trên các chân dữ liệu.
Chân D0 D7 : Đây là 8 chân dữ liệu 8 bit ,được dùng để gửi thông điệp lên
LCD hoặc đọc nội dung các thanh ghi trong LCD .Để hiển thị các chữ cái và các con
số ,chúng ta gửi mã ASCII của các chữ cái từ A đến Z ,a đến z và các con số từ 0 đến 9
CCVT03A Trang 20
Đồ án vi xử lý GVHD: Trần Trung Tín
đến các chân này khi bật RS =1.Cũng có các mã lệnh có thể được gửi đến LCD để xóa
màn hình hoặc dưa con trỏ về đầu dòng hoặc nhấp nháy con trỏ
Chú ý :Chúng ta cũng được sử dụng RS=0 để kiểm tra bí cờ bận để xem LCD
có sẵn sàng nhận thông tin.Cờ bận là bit D7 và có thể được đọc khi R/W=1 và RS=0
như sau: Nếu R/W =1 ,RS=0 khi D7=1 (cờ bận 1)thì LCD bận bởi các công viêc bên
trong và sẽ không nhận bất cứ thông tin mới nào.Khi D7=0 thì LCD sẵn sàng nhận
thông tin mới.Lưu ý chúng ta nên kiểm tra cờ bận trước khi ghi bất kỳ dữ liệu nào lên
LCD.
Chân 15 và 16 :ghi là A và K .Nó là a nốt và ca tốt của một đèn LED dùng để
chiếu sáng LCD trong bóng tối.Chúng ta không sử dụng.Nếu muốn dùng thì nối chân
A qua một điện trở từ 1k đến 5k lên dương 5V ,chân K xuống đất đèn sẽ sáng.
Bảng 2.3 Mã lệnh trong LCD
Mã lệnh(hex) Lệnh đến thanh ghi của LCD
1 Xóa màn hình hiển thị
2 Trở về đầu dòng
4 Giảm con trỏ (dịch con trỏ sang trái)
6 Tăng con trỏ (dịch con trỏ sang phải)
5 Dịch hiển thị sang phải
7 Dịch hiển thị sang trái
8 Tắt con trỏ,tắt hiển thị
A Tắt hiển thi ,bật con trỏ

C Tắt con trỏ,bật hiển thị
E Bật hiển thị ,nhấp nháy con trỏ
F Tắt hiển thị,nhấp nháy con trỏ
10 Dịch vị trí con trỏ sang trái
14 Dịch vị trí con trỏ sang phải
18 Dịch toàn bộ hiển thị sang trái
1C Dịch toàn bộ hiển thị sang phải
80 Ép con trỏ về đầu dòng thứ nhất
C0 Ép con trỏ về đầu dòng thứ hai
38 Hai dòng và ma trận 5x7
2.2.3 Nguyên tắc hiển thị ký tự trên màn hình LCD
Một chương trình hiển thị ký tự trên LCD sẽ đi theo 4 bước sau :
1)Xóa toàn bộ màn hình
2)Đặt chế độ hiển thị
3)Đặt vị trí con trỏ (Nơi bắt đầu của ký tự hiển thị)
4)Hiển thị ký tự
CCVT03A Trang 21
Đồ án vi xử lý GVHD: Trần Trung Tín
Chú ý :
+ Các bước 3,4 có thể lặp đi lặp lại nhiều lần nếu hiển thị nhiều ký tự
+ Chế độ hiển thị mặc định sẽ là hiển thị dịch ,vị trí con trỏ mặc định sẽ là dòng
thứ nhất
Để điều khiển hoạt động của LCD nên sử dụng port 2 hoặc port 1 cho việc xuất
nhập dữ liệu ,các chân tạo tín hiệu điều khiển RS, RW, EN_LCD có thể chọn tùy ý
trong các chân của các Port còn lại.
CCVT03A Trang 22
Đồ án vi xử lý GVHD: Trần Trung Tín
CHƯƠNG 3. MẠCH LED SAO BĂNG - HIỂN THỊ LCD
3.1 Mạch led sao băng
3.1.1 Nguyên lý làm việc của mạch hiển thị

Mạ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 trung tâm sử dụng vi điều khiển 89C51.
Khi ta cấp nguồn cho vi xử lý thì vi xử lý sẽ hoạt động. Nó sẽ cấp nguồn cho các
chân của vi xử lý và mạch sẽ hoạt động theo chương trình đã được định sẵn của người
sử dụng.
Vi điều khiển sẽ xuất tín hiệu ra các port để làm sáng đèn led như mong muốn và
tạo ra hiệu ứng nhấp nháy, sáng theo kiểu sao băng.
3.1.2 Sơ đồ nguyên lý
Hình 3.1 Sơ đồ nguyên lý mạch hiển thị dùng Led đơn
3.1.3 Sơ đồ mô phỏng bằng proteus
Vì mạch hiển thị 32 led sao băng cũng tương tự như 16 led, vậy nên ở đây
chúng em chỉ mô phỏng cho 16 led.
CCVT03A Trang 23
Đồ án vi xử lý GVHD: Trần Trung Tín
CCVT03A Trang 24
Đồ án vi xử lý GVHD: Trần Trung Tín
CCVT03A Trang 25

×