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

Thiết kế dùng Chip vi điều khiển 8051 áp dụng vào đo nhiệt độ của lò

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 (308.19 KB, 25 trang )

Thiết kế hệ vi xử lý 8 bit
I. Yêu cầu
Phần cứng
1. Bộ vi xử lý
2. Bộ nhớ chơng trình ROM :8KB từ địa chỉ 0000H
3. Bộ nhớ dữ liệu RAM : 8KB ( địa chỉ tuỳ chọn )
4. Cổng vào tơng tự 8 kênh nhận tín hiệu đo nhiệt độ từ 0Vữ5V t-
ơng ứng với nhiệt độ 0ữ100C, các cổng vào ra số liệu và
mạch điều khiển.
Phần mềm
1. Tín hiệu cho phép chạy và dừng chơng trình. Tín hiệu dừng
khẩn cấp
2. Đọc tín hiệu đo nhiệt độ từ 8 kênh và lu trữ vào vùng nhớ RAM
.
3. Sau mỗi lần đọc tính nhiệt độ trung bình cộng của 8 kênh và gửi
ra cổng hiển thị bằng đèn LED.
4. So sánh nhiệt độ của từng kênh với giá trị nhiệt độ trung bình.
Nếu kết quả lớn hơn hoặc nhỏ hơn giá trị cho phép cho trớc thì gửi
tín hiệu báo động cao hoặc thấp tơng ứng với kênh đó .Giá trị cho
phép này đặt trong một ô nhớ của RAM
5. Chơng trình dừng lại và báo động bằng còi khi xảy ra một trong
các trờng hợp sau:
Có ít nhất 4 kênh đo vợt quá hoặc nhỏ hơn giới hạn
cho phép so với giá trị trung bình
Giá trị nhiệt độ trung bình lớn hơn hoặc nhỏ hơn giá trị giới
hạn MAX, MIN tơng ứng. Các giá trị giới hạn MAX, MIN đợc đặt
trong 2 ô nhớ của RAM
II. Các b ớc tiến hành
1. Chọn bộ vi xử lý (8085 hoặc 8051,). Thiết kế sơ bộ sơ đồ khối
2. Thiết kế bộ nhớ, cổng vào /ra bằng mạch logic,mạch giải mã,
mạch chốt,ADC,Xác định địa chỉ cho các tín hiệu vào /ra. Lập


bản đồ bộ nhớ
3. Chọn linh kiện .Nghiên cứu và chọn chế độ làm việc của linh
kiện phù hợp với yêu cầu (logic và vật lý) cho thiết kế ở bớc 2.
4. Thiết kế sơ đồ chi tiết cho hệ
5. Xây dựng phần mềm trên cơ sở sơ đồ đã thiết ở bớc 4:
Xây dựng lu đồ chơng trình
Xây dựng cấu chúc chơng trình
Soạn thảo chơng trình bằng mã ngữ của bộ vi xử lý đã
chọn
LờI NóI ĐầU
III.
Vào năm 1971 tập doàn INTEL đã cho ra đời họ vi xử lý đầu tiên 4004 là vi
xử lý 4 bit .Và từ đó đến nay nó liên tục phát triển và nâng cao từ họ vi xử
lý 4 bit đầu tiên đến nay là vi xủ lý 32 bit và 64 bit với tần số xung nhịp
f=100ữ200 MHz , ngày nay chúng đợc ứng dụng rộng rãi vào trong cuộc sống và
đặc biệt là trong các ngành công nghiệp
Bên cạnh họ vi xử lý, vào năm 1976 INTEL giới thiệu bộ vi điều khiển
(microcontroler) 8748, một chip tơng tự nh các bộ vi xử lý và là chip đầu tiên
trong họ vi điều khiển MCS 48, bao gồm 1 CPU , 1Kbyte EPROM, 64 byte
RAM, 27 chân xuất nhập và một bộ định thời 8 bit
Độ phức tạp , kích thớc và khả năng của bộ vi điều khiển đợc tăng lên một bậc
quan trọng vào năm 1980 khi INTEL công bố chip 8051, bộ vi điều khiển đầu
tiên của họ vi điều khiển MCS 51. Chip này chứa trên 60000 transistor, bao
gồm 4 K byte ROM, 128 byte RAM , 32 dờng xuất nhập, 1 port và 2 bộ định
thời 16 bit đây là một số lợng mạch đáng chú ý trong một IC đơn chip. Các thành
viên mới đựơc thêm vào họ MCS 51 và các biến thể ngày nay gần nh gấp đôi
các đặc trng này
Dới sự phát triển mạnh mẽ đó của công nghệ vi xử lý thì việc tìm hiểu nghiên
cứu để nắm bắt công nghệ, tìm cách ứng dụng vào thực tế là một công việc quan
trọng của sinh vên,những ngời kỹ s tơng lai

