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

Hệ thống báo cháy tự động sử dụng vi điều khiển AT89C51

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.51 MB, 43 trang )

LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô của
trường Đại học công nghệ và truyền thông Thái Nguyên, đặc biệt là các thầy cô khoa
Công nghệ điện tử và truyền thông của trường đã tạo điều kiện và tổ chức khóa học
này để em có thể có điều kiện tiếp thu kiến thức mới và có thời gian để hoàn thành bài
báo cáo chuyên ngành này. Và em cũng xin chân thành cám ơn cô ThS. Cao Thị Trang
đã nhiệt tình hướng dẫn hướng dẫn em hoàn thành tốt khóa thực tập chuyên ngành. Em
xin chân thành cảm ơn các thầy cô đã truyền đạt cho chúng em những kiến thức quý
báu trong quá trình học và hoàn thành báo cáo.
Trong quá trình làm bài báo cáo, khó tránh khỏi sai sót, rất mong các thầy, cô
bỏ qua. Đồng thời do trình độ lý luận cũng như kinh nghiệm thực tiễn còn hạn chế nên
bài báo cáo không thể tránh khỏi những thiếu sót, em rất mong nhận được ý kiến đóng
góp thầy, cô để em học thêm được nhiều kinh nghiệm và sẽ hoàn thành tốt hơn bài báo
cáo tốt nghiệp sắp tới. Em xin chân thành cảm ơn!
Thái Nguyên, ngày 16 tháng 4 năm 2019
Sinh viên
Lý Văn Hảo

1


MỤC LỤC
MỤC LỤC..............................................................................................................2
DANH MỤC CÁC TỪ VIẾT TẮT.......................................................................5

2.2.2Sơ đồ khối hệ thống.....................................................................................29
3.1.2Test hoạt động của cảm biến khói..............................................................32

3.2.2 Sản phẩm của thực hành.............................................................................34
Ưu nhược điểm của mạch...................................................................................41


Ứng dụng và phát triển........................................................................................41

2


DANH MỤC HÌNH ẢNH
Hình 1.1 Sơ đồ khối của AC89C51.......................................................................7
Hình 1.2 Sơ đồ chân của AC89C51......................................................................8
Hình 1.3 Port 0......................................................................................................8
Hình 1.4 Port 1......................................................................................................9
Hình 1.5 Port 2......................................................................................................9
Hình 1.6 Port 3.....................................................................................................10
Hình 1.7 ADC0809...............................................................................................16
Hình 1.8 Sơ đồ chân ADC0809..........................................................................17
Hình 1.9 Hình dáng của LCD.............................................................................18
Hình 1.10 Sơ đồ chân của LCD..........................................................................18
Hình 1.11 Cảm biến nhiệt độ LM35...................................................................21
.............................................................................................................................. 22
Hình 1.12 Module cảm biến khí GAS MQ2.......................................................22
Hình 1.13 Tụ........................................................................................................23
Hình 1.14 Điện trở...............................................................................................23
Hình 1.15 Nút bấm..............................................................................................23
Hình 1.16 Thạch anh 12 Mhz.............................................................................23
Hình 1.17 Còi buzz..............................................................................................24
Hình 1.18 Dây cắm..............................................................................................24
Hình 1.19 Biến trở...............................................................................................24
Hình 1.20: Giao diện phần mềm Keil C uvision 4.............................................25
Hình 1.21: Giao diện phần mềm proteus 8.6.....................................................25
Hình 1.22: Giao diện phần mềm PROGISP......................................................27
Hình 2.1 Sơ đồ khối hệ thống.............................................................................29

Hình 2.2 Lưu đồ thuật toán................................................................................30
Hình 3.1 Đèn không báo khi nhiệt độ nhỏ hơn 40OC.......................................32
Hình 3.2 Đèn báo khi nhiệt độ lớn hơn 40OC...................................................32

3


Hình 3.3 Đèn không báo khi không có khói......................................................33
Hình 3.4 Đèn báo khi có khói.............................................................................33
Hình 3.5 Mạch mô phỏng....................................................................................33
Hình 3.6 Sơ đồ mạch in.......................................................................................34
Hình 3.7 Mạch thực tế.........................................................................................34

4


DANH MỤC CÁC TỪ VIẾT TẮT
ADC
DC
IC
VCC

Analog to Digital Converter
Direct Curent
Itegrated Circuit
Voltage Common Collector

5



