32
Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền Lời nói đầu Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn. Sự phát triển của kỹ thuật điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm nổi bật như sự chính xác cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần thiết góp phần cho hoạt động của con người đạt hiệu quả cao. Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận hành và sử dụng được lại là một điều rất phức tạp. Các bộ vi điều khiển theo thời gian cùng với sự phát triển của công nghệ bán dẫn đã tiến triển rất nhanh, từ các bộ vi điều khiển 4 bit đơn giản đến các bộ vi điều khiển 32 bit, rồi sau này là 64 bit. Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Điện tử đã đáp ứng được những đòi hỏi không ngừng từ các lĩnh vực công – nông – lâm – Trường ĐHCN Hà Nội 1 Điện tử 2 – K9

de 1 do va khong che nhiet do hien thi led 7 thanh

  • Upload
    thuhaui

  • View
    355

  • Download
    3

Embed Size (px)

Citation preview

Page 1: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Lời nói đầu

Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới

của chúng ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn. Sự phát

triển của kỹ thuật điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm

nổi bật như sự chính xác cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần

thiết góp phần cho hoạt động của con người đạt hiệu quả cao.

Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận

hành và sử dụng được lại là một điều rất phức tạp. Các bộ vi điều khiển theo

thời gian cùng với sự phát triển của công nghệ bán dẫn đã tiến triển rất nhanh,

từ các bộ vi điều khiển 4 bit đơn giản đến các bộ vi điều khiển 32 bit, rồi sau

này là 64 bit. Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Điện

tử đã đáp ứng được những đòi hỏi không ngừng từ các lĩnh vực công – nông –

lâm – ngư nghiệp cho đến các nhu cầu cần thiết trong hoạt động đời sống

hằng ngày.

Một trong những ứng dụng thiết thực trong đó là ứng dụng về nhiệt kế

điện tử. Với môn học Vi điều khiển này, em đã quyết định nhận làm đồ án

thiết kế mạch đo và khống chế nhiệt độ môi trường hiển thị bằng led 7

đoạn.

Nội dung báo cáo gồm 3 phần:

I – Cơ sở lý thuyết

II – Nội dung thiết kế

III – Kết luận

Trường ĐHCN Hà Nội 1 Điện tử 2 – K9

Page 2: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Mặc dù đã rất cố gắng thiết kế và làm mạch nhưng do thời gian ngắn và

năng lực còn hạn chế nên mạch vẫn còn những sai sót. Em mong thầy giáo và

các bạn góp ý để việc học tập của em được tốt hơn.

Em xin chân thành cảm ơn!

Giáo viên hướng dẫn: Nguyễn Anh Dũng

Sinh viên thực hiện: Đặng Thế Tuyền

Trường ĐHCN Hà Nội 2 Điện tử 2 – K9

Page 3: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Thiết kế bộ đo và khống chế nhiệt độ hiển thị bằng

led 7 đoạn.

I – Cơ sở lý thuyết

1 – Giới thiệu tổng quan về họ Vi điều khiể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ố hoat độ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

- 4μs cho hoạt động nhân hoặc chia

a – Sơ đồ khối và sơ đồ chân của AT89C51

Trường ĐHCN Hà Nội 3 Điện tử 2 – K9

Page 4: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Hình 1 – Sơ đồ khối của AT89C51

Hình 2 – Sơ đồ chân của AT89C51

Trường ĐHCN Hà Nội 4 Điện tử 2 – K9

OTHER REGISTER

128 byte RAM

128 byte RAM

8032\8052

ROM0K:8031\80324K:89518K:8052

INTERRUPT CONTROL

INT1\ INT0\

SERIAL PORT TEMER0TEMER1TEMER2 8032\8052

CPU

OSCILATOR

BUS CONTROL I/O PORT

SERIAL PORT

EA\ RST

ALE\ PSEN\ P0 P1 P2 P3

Address\Data TXD RXD

TEMER2 8032\8052

TEMER1

TEMER1

Page 5: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

b – Chức năng các chân của AT89C51

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

Hình 3 – Port 0

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

Hình 4 – Port 1

Trường ĐHCN Hà Nội 5 Điện tử 2 – K9

Page 6: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