Với kiến thức về vi xử lý đợc học trong hai kỳ, có sự tham khảo trong sách vở,
và đặc biệt đợc sự giúp đỡ chỉ bảo tận tình của thày giáo em đã hoàn thành
nhiệm vụ thiết kế dùng chip vi điều khiển 8051 áp dụng vào đo nhiệt độ của lò.
Thông qua bản thiết kế này em đã đợc áp dụng những kiến thức đã học vào công
việc thiết kế phần cứng và viết phần mềm cho hệ vi điều khiển.
Tuy vậy, đây mới chỉ là phần lý thuyết , em rất muốn thiết kế mạchthật để thấy
đợc phần thiếu sót trong khi thiết kế và lập trình.Nhng do thời gian có hạn cũng
nh kiến thức còn hạn chế nên không thể tránh khỏi những thiếu xót
Em mong thày cô chỉ bảo và giúp đỡ em
I.
II. 2
Thiết kế hệ vi điều khiển 8051
I. Giới thiệu vi điều khiển 8051.
Là vi xử lý đơn chíp 8 bit đợc sử dụng cho những ứng dụng công
nghiệp, đợc hãng intel công bố vào năm 1980.
8051 là bộ vi điều khiển đầu tiên của họ vi điều khiển
MCS 51, với những đặc điểm sau:
Độ dài từ dữ liệu là 8 bit
Rất tiện dùng cho hệ điều khiển
Tập lệnh rất phong phú với 256 lệnh
ROM bên trong là 4 K
RAM bên ngoài là 128 byte
Có 32 đờng vào ra theo hai hớng qua 4port xuất nhập
( I/O port) 8 bit, và có thể địa chỉ riêng từng đờng
Có 2 bộ định thời 16 bit
Không gian địa chỉ của ROM & RAM có thẻ đến 64K
Có 6 nguồn ngắt ,5 vector ngắt với 2 mức u tiên
Đã có bộ giao động bên trong với tần số 12Mhz
Có 2 thanh chứa A & B mỗi thanh 8 bit, trong đó B thờng dùng
cho phép chia