LỜI NÓI ĐẦU
Trong những năm gần đây với sự phát triển mạnh mẽ của khoa học – kĩ
thuật.Đặc biệt của ngành công nghiệp chế tạo các linh kiện bán dẫn,các các vi mạch
tích hợp IC một hướng phát triển mới của Vi xử lý đã hình thành đó là Vi Điều
Khiển.Với những ưu điểm to lớn về tốc độ,độ chính xác cao,khả năng sử lý các bìa
toán,tính linh hoạt nên các Vi Điều khiển đã được ứng dụng trên hầu hết các lĩnh vực
trong cuộc sống. Bằng cách áp dụng Vi Điều Khiển trong sản xuất và xử lý, Vi Điều
Khiển đã thực sự thể hiện được các ưu điểm của mình so với các thiết bị thông thường
khác. Vì những ứng dụng to lớn của Vi điều khiển, do đó mà ở các trường Đại Học,
Cao Đẳng, TCCN.
Về khoa học – công nghệ, vi điều khiển 8051 sẽ cung cấp cho sinh viên những
khái niệm cơ bản cách thức hoạt động của Vi xử lý qua đó sinh viên có tư duy ,kiến
thức nền tảng,để có thể giải quyết các bài toán ứng dụng thực tế trong cuộc sống,cũng
như là cơ sở để học tập nghiên cứu các dòng vi xử lý khác như: PIC,AVR. Qua đợt
thực tập chuyên ngành này em có cái nhìn thực tế hơn, sâu sắc hơn về vi điều khiển.
Em cũng đã hiểu thêm nhiều về cách thức xử lý một bài toán thực tế phức tạp.
Sau một thời gian nghiên cứu và tìm hiểu về dòng vi điều khiển 8051 dưới sự
giúp đỡ của cô Cao Thị Trang , em đã thiết kế và xây dựng hệ thống báo cháy tự
động sử dụng vi điều khiển AT89C51.
Chúng em xin chân thành cảm ơn cô!

6


CHƯƠNG I
GIỚI THIỆU TỔNG QUAN VỀ CÁC LINH KIỆN
1.1 Vi điều khiển AT89C51.
1.1.1 Giới thiệu tổng quan về họ vi điều kiển 8051
AT89C51 là một vi điều khiển 8 bit, chế tạo theo công nghệ CMOS chất lượng
cao, công suất thấp với 4 KB PEROM (Flash Programeable and erasable read only

memory).
Các đặc điểm của 8951 được tóm tắt như sau:
 4KB bộ nhớ, có thể lập trình lại nhanh, có khả năng ghi xóa tới 1000 chu kỳ
 Tần số hoạt động từ 0 Hz đến 24 MHz
 3 mức khóa bộ nhớ lập trình
 2 bộ Timer/Counter 16 bit
 128 Byte RAM nội
 4 Port xuất/nhập (I/O) 8 bit
 Giao tiếp nối tiếp
 64 KB vùng nhớ mã ngoài
 64 KB vùng nhớ dữ liệu ngoài
 Xử lý Boolean (hoạt động trên bit đơn)
 210 vị trí nhớ có thể định vị bit
a) Sơ đồ khối và sơ đồ chân của AT89C51

Hình 1.1 Sơ đồ khối của AC89C51

7


Hình 1.2 Sơ đồ chân của AC89C51
b) Chức năng các chân của AT89C51
Port 0

Hình 1.3 Port 0
Port 0 (P0.0 – P0.7 hay chân 32 – 39): Ngoài chức năng xuất nhập ra, port 0 còn
là bus đa hợp dữ liệu và địa chỉ (AD0 – AD7), chức năng này sẽ được sử dụng khi
AT89C51 giao tiếp với thiết bị ngoài có kiến trúc bus.
Port 1
Port 1 (P1.0 – P1.7 hay chân 1 – 8): có chức năng xuất nhập theo bit và byte.

Ngoài ra, 3 chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn ISP, 2 chân P1.0
và P1.1 được dùng cho bộ Timer 2.

8


Hình 1.4 Port 1
Port 2
Port 2 (P2.0 – P2.7 hay chân 21 – 28): là một port có công dụng kép. Là đường
xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ nhớ mở rộng.

Hình 1.5 Port 2
Port 3
Port 3 (P3.0 – P3.7 hay chân 10 – 17): mỗi chân trên port 3 ngoài chức năng
xuất nhập ra còn có một số chức năng đặc biệt.