+ 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 5 – Port 2

+ 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 sau:

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

Trường ĐHCN Hà Nội 6 Điện tử 2 – K9

Page 7: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Hình 6 – Port 3

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

+ 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ôn thường là 12MHz.

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

+ 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ớ.

+ PSEN (Program Store Enable): PSEN là đ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

Trường ĐHCN Hà Nội 7 Điện tử 2 – K9

Page 8: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

mã lệnh. Khi thi hành chương trình trong ROM nội, PSEN sẽ ở mức thụ động

(mức cao).

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

2 – Giới thiệu về IC ADC0804

Các bộ chuyển đổi ADC thuộc những thiết bị được sử dụng rộng rãi

nhất để thu dữ liệu. Các máy tính số sử dụng các giá trị nhị phân, nhưng trong

thế giới vật lý thì mọi đại lượng ở dạng tương tự (liên tục). Nhiệt độ, áp suất

(khí hoặc chất lỏng), độ ẩm và vận tốc và một số ít những đại lượng vật lý của

thế giới thực mà ta gặp hằng ngày. Một đại lượng vật lý được chuyển về dòng

điện hoặc điện áp qua một thiết bị được gọi là các bộ biến đổi. Các bộ biến

đổi cũng có thể coi như các bộ cảm biến. Mặc dù chỉ có các bộ cảm biến

nhiệt, tốc độ, áp suất, ánh sáng và nhiều đại lượng tự nhiên khác nhưng chúng

đều cho ra các tín hiệu dạng dòng điện hoặc điên áp ở dạng liên tục. Do vậy,

ta cần một bộ chuyển đổi tương tự số sao cho bộ vi điều khiển có thể đọc

được chúng. Một chip ADC được sử dụng rộng rãi là ADC0804.

Trường ĐHCN Hà Nội 8 Điện tử 2 – K9

Page 9: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Hình 7 – ADC0804

Chip ADC0804 là bộ chuyển đổi tương tự số thuộc họ ADC800 của

hãng National Semiconductor. Chip này cũng được nhiều hãng khác sản

xuất. Chip có điện áp nuôi +5V v à độ phân giải 8 bit. Ngoài độ phân giải

thì thời gian chuyển đổ i cũng là một tham số quan trọng khi đánh giá bộ

ADC. Thời gian chuyển đổi được định nghĩa là thời gian mà bộ ADC cần

để chuyển một đầu vào tương tự thành một số nhị phân. Đối với ADC0804

thì thời gian chuyển đổi phụ thuộc vào tần số đồng hồ đ ược cấp tới chân

CLK và CLK IN và không bé hơn 110µs. Các chân khác của ADC0804 có

chức năng như sau:

+ CS (Chip select): Chân số 1, là chân chọn Chip, đầu vào tích

cực mức thấp được sử dụng để kích hoạt Chip ADC0804. Để truy cập

ADC0804 th ì chân này phải ở mức thấp.

+ RD (Read): Chân số 2, là một tín hiệu vào, tích cực ở mức thấp.

Các bộ chuyển đổi đầu vào tương tự thành số nhị phân và giữ nó ở một

thanh ghi trong. RD được sử dụng để có dữ liệu đã được chyển đổi tới đầu

Trường ĐHCN Hà Nội 9 Điện tử 2 – K9

Page 10: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

ra của ADC0804. Khi CS = 0 nếu có một xung cao xuống thấp áp đến chân

RD thì dữ liệu ra dạng số 8 bit được đưa tới các chân dữ liệu (DB0 – DB7).

+ WR (Write): Chân số 3, đây là chân vào tích c ực mức thấp được

dùng để báo cho ADC biết bắt đầu quá trình chuyển đổi. Nếu CS = 0 khi WR

tạo ra xung cao xuống thấp thì bộ ADC0804 bắt đầu quá trình chuyển đổi

giá trị đầu vào tương tự Vin về số nhị phân 8 bit. Khi việc chuyển đổi hoàn

tất thì chân INTR được ADC hạ xuống thấp.

+ CLK IN và CLK R: CLK IN (chân số 4), là chân vào nối tới đồng

hồ ngo ài được sử dụng để tạo thời gia n. Tuy nhiên ADC0804 c ũng có một