Sơ đồ khối của chip 8051
Tổ chức bộ nhớ trong 8051:
I.
II. 3
8051 có 2 khoảng địa chỉ độc lập cho bộ nhớ chơng trình( ROM ) và bộ nhớ
dữ liệu( RAM ) . Sự độc lập của bộ nhớ chơng trình và bộ nhớ dữ liệu cho phép
bộ nhớ dữ liệu đợc xử lí bởi địa chỉ 8 bit . Nó có thể đợc lu trữ và thao tác nhanh
hơn bởi CPU 8 bit . Tuy nhiên địa chỉ 16 bit cũng có thể đợc phát ra thông qua
thanh ghi DPTR.
Bộ nhớ chơng trình (ROM,EPROM) là bộ nhớ chỉ có đọc . Bộ nhớ này có
thể lên tới 64Kbyte . Trong 8051 4Kbyte thấp nhất của bộ nhớ chơng trình là trên
chip.Bộ nhớ ngoài có thể đọc đợc nhờ tín hiệu chốt của chân PSEN.
Bộ nhớ dữ liệu RAM độc lập với bộ nhớ chơng trình 128 byte thấp nhất
của bộ nhớ dữ liệu trên chip và nó có thể truy nhập đến 64Kbyte ngoài CPU sẽ
phát ra các tín hiệu RD và WR cần thiết trong suốt quá trình xử lí bộ nhớ dữ
liệu .
a/ Bộ nhớ ch ơng trình( ROM ) :
4 Kbyte ROM trong có thể đợc chọn bởi nối chân EA vào mức 0 (nếu bằng 1 thì
ROM ngoài ) . Khi truy nhập bộ nhớ ngoài sử dụng cổng P0 và P2 làm 16 đờng
vào ra . Trong đó P0 làm chức năng Bus địa chỉ và Bus dữ liệu, chân ALE xuất
hiện tín hiệu chốt địa chỉ( byte thấp của dịa chỉ 16 bit)
b/ Bộ nhớ dữ liệu :
Bộ nhớ dữ liệu đợc chia thành 4 vùng :









- Vùng 1 :Địa chỉ từ 00H đến 1FH là phần thấp nhất đợc chia thành 4
khối của 8 thanh ghi . Các lệnh của chơng trình sẽ gọi các thanh ghi
này từ R0 đến R7 . Hai bit trong thanh ghi trạng thái (RS0,RS1 ) sẽ lựa
chọn khối 4 này .
- Vùng 2: Địa chỉ từ 20H đến 2FH bao gồm 16 byte là vùng ô nhớ địa
chỉ theo bit .
I.
II. 4
SFR
RAM thường đa mụcđích
Bit addressable
Bank 3
Bank 3
Bank 2
Bank 1
Bank 0
FF
80
7F
30
2F
20
1F
18
17
10
0F
08
07

00
- Vùng 3: Địa chỉ từ 30H đến 7FH làm chức năng thông thờng của bộ
nhớ RAM
- Vùng các thanh ghi chức năng đặc biệt (SFR).Có 21 thanh ghi chức
năng đặc biệt chiếm phần trên của RAM nội từ địa chỉ 80H đến FFH.
Sơ đồ chân của 8051
II. Sơ đồ khối của hệ thống:
I.
II. 5



a. Bộ vi điều khiển 8051:Có chức năng điều khiển hoạt động của toàn bộ hệ
thống
b. Bộ nhớ chơng trình ROM ( Read Only Memory):
Chỉ có thể đọc số liệu viết trong ROM, không thể viết vào trong quá trình lập
trình, khi nguồn nuôi mất thì số liệu trong ROM vẫn còn.
ROM đợc dùng để chứa chơng trình điều hành hoặc các chơng trình ứng dụng
users program
c. Bộ nhớ dữ liệu RAM ( Random Access Memory):
Nghĩa là tại thời điểm bất kỳ ngời dùng cũng có thể viết số liệu vào trong
RAM hoặc đọc từ RAM ra bằng lệnh W/R
Khi nguồn nuôi mất thì số liệu trong RAM cũng mất, nh vậy RAM đợc dùng
để chứa số liệu trao đổi giữa hệ vi điều khiển và thiết bị ngoại vi
d. Các cổng vào ra I/O:
Các vi mạch vào ra để làm cổng vào ra số liệu, các vi mạch này sẽ trao đổi trực
tiếp số liệu với ngoại vi ( các cảm biến, công tắc tơ, )
Các thiết bị ngoại vi trao đổi tín hiệu với vi xử lý trực tiếp qua I/O
e. Các thiết bị ngoại vi:
Là các sensor đo nhiệt độ để cảm biến nhiệt độ của đối tợng cần đo, thông qua