9


Bảng 1.1 Các chức năng đặc biệt của port 3
Bit

Tên

Chức năng chuyển đổi

P3.0

RXD


Dữ liệu nhận cho port nối tiếp

P3.1

TXD

Dữ liệu truyền cho port nối tiếp

P3.2

INT0

Ngắt bên ngoài 0

P3.3

INT1

Ngắt bên ngoài 1

P3.4

T0

Ngõ vào của Timer/Counter 0

P3.5

T1


Ngõ vào của Timer/Counter 1

P3.6

WR

Xung ghi bộ nhớ dữ liệu ngoài

P3.7

RD

Xung đọc bộ nhớ dữ liệu ngoài

Hình 1.6 Port 3
Chân RST
RST (Reset – chân 9): mức tích cực của chân này là mức 1, để reset ta phải đưa
mức 1 (5V) đến chân này với thời gian tối thiểu 2 chu kỳ máy (tương đương 2µs đối
với thạch anh 12MHz.
Chân XTAL
XTAL 1, XTAL 2: AT89S52 có một bộ dao động trên chip, nó thường được nối
với một bộ dao động thạch anh có tần số lớn nhất là 33MHz, thông thường là 12MHz.
Chân EA
EA (External Access): EA thường được mắc lên mức cao (+5V) hoặc mức thấp
(GND). Nếu ở mức cao, bộ vi điều khiển thi hành chương trình từ ROM nội. Nếu ở
mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng.

10



Chân ALE
ALE (Address Latch Enable): ALE là tín hiệu để chốt địa chỉ vào một thanh ghi
bên ngoài trong nửa đầu của chu kỳ bộ nhớ. Sau đó các đường port 0 dùng để xuất
hoặc nhập dữ liệu trong nửa chu kỳ sau của bộ nhớ.
Chân PSEN
PSEN (Program Store Enable): PSEN là chân điều khiển cho phép bộ nhớ
chương trình mở rộng và thường được nối với đến chân OE (Output Enable) của một
EPROM để cho phép đọc các bytes mã lệnh. PSEN sẽ ở mức thấp trong thời gian đọc
lệnh. Các mã nhị phân của chương trình được đọc từ EPROM qua Bus và được chốt
vào thanh ghi lệnh của bộ vi điều khiển để giải mã lệnh. Khi thi hành chương trình
trong ROM nội, PSEN sẽ ở mức thụ động (mức cao).
Chân nguồn
Vcc, GND: AT89S52 dùng nguồn một chiều có dải điện áp từ 4V – 5.5V được
cấp qua chân 40 (Vcc) và chân 20 (GND).
1.1.2 Hoạt động định thời, cổng nối tiếp, ngắt và xử lý ngắt của họ 8051
a) Hoạt động định thời
Với 8051 ta chỉ có 2 timer đó là timer 0 và timer 1 còn đối với 8052 thì có thêm
bộ định thời thứ 3 là timer 2,các timer này có rất nhiều ứng dụng quan trọng trong các
lĩnh vực như đo lường, điều khiển.
b) Cổng nối tiếp
AT89S52 có một cổng nối tiếp trên chip có thể hoạt động ở nhiều chế độ khác
nhau. Chức năng chủ yếu của cổng nối tiếp là chuyển đổi song song sang nối tiếp và
chuyển đổi nối tiếp sang song song với dữ liệu nhập để có thể giao tiếp với máy tính
qua cổng nối tiếp hoặc các thiết bị tương tự.
c) Ngắt và xử lý ngắt
Để tận dụng khả năng của cpu chúng ta phải sử dụng đến ngắt, ngắt giúp ta tạm
ngừng công việc của CPU để phục vụ việc trao đổi giữ liệu. Sau khi hoàn thành việc
trao đổi dữ liệu thì CPU phải quay về làm nốt công việc đang bị gián đoạn. Điều này
giúp cho CPU làm việc hiệu quả hơn rất nhiều.
Với AT89S52 ta có 6 nguồn ngắt:

 Ngắt ngoài đến từ chân #INT0
 Ngắt ngoài đến từ chân #INT1

11


 Ngắt do bộ timer 0
 Ngắt do bộ timer 1
 Ngắt do bộ timer 2
 Ngắt do port nối tiếp