bộ tạo xung đồng hồ ri êng. Để dùng đồng hồ riêng thì các chân CLK IN và

CLK R (chân s ố 19) được nối với một tụ điện v à một điện trở (như hình

vẽ). Khi đó tần số được xác định bằng biểu thức:

F = 1/ 1.1RC

Với R = 10 kΩ, C = 150 pF và tần số f = 606 kHz và thời gian

chuyển đổi l à 110 µs.

+ Ngắt INTR (Interupt): Chân số 5, là chân ra tích c ực mức thấp.

Bình thường chân này ở trạng thái cao v à khi việc chuyển đổi ho àn tất thì

nó xuống thấp để báo cho CPU biết l à dữ liệu chuyển đổi sẵn sàng để lấy

đi. Sau khi INTR xuống thấp, cần đặt CS = 0 và gửi một xung cao xuống

thấp tới chân RD để đ ưa dữ liệu ra.

+ Vin (+) và Vin (-): Chân số 6 và chân số 7, đây là 2 đầu vào tương

tự vi sai, trong đó V in = Vin(+) – Vin(-). Thông thường Vin(-) được nối tới

đất và Vin(+) được dùng làm đầu vào tương tự và sẽ được chuyển đổi về

dạng số.

+ Vcc: Chân số 20, là chân nguồn nuôi +5V. Chân này còn được dùng

làm điện áp tham chiếu khi đầu vào Vref/2 để hở.

Trường ĐHCN Hà Nội 10 Điện tử 2 – K9

Page 11: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

+ Vref/2: Chân số 9, là chân điện áp đầu vào được dùng làm điện áp

tham chiếu. Nếu chân này hở thì điện áp đầu vào tương tự cho ADC0804

nằm trong dải 0 đến +5V. Tuy nhiên, có nhiều ứng dụng mà đầu vào tương

tự áp đến Vin khác với dải 0 đến +5V. Chân Vref/2 được dùng để thực

hiện các điện áp đầu ra khác 0 đến +5V.

Vref/2 (V) Vin (V) Kích thước bước (mV)

Hở 0 – 5 5/256 = 19.532.0 0 – 4 4/256 = 15.621.5 0 – 3 3/256 = 11.711.28 0 – 2.56 2.56/256 = 101.0 0 – 2 2/256 = 7.810.5 0 – 1 1/256 = 3.90

Bảng 1 – Quan hệ điện áp V ref/2 với Vin

+ D0 - D7: D0 - D7, chân số 18 – 11, là các chân ra d ữ liệu số (D7 là

bit cao nhất MSB và D0 là bit thấp nhất LSB). Các chân này được đệm ba

trạng thái và dữ liệu đã được chuyển đổi chỉ được truy cập khi chân CS = 0

và chân RD đưa xu ống mức thấp. Để tính điện áp đầu ra ta tính theo công

thức sau:

Dout = Vin / Kích thước bước

3 – Giới thiệu về IC cảm biến LM35

Đây là cảm biến nhiệt được tích hợp chính xác cao của hãng National

Semiconductor. Điện áp đầu ra của nó tỉ lệ tuyến tính với nhiệt độ theo thang

độ Celsius. Điện áp ngõ ra thay đổi 10mv (điện áp bước) cho mỗi sự thay đổi

1C. Chúng không yêu cầu cân chỉnh ngoài.

LM35 có 4 dạng: TO-46, SO-8, TO-92, TO-220. Nhưng thường dùng

Trường ĐHCN Hà Nội 11 Điện tử 2 – K9

Page 12: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

nhất là dạng TO-92 như hình dưới.

Hình 8 – Sơ đồ chân LM35 dạng TO-92

Đặc điểm cơ bản của LM35:

+ Điện áp nguồn từ -0.2V đến +35V

+ Điện áp ra từ -1V đến +6V

+ Dải nhiệt độ đo được từ -55°C đến +150°C

+ Điện áp đầu ra thay đổi 10mV mỗi khi có sự thay đổi 1°C.

II – Nội dung

1 – Lưu đồ thuật toán chương trình

Trường ĐHCN Hà Nội 12 Điện tử 2 – K9