bộ biến đổi A/D biến các đại lợng tơng tự thành thông tin về nhiệt độ đa vào
cổng vào ra I/O để đa vào hệ vi điều khiển xử lý.Bộ hiển thị đèn LED để hiển
thị nhiệt độ đo
Quan hệ về mặt trao đổi thông tin giữa các khối chức năng:
I.
II. 6
Address Bus
8051
ROM
RAM
I/O
Ngoai vi
Data Bus
Control Bus
EXTERNAl
EXTERNAL
INTERNAL
FFFFH
EA=0
EXTER
NAL
EA=1
INTER
NAL
FFH
00

0000
< 0000>
PSEN

RD WR
PROGRAM MEMORY DATA MEMORY
Từ ngoại vi , các bộ sensor cảm biến nhiệt độ đầu vào của nó là nhiệt
độ của đối tợng đo, đầu ra là giá trị điện áp biến thiên từ
0Vữ5V, giá trị biến thiên điện áp này đuợc đa đến bộ biến đổi tơng tự số
A/D
Đầu ra của bộ A/D là các tín hiệu số (số hexa) mang thông tin về
nhiệt độ.
Thông tin này đa đến cổng vào ra I/O , thông qua Data Bus vào vi xử

Vi xử lý định địa chỉ và cất số liệu vào bộ nhớ dữ liệu RAM
III. Thiết kế bộ nhớ, cổng vào ra, mạch giải mã, mạch chốt,
ADC
1. Thiết kế bộ nhớ:
Hầu hết các bộ vi sử lý(CPU) đều có không gian nhớ chung cho dữ
liệu và chơng trình vì chơng trình thờng đợc lu trữ trên đĩa
và đợc nạp vào RAM để thực thi. Vì vậy cả hai dữ liệu và chơng
trình đều đợc lu trú trong RAM.
Các chíp vi điều khiển thờng đợc dùng làm thành phần trung tâm trong các
thiết kế hớng điều khiển, trong đó bộ nhớ có dung lợng giới hạn, không có
ổ đĩa và hệ điều hành. Chơng trình điều khiển phải thờng trú trong ROM
Do vậy 8051 có không gian nhớ riêng cho chơng trình và dữ liệu. Cả
hai bộ nhớ này đều đặt bên trong chip





Bộ nhớ ngoài
I.

II. 7
Bộ nhớ chơng trình EPROM
Trong vi điều khiển bộ nhớ chơng trình của nó có 4K byte ROM trong,và
bộ nhớ ngoài EPROM2732 có dung lợng 4K. Đây là bộ nhớ lập trình xoá bằng
tia cực tím, nó có tốc độ truy nhập rất nhanh, nó có 12 đờng chọn địa chỉ và có 8
đờng ra dữ liệu. EPROM chỉ đợc hoạt động khi chân #OE ở mức tích cực thấp,
nó đợc vi điêù khiển chọn làm việc khi chân #CE cũng đợc tích cực thấp.
EPROM đợc nuôi với mức điện áp 5V, điện áp này đợc đa vào bộ nhớ thông qua
chân Vpp . Địa chỉ của EPROM trong hệ thống là 0000ữ0FFFH.Địa chỉ này đợc
chọn bởi vi mạch giải mã địa chỉ 74138, với đầu chọn chip là
0CS

Sơ đồ chân của EPROM

Bộ nhớ ngoài RAM
Bên cạnh bộ nhớ chơng trình EPROM ta còn sử dụng bộ nhớ ngoài RAM có
dung lợng 8K byte, có 13 đờng địa chỉ 8 đờng dữ liệu. Nó có địa chỉ
2000ữ3FFF, địa chỉ này đợc chọn ra trong vùng địa chỉ của vi điều khiển bởi
chân #
1CS
. Ngoài ra còn có đờng chọn vỏ khác là CS2 đợc nối tích cực và có
hai đờngtín hiệu yêu cầu đọc viết là #OE, #WE .
Sơ đồ chân của RAM


I.
II. 8
2732
2. Các mạch phụ trợ
a. Mạch giải mã 74LS138