1.1.3 Các thanh ghi đặc biệt của 89C51 (SFR – Special Function Registers).
a) Thanh ghi tích luỹ (Accumulator)
Thanh ghi tích luỹ là thanh ghi sử dụng nhiều nhất trong AT89C51, được ký
hiệu trong câu lệnh là A. Ngoài ra, trong các lệnh xử lý bit, thanh ghi tích luỹ được ký
hiệu là ACC.
b) Thanh ghi B
Thanh ghi tích luỹ có thể truy xuất trực tiếp thông qua địa chỉ E0H (byte) hay
truy xuất từng bit thông qua địa chỉ bit từ E0H đến E7H.
Thanh ghi từ trạng thái chương trình (PSW - Program Status Word)
Thanh ghi từ trạng thái chương trình PSW nằm tại địa chỉ D0H và có các địa
chỉ bit từ D0H – D7H, bao gồm 7 bit (1 bit không sử dụng) có các chức năng như sau:
Bit

7

6

5

4


3

2

1

0

Chức

CY

AC

F0

RS1

RS0

OV

-

P

năng
CY (Carry): cờ nhớ, thường được dùng cho các lệnh toán học (C = 1 khi có nhớ
trong phép cộng hay mượn trong phép trừ).

AC (Auxiliary Carry): cờ nhớ phụ (thường dùng cho các phép toán BCD).
F0 (Flag 0): được sử dụng tuỳ theo yêu cầu của người sử dụng.
RS1, RS0: dùng để chọn bank thanh ghi sử dụng. Khi reset hệ thống, bank 0 sẽ
được sử dụng.
OV (Overflow): cờ tràn. Cờ OV = 1 khi có hiện tượng tràn số học xảy ra (dùng
cho số nguyên có dấu).
P (Parity): kiểm tra parity (chẵn). Cờ P = 1 khi tổng số bit 1 trong thanh ghi A là
số lẻ (nghĩa là tổng số bit 1 của thanh ghi A cộng thêm cờ P là số chẵn).

12


Chọn bank thanh ghi:
RS1

RS0

BANK THANH GHI

0

0

BANK 0

0

1

BANK 1


1

0

BANK 2

1

1

BANK 3

Ví dụ như: A = 10101010b có tổng cộng 4 bit 1 nên P = 0. Cờ P thường được
dùng để kiểm tra lỗi truyền dữ liệu.
c) Thanh ghi con trỏ stack (SP – Stack Pointer)
Con trỏ stack SP nằm tại địa chỉ 81H và không cho phép định địa chỉ bit. SP
dùng để chỉ đến đỉnh của stack. Stack là một dạng bộ nhớ lưu trữ dạng LIFO (Last In
First Out) thường dùng lưu trữ địa chỉ trả về khi gọi một chương trình con. Ngoài ra,
stack còn dùng như bộ nhớ tạm để lưu lại và khôi phục các giá trị cần thiết.
Đối với AT89C51, stack được chứa trong RAM nội (128 byte đối với
8031/8051 hay 256 byte đối với 8032/8052). Mặc định khi khởi động, giá trị của SP là
07H, nghĩa là stack bắt đầu từ địa chỉ 08H (do hoạt động lưu giá trị vào stack yêu cầu
phải tăng nội dung thanh ghi SP trước khi lưu.
d) Con trỏ dữ liệu DPTR (Data Pointer)
Con trỏ dữ liệu DPTR là thanh ghi 16 bit bao gồm 2 thanh ghi 8 bit: DPH
(High) nằm tại địa chỉ 83h và DPL (Low) nằm tại địa chỉ 82H. Các thanh ghi này
không cho phép định địa chỉ bit. DPTR được dùng khi truy xuất đến bộ nhớ có địa chỉ
16 bit.
e) Các thanh ghi Port

Gồm 4 thanh ghi tương ứng với 4 port:
 P0  Port 0 : ở địa chỉ 80H đến dịa chỉ 87H.
 P1  Port 1 : ở địa chỉ 90H đến địa chỉ 97H.
 P2  Port 2 : ở địa chỉ A0H đến địa chỉ A7H.
 P3  Port 3 : ở địa chỉ B0H đến địa chỉ B7H.
Nếu truy suất Port ta truy suất các thanh ghi Port tương ứng. Các thanh ghi này
được định địa chỉ từng Bit.
f) Các thanh ghi bộ định thời (Timer)

13