Page 13: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Trường ĐHCN Hà Nội 13 Điện tử 2 – K9

Nhiệt độ vào t°

ADC chuyển u → 8 bit nhị phân

Khống chế = 20a = 3

LM35 chuyển t° → Điện áp u

Ngắt INT0

Hiển thị nhiệt độ khống chế t1

t1?

t1 = t°

Led vàng Led xanh

t1> t° t1< t°

Khống chế + +

a= 1a= 2

Kết thúc

a= 3

Ngắt INT1

Khống chế – –

Led đỏ

Ngắt INT1

Hiển thị t°

Bắt đầu

có cókhông không

Page 14: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

2 – Phần lập trình và mô phỏng

a – Phần lập trình

#include<reg52.h>

sbit led0=P2^0;

sbit led1=P2^1;

sbit led2=P2^2;

sbit led3=P2^3;

sbit led_do=P2^4 //nhiet do moi truong < nhiet do khong che

sbit led_vang=P2^5; //nhiet do moi truong = nhiet do khong che

sbit led_xanh=P2^6; //nhiet do moi truong > nhiet do khong che

sbit led_trang=P2^7;

sbit adc_intr=P3^5;

sbit adc_wr=P3^6;

sbit adc_rd=P3^7;

int ngat0,ngat1,tong;

unsigned char chuc,donvi,nhiet_do,dien_ap,khong_che,i,k;