Khi muốn có nhiều đầu ra chọn vỏ từ bộ giải mã thì không nên dùng mạch
NAND đơn giản nữa mà nên dùng mạch giải mã đã chế tạo chuẩn.
Nó bao gồm 14 chân, trong đó:
0CS

7CS
là các đờng ra địa chỉ, tích cực ở mức thấp,có thể dùng chọn cho bộ
nhớ 8 KB
A,B,C là 3 đờng địa chỉ vào , tích cực cao.
E1 ,E2 là các đầu vào cho phép làm viêc , tích cực ở mức thấp.
E3 là các đầu vào cho phép làm viêc , tích cực ở mức cao.
Ta có bảng chân lý sau:
C B A
1E
2E
E3
0CS
1CS
2CS
3CS
4CS
5CS
6CS
7CS
X X X 1 X X 1 1 1 1 1 1 1 1
X X X X 1 X 1 1 1 1 1 1 1 1
X X X X X 0 1 1 1 1 1 1` 1 1
0 0 0 0 0 1 0 1 1 1 1 1 1 1
0 0 1 0 0 1 1 0 1 1 1 1 1 1
0 1 0 0 0 1 1 1 0 1 1 1 1 1

0 1 1 0 0 1 1 1 1 0 1 1 1 1
1 0 0 0 0 1 1 1 1 1 0 1 1 1
1 0 1 0 0 1 1 1 1 1 1 0 1 1
1 1 0 0 0 1 1 1 1 1 1 1 0 1
1 1 1 0 0 1 1 1 1 1 1 1 1 0
Sơ đồ chân vi mạch:
74LS138
A2
A1
A0
E3
E2
E1
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
U1
74LS138
b. Mạch chốt 74HC373
Khi port 0 đợc sử dụng làm bus địa chỉ/dữ liệu đa hợp. Chân ALE của VXL xuất
hiện tín hiệu dể chốt địa chỉ, tín hiệu này đợc nối vào đầu vào chốt của vi mạch
74HC373 và tín hiệu địa chỉ đợc chốt ở đây trong 1/2 chu kỳ đầu của bộ
nhớ.Chân port 0 sẽ xuất nhập dữ liệu hợp lệ trong suốt 1/2 chu kỳ còn lại
I.
II. 9

c. Bộ chuyển đổi tơng tự số ADC 0809
Bộ ADC 0809 là một thiết bị CMOS tích hợp với một bộ chuyển đổi tơng
sang số 8 bit, bộ chọn kênh và mật bộ logic điều khiển tơng thích. Bộ chuyển đổi
tơng tự số này sử dụng phơng pháp chuyển đổi xấp xỉ. Bộ chọn kênh có thể chọn
ra kênh cần chuyển đổi bằng 3 chân chọn địa chỉ.
Thiết bị này loại trừ khả năng cần thiết điều chỉnh điểm zero bên ngoài và khả
năng điều chỉnh tỉ số làm cho ADC đễ dàng giao tiếp với các bộ vi xử lý.
- ý nghĩa các chân:
- IN0 IN7: 8 đầu vào tơng tự
- A,B,C : các tín hiệu chọn kênh
- Các chân 2.1-2.7: là các đầu ra số
- ALE cho phép chốt số liệu đầu vào
- Start: xung cho phép bắt đầu chuyển đổi
- Clk:đầu vào xung clock
- Ref(+): điện áp vào chuẩn +5v
- Ref(-): điện áp vào chuẩn 0
- Vcc: nguồn cung cấp
Các đặc điểm của ADC 0809
- Độ phân giải 8 bít
- Tổng sai số cha chỉnh 1LSB
- Thời gian chuyển đổi 100 às
- Nguồn cung cấp 5 V
- Điện áp vào 0-5V
- Tần số xung clock 10kHz 1028 kHz
- Dễ dàng giao tiếp với vi xử lý hoặc dùng riêng
- Không cần điều chỉnh zero hoặc thang đo
I.
II. 10

×