89c51 có hai thanh ghi bộ định thời/đếm 16 bit được dùng cho định thời hoặc
đếm sự kiên.
 Thanh ghi chế độ định thời (TMOD):

 Không được định địa chỉ bit.
 Dùng để định chế độ hoạt động cho TIMER.
 Chức năng từng bit.
 Thanh ghi điều khiển định thời (TCON):

 Chứa các bit điều khiển và trạng thái của Timer 0, 1 ở 4 bit cao, 4 bit thấp
được dùng cho chức năng ngắt (interrupt).
g) Các thanh ghi port nối tiếp (Serial port)
h) Thanh ghi SBUF (Serial Buffer)
 Ở địa chỉ 99H là bộ đệm nhập/xuất nối tiếp, khi xuất dữ liệu thì ghi lên
SBUF, khi nhập dữ liệu thì đọc từ SBUF.
 Các chế độ hoạt động khác nhau của port nối tiếp được lập trình thông qua
thanh ghi điều khiển port nối tiếp SCON (Serial Control) ở địa chỉ 98H. Đây là thanh
ghi được địa chỉ từng bit.

i) Thanh ghi điều khiển port nối tiếp SCON

 Địa chỉ 99H.
 Định địa chỉ bit.
 Chức năng các bit.

14


 SM0, SM1: chọn chế độ hoạt động của port nối tiếp.
SM0

SM1

Chế độ (Mode)

Mô tả

0

0

0

Thanh ghi dịch.

0

1


1

UART 8 bit tốc độ thay đổi

1

0

2

UART 9 bit tốc độ cố định.

1

1

3

UART 9 bit tốc độ thay đổi.

 SM2: chọn chế độ hoạt động của port nối tiếp.
SM2 = 1: cho phép truyền thông đa xử lý ở các chế độ 2 và 3; bit RI sẽ không
được tích cực nếu bit thứ 9 nhận được là 0.
 REN: bit cho phép thu.
REN = 1: cho phép thu.
REN = 0: không cho phép thu.
 TB8: bit phát thứ 9 (ở chế độ 2 và 3), có thể đặt và xóa bằng phần mềm.
 RB8: bit thu thứ 9 (ở chế độ 2 và 3), có thể đặt và xóa bằng phần mềm.
j) Các Thanh Ghi Ngắt (Interrupt)
8031/8051 có 5 nguồn ngắt:

 2 ngắt ngoài: ngắt ngoài 0: qua chân INT0 (P3.2)
ngắt ngoài 1: qua chân INT1 (P3.3)
 3 ngắt trrong: ngắt timer 0, ngắt timer 1, ngắt port nối tiếp.
k) Hoạt động reset
Để thực hiện reset, cần phải tác động mức cao tại chân RST (chân 9) của
AT89C51 ít nhất 2 chu kỳ máy.

15


Bộ chuyển đổi tín hiệu ADC0809
1.1.4 Thành phần thu thập dữ liệu ADC0809

Hình 1.7 ADC0809
ADC0809 là một thiết bị CMOS nguyên khối với bộ chuyển đổi tương tự sang
số 8 bit, bộ ghép kênh 8 kênh và bộ vi xử lý tương thích kiểm soát logic. Bộ chuyển
đổi A / D 8 bit sử dụng xấp xỉ liên tiếp làm kỹ thuật chuyển đổi. Bộ chuyển đổi có một
bộ so sánh ổn định chopper trở kháng cao, một
Bộ chia điện áp 256R với cây chuyển đổi tương tự và một thanh ghi gần đúng
liên tiếp. Bộ ghép kênh 8 kênh có thể truy cập trực tiếp vào bất kỳ tín hiệu tương tự 8
đầu đơn nào.
Thiết bị loại bỏ sự cần thiết của số 0 bên ngoài và điều chỉnh toàn diện. Dễ
dàng giao tiếp với bộ vi xử lý được cung cấp bởi địa chỉ ghép kênh được chốt và giải
mã đầu vào và chốt đầu ra TTL TRI-STATE®.
Thiết kế của ADC0809, ADC0809 đã được tối ưu hóa bằng cách kết hợp các
khía cạnh mong muốn nhất của một số A / D kỹ thuật chuyển đổi. ADC0809,
ADC0809 cung cấp tốc độ cao, độ chính xác cao, phụ thuộc nhiệt độ tối thiểu, độ
chính xác và độ lặp lại dài hạn tuyệt vời và tiêu thụ năng lượng ít. Những tính năng
này làm cho thiết bị này lý tưởng phù hợp với các ứng dụng từ quy trình và điều khiển
máy đến ứng dụng tiêu dùng và ô tô. Đối với bộ ghép kênh 16 kênh có đầu ra chung