unsigned char [10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

void delay(unsigned int n) //hàm trễ

{

unsigned int j;

for(j=0;j<n;j++);

}

void bien_doi_adc(void) //biến đổi adc

{

adc_rd=0;

Trường ĐHCN Hà Nội 14 Điện tử 2 – K9

Page 15: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

adc_wr=0;

delay(2);

adc_wr=1;

while(!adc_intr);

dien_ap=P1;

nhiet_do=dien_ap/2;

}

void hien_thi(unsigned char nhiet_do) //hiển thị nhiệt độ môi trường

{

if(nhiet_do>=0 && nhiet_do<10)

{

M[chuc]=0xff;

donvi=nhiet_do;

}

if(nhiet_do>=10 && nhiet_do<100)

{

chuc=nhiet_do/10;

donvi=nhiet_do%10;

}

for (k=0;k<50;k++)

{

led0=1;

led1=led2=led3=0;

P0=M[chuc];

delay(100);

led1=1;

led0=led2=led3=0;

Trường ĐHCN Hà Nội 15 Điện tử 2 – K9

Page 16: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

P0=M[donvi];

delay(100);

led2=1;

led0=led1=led3=0;

P0=0x9c;

delay(100);

led3=1;

led0=led1=led2=0;

P0=0xc6;

delay(100);

}

if(nhiet_do<0 && nhiet_do>=100)

{

led0=led1=led2=led3=0;

P0=0xff;

delay(100);

}

}

void main(void) //chương trình chính

{

IE=0x85;

IT0=IT1=1;

khong_che=20;

while(1)

{

tong=0;

for (i=0;i<20;i++)

Trường ĐHCN Hà Nội 16 Điện tử 2 – K9

Page 17: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

{

bien_doi_adc();

tong=tong+nhiet_do;

}

nhiet_do=tong/20;

if(ngat0==0)

{

led_xanh=led_do=led_vang=1;

hien_thi(nhiet_do);

}

if(ngat0==1||ngat0==2)

{

bien_doi_adc();

hien_thi(khong_che);

if(khong_che < nhiet_do)

{

led_do=led_vang=1;

led_xanh=0;

}

if(khong_che > nhiet_do)

{

led_vang=led_xanh=1;

led_do=0;

}

if(khong_che == nhiet_do)

{

led_do=led_xanh=1;

Trường ĐHCN Hà Nội 17 Điện tử 2 – K9

Page 18: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

led_vang=0;

}

}

}

}

void khongche(void) interrupt 0 //khống chế nhiệt độ ở 20 độ C

{

led_trang=1;

if(ngat0<2)

{

ngat0++;

if(ngat0==1)

led_trang=0;

else

led_trang=1;

}

else

ngat0=0;

}

void tang_giam(void) interrupt 2 //tăng, giảm nhiệt độ khống chế

{

if(ngat0==1)

{

ngat1=khong_che++;

}

if(ngat0==2)

{

Trường ĐHCN Hà Nội 18 Điện tử 2 – K9

Page 19: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

ngat1=khong_che--;

}

}

b – Phần mô phỏng

XTAL218

XTAL119

ALE30

EA31

PSEN29

RST9

P0.0/AD039

P0.1/AD138

P0.2/AD237

P0.3/AD336

P0.4/AD435

P0.5/AD534

P0.6/AD633

P0.7/AD732

P1.0/T21

P1.1/T2EX2

P1.23

P1.34

P1.45

P1.56

P1.67

P1.78

P3.0/RXD10

P3.1/TXD11

P3.2/INT012

P3.3/INT113

P3.4/T014

P3.7/RD17

P3.6/WR16

P3.5/T115

P2.7/A1528

P2.0/A821

P2.1/A922

P2.2/A1023

P2.3/A1124

P2.4/A1225

P2.5/A1326

P2.6/A1427

U1

AT89C52VIN+

6

VIN-7

VREF/29

CLK IN4

A GND8

RD2

WR3

INTR5

CS1

D GND10

DB7(MSB)11

DB612

DB513

DB414

DB315

DB216

DB117

DB0(LSB)18

CLK R19

VCC20

U2

ADC0804

R5

10k

C1150p

21.0

3

1

VOUT2

U3

LM35

R210k

R110k

D3LED-GREEN

R410k

2 3 4 5 6 7 8 91

RP1RESPACK-8

9%

RV1

10k

RV1(3)

U3(VOUT)

D1LED-RED

D2LED-YELLOW

D5LED-BLUE

3 – Mạch nguyên lý và mạch in

Trường ĐHCN Hà Nội 19 Điện tử 2 – K9

Page 20: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

R 1R E S I S TO R S I P 9

123456789

Y 1

Z TA

7 8 0 5123

V C C

D 4

L E DV C C

C 6

C A P

C 3

V C C

R 2

C 2

R 1 1

123

L M 3 5

7 s e g x 4

1 2 3 4 5 6789

10

11

12

R 8D 1

N g u o n9 V

12

V C C

D 2

V C C

C 1

R e s e t V C C

R 7

Q 6

U 5

A D C 0 8 0 4

67

8

9

10

1 11 21 31 41 51 61 71 8

1 9

2 0

4

51

23

+ I N-I N

AG

ND

V R E F / 2

GN

D

D B 7D B 6D B 5D B 4D B 3D B 2D B 1D B 0

C L K R

V C C / V R E F

C L K I N

I N TRC S

R DW R

D 3

R 9

V C C

R 3

V C C

V C C

Ta n g - G ia m

Q 7

V C C

K h o n g c h e

V C CR 1 0

R 4R

U 1

A T8 9 C 5 2

9

1 81 9

20

2 93 0

3 1

40

12345678

2 12 22 32 42 52 62 72 8

1 01 11 21 31 41 51 61 7

3 93 83 73 63 53 43 33 2

R S T

XTA L 2XTA L 1

GN

D

P S E NA L E / P R O G

E A / V P P

VC

CP 1 . 0 / T2P 1 . 1 / T2 -E XP 1 . 2P 1 . 3P 1 . 4P 1 . 5P 1 . 6P 1 . 7

P 2 . 0 / A 8P 2 . 1 / A 9

P 2 . 2 / A 1 0P 2 . 3 / A 1 1P 2 . 4 / A 1 2P 2 . 5 / A 1 3P 2 . 6 / A 1 4P 2 . 7 / A 1 5

P 3 . 0 / R XDP 3 . 1 / TXD

P 3 . 2 / I N T0P 3 . 3 / I N T1

P 3 . 4 / T0P 3 . 5 / T1

P 3 . 6 / W RP 3 . 7 / R D

P 0 . 0 / A D 0P 0 . 1 / A D 1P 0 . 2 / A D 2P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7

R 6

Q 5 Q 8

Hình 9 – Sơ đồ mạch nguyên lý

Trường ĐHCN Hà Nội 20 Điện tử 2 – K9

Page 21: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Hình 10 – Sơ đồ mạch in

III – Kết luận

1 – Ưu điểm

- Mạch có dải đo nhiệt độ lớn, từ 0°C đến 99°C.

- Khả năng đáp ứng nhanh với sự thay đổi của nhiệt độ môi trường.

- Mạch có thể đặt được nhiệt độ khống chế để so sánh với nhiệt độ môi

trường bên ngoài.

- Mạch có đèn báo tương ứng khi nhiệt độ môi trường thay đổi so với

nhiệt độ khống chế, có đèn báo để xác định đang khống chế tăng hay khống

chế giảm.

Trường ĐHCN Hà Nội 21 Điện tử 2 – K9

Page 22: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

- Mạch hiển thị LED 7 đoạn nên dễ dàng cho người sử dụng theo dõi

nhiệt độ hiển thị dù trong điều kiện thiếu ánh sáng.

- Mạch được thiết kế nhỏ gọn, dễ sử dụng, tiện lợi và có thể dùng nhiều

loại nguồn: pin, sạc điện thoại,… nên rất cơ động.

2 – Nhược điểm

- Tính ổn định không cao khi mang đi xa hay sử dụng trong khi đang di

chuyển.

- Còn có sai số nhiệt độ đo được do sai số linh kiện và những sai số

trong khi tính toán thiêt kế mạch nhưng chấp nhận được.

3 – Tính thực tế của sản phẩm đã thiết kế

- Mạch có thể sử dụng để đo nhiệt độ trong khoảng từ +0°C đến +99°C.

- Mạch nhỏ gọn, dễ sử dụng cho tất cả mọi người và đáp ứng nhanh với

nhiệt độ môi trường.

- Mạch có thể đặt nhiệt độ khống chế để so sánh với nhiệt độ môi

trường bên ngoài, có đèn báo tương ứng nên có thể ứng dụng ở những nơi cần

theo dõi nhiệt độ như nhà máy, xưởng làm việc, trang trại…

- Mạch hiển thị LED 7 đoạn nên dễ dàng theo dõi nhiệt độ dù trong

điều kiện thiếu ánh sáng.

- Mạch cơ động vì có thể dùng được nhiều loại nguồn: pin, sạc điện

thoại…nên dễ dàng mang theo và sử dụng.

4 – Hướng cải tiến, phát triển

- Vì yêu cầu đề bài chỉ là đo nhiệt độ nên với dải nhiệt độ từ +0°C đến

+99°C thì hoàn toàn có thể đo được nhiệt độ môi trường, nhưng IC LM35 có

Trường ĐHCN Hà Nội 22 Điện tử 2 – K9

Page 23: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

dải đo nhiệt độ lớn từ -55°C đến +150°C nên có thể lập trình để hiển thị được

nhiệt độ đo được nằm trong dải này.

- Mạch có thể mắc chuông báo thay cho đèn báo khi nhiệt độ môi

trường lớn hơn hay nhỏ hơn nhiệt độ khống chế, để tiện lợi cho người sử dụng

theo dõi.

Trường ĐHCN Hà Nội 23 Điện tử 2 – K9

Page 24: de 1 do va khong che nhiet do hien thi led 7 thanh

Đồ án môn Vi điều khiển GVHD: Nguyễn Anh Dũng SVTH: Đặng Thế Tuyền

Mục lục

Trang

I – Cơ sở lý thuyết 3

1 – Giới thiệu tổng quan về họ Vi điều khiển 8051 3

a – Sơ đồ khối và sơ đồ chân của AT89C51 3

b – Chức năng các chân của AT89C51 5

2 – Giới thiệu về IC ADC0804 8

3 – Giới thiệu về IC cảm biến LM35 11

II – Nội dung 12

1 – Lưu đồ thuật toán 12

2 – Phần lập trình và mô phỏng 14

a – Phần lập trình 14

b – Phần mô phỏng 19

3 – Mạch nguyên lý và mạch in 19

III – Kết luận 21

1 – Ưu điểm 21

2 – Nhược điểm 22

3 – Tính thực tế của sản phẩm đã thiết kế 22

4 – Hướng cải tiến, phát triển 22

Trường ĐHCN Hà Nội 24 Điện tử 2 – K9