(cổng mẫu / cổng giữ)

16


1.1.5 Tính năng, đặc điểm
Giao diện dễ dàng cho tất cả các bộ vi xử lý
Vận hành theo tỷ lệ hoặc với 5 VDC hoặc nhịp tương tự tham chiếu điện áp
điều chỉnh
Không cần điều chỉnh quy mô 0 hoặc toàn thang
Bộ ghép kênh 8 kênh với logic địa chỉ
Phạm vi đầu vào 0V đến 5V với nguồn điện 5V
Đầu ra đáp ứng thông số kỹ thuật cấp điện áp TTL
Gói DIP 28 chân kín hoặc đúc
gói 28 chip chip đúc
ADC0808 tương đương với MM74C949
ADC0809 tương đương với MM74C949-1
1.1.6 Thông số kỹ thuật chính
Độ phân giải 8 bit
Tổng số lỗi không được điều chỉnh ± 1⁄2 LSB và ± 1 LSB
Cung cấp đơn 5 VDC
Công suất thấp 15 mW
Thời gian chuyển đổi 100
1.1.7 Chức năng các chân

Hình 1.8 Sơ đồ chân ADC0809
Ý nghĩa các chân:


IN0 đến IN7 : 8 ngõ vào tương tự.


• A, B, C : giải mã chọn một trong 8 ngõ vào
• Z-1 đến Z-8 : ngõ ra song song 8 bit
• ALE : cho phép chốt địa chỉ

17


• START : xung bắt đầu chuyển đổi
• CLK : xung đồng hồ
• REF (+) : điện thế tham chiếu (+)
• REF (-) : điện thế tham chiếu (-)
• VCC : nguồn cung cấp
1.2 LCD hiển thị
1.2.1 Hình dáng và kích thước

Hình 1.9 Hình dáng của LCD
Có rất nhiều loại LCD với nhiều hình dáng và kích thước khác nhau, trên hình 1
là hai loại LCD thông dụng.

Hình 1.10 Sơ đồ chân của LCD
Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển (HD44780) bên
trong lớp vỏ và chỉ đưa các chân giao tiếp cần thiết. Các chân này được đánh số thứ tự
và đặt tên như bên dưới :
1.2.2 Chức năng các chân
Chân số

Tên

Chức năng


1

Vss

Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với GND của
mạch điều khiển

2

Vdd Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với VCC=5V
của mạch điều khiển

18


3

Vee

Chân này dùng để điều chỉnh độ tương phản của LCD.

Rs

Chân chọn thanh ghi (Register select). Nối chân RS với logic “0” (GND)
hoặc logic “1” (VCC) để chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ
“ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)

4


+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong
LCD.
R/w Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0” để

5

LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc.
E

Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0- DB7,
các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận) thanh
ghi bên
trong nó khi phát hiện một xung (high-to-low transition) của tín hiệu chân

6

E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện
cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi
nào chân E xuống mức thấp.
DB0- Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2 chế
DB7 độ sử dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit

7-14

DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit

MSB là DB7

19


Các ký tự LCD LMB162A hiển thị được
1.2.3 Cách hiển thị các ký tự
Để hiển thị các ký tự đồ họa tùy ý thì ta phải ghi ký tự đó vào vùng CGRAM
rồi cho hiển thị ký tự đã vào lên LCD.
Vùng CGRAM bắt đầu từ địa chỉ #000000b đến #111111b. Khi ta ghi ở dạng
5x8 chấm thì địa chỉ bắt đầu của từng ký tự như hình sau:

20


Ví dụ: để ghi ký tự R vào CGRAM(0) (từ địa chỉ #000000b đến #000111b) thì
ta phải ghi 8 byte đó các mã #00011110b, #00010001b, #00010001b, #00011110b,
#00010100b, #00010010b, #00010001b, #00000000b như hình sau:

1.3 Cảm biến nhiệt độ LM35

Hình 1.11 Cảm biến nhiệt độ LM35
Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện áp
đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ C. Chúng cũng không yêu cầu
cân chỉnh ngoài vì vốn chúng đã được cân chỉnh. Cảm biến LM35 hoạt động bằng
cách cho ra một giá trị hiệu điện thế nhất định tại chân Vout (chân giữa) ứng với mỗi
mức nhiệt độ.
Thông số kỹ thuật:



Điện áp đầu vào từ 4V đến 30V



Điện áp ra: -1V đến 6V



Công suất tiêu thụ là 60uA

21




Độ phân giải điện áp đầu ra là 10mV/oC



Độ chính xác cao ở 25 C là 0.5 C



Trở kháng đầu ra thấp 0.1 cho 1mA tải

Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng -55°C tới
150°C
1.4 Module cảm biến khí GAS MQ2

Hình 1.12 Module cảm biến khí GAS MQ2

1.4.1 Sơ lược về cảm biến:
Cảm biến khí ga MQ2 là một trong những loại cảm biến được sử dụng để nhận
biết: LPG, i-butan, Propane, Methane , Alcohol, Hydrogen, Smoke và khí ga. Được
thiết kế với độ nhạy cao, thời gian đáp ứng nhanh. Gía trị đọc được từ cảm biến sẽ
được đọc về từ chân Analog của vi điều khiển.
Module MQ2 là thiết bị dùng để cảm biến khí. Khi không có khói DOUT của
cảm biến đưa ra giá trị ở mức cao, khi có khói thì DOUT của cảm biến đưa ra giá trị ở
mức thấp.
1.4.2 Các chân linh kiện:
•VCC: Chân cấp nguồn cho cảm biến, điện áp sử dụng 5V.
•GND: Chân nối đất cho cảm biến.
•AOUT: Đầu ra ADC
•DOUT: Đầu ra Digital (So sánh khi phát hiện khí)
1.5 Các linh kiện khác có trong mạch
1.5.1 Tụ điện
Tụ điện là linh kiện điện tử thụ động được sử dụng rất rộng rãi trong các mạch
điện tử, chúng được sử dụng trong các mạch lọc nguồn, lọc nhiễu, mạch truyền tín
hiệu xoay chiều, mạch tạo dao động.Trong mạch này ta sẽ sử dụng một tụ hóa cho
khối reset, và hai tụ gốm cho khối dao động.

22


Hình 1.13 Tụ
1.5.2 Điện trở, trở thanh
Điện trở là loại linh kiện phổ biến trong mạng lưới điện, các mạch điện tử,
thường được dùng để hạn chế cường độ dòng điện chảy trong mạch, điều chỉnh mức
độ tín hiệu, dùng để chia điện áp, kích hoạt các linh kiện điện tử chủ động như
transistor, tiếp điểm cuối trong đường truyền điện và có trong rất nhiều ứng dụng
khác , chúng được làm từ hợp chất cacbon và kim loại tuỳ theo tỷ lệ pha trộn mà người

ta tạo ra được các loại điện trở có trị số khác nhau.

Hình 1.14 Điện trở
1.5.3 Nút bấm button
Trong mạch này ta sử dụng 1nút bấm dùng để reset mạch.

Hình 1.15 Nút bấm
1.5.4 Thạch anh

Hình 1.16 Thạch anh 12 Mhz

23


Trong mạch ta sẽ sử dụng hai thạch anh, một loại 12Mhz để tạo dao động cho
AT89C51.
1.5.5 Còi buzz

Hình 1.17 Còi buzz
Còi buzz có tác dụng báo động khi có tín hiệu của vi xử lý
1.5.6 Dây cắm breadboard

Hình 1.18 Dây cắm
1.5.7 Biến trở
Trong mạch ta sẽ sử dụng một biến trở 10k để điểu chỉnh độ tương phản của LCD.

Hình 1.19 Biến trở

24



1.6 Các phần mềm phụ trợ.
1.6.1. Phần mềm Keil C.
Keil c uvision 4 là một phần mềm hỗ trợ cho người dùng trong việc lập trình
cho vi điều khiển các dòng khác nhau (Atmel, AVR,..). Keil c giúp người dùng soạn
thảo và biên dịch chương trình C hay cả ASM thành ngôn ngữ máy để nạp vào vi điều
khiển giúp chúng ta tương tác giữa vi điều khiển và người lập trình.

Hình 1.20: Giao diện phần mềm Keil C uvision 4
1.6.2 Phần mềm mô phỏng Proterus

Hình 1.21: Giao diện phần mềm proteus 8.6.
Proteus là bộ công cụ chuyên về mô phỏng mạch điện tử. Các phần mềm (công
cụ) trong bộ là: Schematic Capture, PCB playout,...vv:

25


×