Thiết kế hệ vi xử lý 8 bit - Pdf 32


BàI tập vi xử lý
Đề tàI THIếT Kế Hệ VI Xử Lý 8 BIT
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 có địa chỉ tuỳ chọn.
4. Cổng vào tơng tự 8 kênh nhận tín hiệu nhiệt độ từ 0 10V
tơng ứng vói nhiệt độ từ 0 100 độ C , các cổng vào/ra số và
các mạch điều khiển .

Phần mềm :
1. Chế độ chạy và dừng chơng trình 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 giá trị trung bình cộng của nhiệt độ và
gửi ra hiển thị bằng LED hoặc LCD .
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 ứng với kênh đó . Giá trị
cho phép này đặt trong một ô nhớ của Ram .
5. Chơng trinh 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á trị giới hạn
cho phép cho trớc 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 và MIN tơng ứng . Các giá trị giới hạn MAX và
MIN đợc đặt ở hai ô nhớ của RAM .
6. Thiết kế bàn phím nhập dữ liệu .
bùi anh tuấn TĐH2-k45

trong các nhà máy, xí nghiệp việc tự động hoá các quá trình sản xuất , tự động
hoá các thiết bị điều khiển là một vấn đề hết sức quan trọng và cần thiết. Trong
các thiết bị tự động muốn điều khiển một quá trình nào đó một cách tối u thì
nhất thiết phải có các thiết bị đo, chính nhờ các thiết bị đo ngời ta có thể kiểm
soát đợc các thông số của hệ thống mà từ đó đa ra các tín hiệu điều khiển nhằm
làm cho hệ thống hoạt động ổn định .
Trớc đây khi ngành vật liệu cha tìm ra các vật liệu mới, thì các dụng cụ
đo thờng đợc làm bằng cơ khí có độ chính xác không cao, dải đo hẹp, không
làm việc đợc trong các môi trờng đòi hỏi độ bền cơ học cao. Khi ngành vật liệu
tìm ra đợc các vật liệu mới, công nghệ chế tạo phát triển đã có thể tạo ra các
thiết bị đo thông minh, có độ chính cao, làm việc đợc trong các môi trờng khắc
nghiệt nh : đo nhiệt độ lò nung, đo nồng độ các chất hoá học nhờ các thiết bị
đo thông minh này ngời ta có thể kiểm soát các thông số của hệ thống một cách
chặt chẽ .
Khi khoa học công nghệ ngày càng phát triển việc đo không chỉ là biết
giá trị của đại lợng cần đo mà những giá trị này còn là những thông tin cần đợc
lu trữ và xử lý . Để cho quá trình thu thập các thông tin đo một cách tự động
ngời ta gắn vào các thiết bị đo các bộ vi điều khiển nhằm điều khiển các quá
trình đo, xử lý và có thể là phải truyền đi .
Theo nh yêu cầu của bài toán đặt ra là xây dung một hệ đo, thu thập
nhiệt độ. Với 8 kênh đo nhiệt độ ở những vị trí khác nhau và những dải nhiệt độ
khác nhau thì việc sử dụng một bộ vi điều khiển trong hệ là một điều cần thiết.
Hiện nay, trên thị trờng có rất nhiều họ vi điều khiển nh : 8051, 68HC11, PIC,
AVR vì vậy việc lựa chọn một bộ vi điều khiển cho hệ thống cần phải có giá
thành rẻ nhng vẫn đáp ứng đợc yêu cầu của bài toán tối u. ở đây ta sử dụng bộ
vi điều khiển 8051 là đủ để điều khiển hệ thống hoạt động tốt.
bùi anh tuấn TĐH2-k45
3

BàI tập vi xử lý

Port
3
Port
2
Port
1
Port
0
TXD RXD
Oscilator
CPU
Timer 0
Timer 1
Serial port
INT 0
INT 1
Timing
and
Control
PSEN EA RST ALE
XTAL1,2

BàI tập vi xử lý
b. Bên trong VXL8051.
RAM.
RAM trong của 8051 bao gồm cả các thanh ghi và các thanh ghi có thể
lập trình và xoá từng bit nh là RAM đa mục đích. RAM đợc dùng nh là vùng
làm việc đa năng. RAM On-chip có địa chỉ từ 00h đến 7Fh.
Các thanh ghi:
Khối RAM từ [ 0..1Fh ] đợc dùng cho các thanh ghi. Có 4 banks với 8

qua thanh ghi SFR SBUF. Những bit riêng lẻ của SCON xác lập những chế độ
khác nhau của cổng nối tiếp. SCON có thể đợc xem nh thanh ghi điều khiển và
SBUF đợc gọi là thanh ghi dữ liệu. SFR có byte địa chỉ trong khoảng [80h..FFh]
(Tiếp theo phần địa chỉ của RAM trong từ 00h..07h nh đã nói ở trên ). 8051 có
thể truy nhập RAM và SFR bằng chế độ địa chỉ gián tiếp thanh ghi.
SFR bao gồm cả thanh ghi a, thanh ghi b và PSW. PSW bao gồm cả cờ hệ
thống nh cờ carry có 2 bit để kích hoạt register bank.
ROM:
Một vài thành viên của họ 8051 có chứa ROM ở ngay trong chúng:
- 8051 có 4KB.
- 8052 có 8KB.
- 80C517A-5 và 80C515-A có 32KB.
8751 và 8752 là EPROM là phiên bản sau của 8051 và 8052, 8031,
8032, 80C535A và 80C537A là ROM phiên bản sau của 8051, 8052, 80C515A
và 80C517A.
Trong bộ nhớ ROM trong chiếm khối nhớ thấp nhất của bộ nhớ chơng
trình. Chân EA# (External Enable) của vi điều khiển đợc cấp +5V để cho phép
chơng trình có thể đợc tìm và đọc trực tiếp từ ROM trong. Tuy nhiên những ch-
ơng trình có khối nhớ trên 4K hoặc 8K thì sẽ tìm và đọc lệnh từ bộ nhớ chơng
trình ngoài. Các chơng trình sẽ đợc đọc từ bộ nhớ bên ngoài khi chân EA# đợc
nối đất (Khi đặt ký hiệu # ở phía sau toán hạng thì sẽ hiểu là tín hiệu đó đợc
kích hoạt khi ở mức thấp).
Bộ đếm chơng trình:
Bộ đếm chơng trình (Program Counter) đợc dùng để chỉ đến byte lệnh
tiếp theo sẽ đợc đọc. Nó không bị ảnh hởng trực tiếp nhng sẽ bị thay đổi bằng
những lệnh rẽ nhánh nh lệnh Jmp hoặc Call. Nó cũng có thể dùng nh địa chỉ cơ
sở cho chỉ số địa chỉ khi đọc từ bộ nhớ chơng trình.
Cổng vào ra song song:
8051 có 4 cổng vào ra song song (Parallel input/output port). Khi cổng đ-
ợc dùng là cổng ra, dữ liệu đợc để trong SFR tơng ứng. Giá trị đợc viết đến SFR

43 thao tác cần 3 chu kỳ máy và 2 thao tác cần 4 chu kỳ máy. Từ khi có nhiều
thao tác chỉ cần 1 chỉ thị máy, 8051 đã xem xét đến khả năng có thể thực hiện
hàng triệu lệnh trong 1 giây (Million Instruction Per Second: MIPS). Rất nhiều
hệ thống 8051 dùng dao động tinh thể 11.0592 MHz, sở dĩ có sự lựa chọn này
vì trong thực tế có rất nhiều dao động đồng hồ có thể phát ra tốc độ Baud rất
cao. Với đồng hồ 12 MHz tốc độ Baud lớn nhất là 4800, còn dùng dao động
tinh thể 11.0592MHz tốc độ có thể lên tới 19200baud.
Cổng nối tiếp:
Cổng nối tiếp đợc điều khiển bởi SFR SCON. Dữ liệu vào và ra cổng nối
tiếp đều đi qua SFR SBUF. Khi cổng nối tiếp đã đợc khởi tạo, ta có thể dễ dàng
ghi dữ liệu vào SBUF để khởi đầu cho việc truyền nối tiếp. Tơng tự nhận dữ liệu
cũng đợc đọc từ SBUF. Mặc dù SBUF đợc nói ở trên giống nh là SFR riêng lẻ
nhng phần cứng của nó bao gồm hai buffer tách biệt, một buffer để truyền và
một buffer để nhận dữ liệu. Truyền và nhận nối tiếp có thể diễn ra đồng thời
(full duplex operation).
bùi anh tuấn TĐH2-k45
7

BàI tập vi xử lý
Timer/Counter.
8051 có hai Timer/Counter, mỗi Timer/Counter đợc dành cho hai SFR.
Timer/Counter 0 là TH0 và TL0, còn Timer/Counter 1 là TH1 và TL1. Các
thanh ghi dành cho Timer/Counter là các thanh ghi 16 bit. Khi hoạt động, mỗi
khi có xung vào thì số đếm xung lu trong 1 hoặc 2 SFR sẽ tăng lên. Timer dùng
tín hiệu đồng hồ hệ thống làm nguồn của những xung vào. Counter dùng xung
ngoài để tăng số lợng xung. Xung ngoài đợc nhận qua 2 bit của cổng 3. Số xung
hiện tại của Timer/Counter có thể đọc từ TH0 và TL0 hoặc TH1 và TL1.
Timer/Counter cũng phát ra ngắt với điều kiện là những ngắt đó không bị IE
chắn. Khi bộ đếm bị tràn (và lại quay về 0) thì ngắt đợc phát ra. Trạng thái của
các ngắt đó đợc quan sát qua SFR TCON.

RAM
8285
DATA BUS
ADDRESS BUS
CS
CS
CS
DECORDER
CS
Tín Hiệu ANALOG
Thiết Bị
Ngoại Vi
ADC
8085
Sơ đồ khối hệ vi sử lý 8 bít
bùi anh tuấn TĐH2-k45
9

BàI tập vi xử lý
1.Thiết kế bộ nhớ.
A0-12
VCC
VCC
16
17
18
19
15
13
12

23
22
20
27
2
6
5
4
3
7
8
9
10
6264
RAM 8Kx8
Bit

2764
ROM 8Kx8
Bit

D0
D1
D2
D3
D4
D5
D6
D7
A0

A11
A9
A8
A4
A5
A7
A6
A2
A3
A1
A0
PORT 0
CS0
PSEN
RW
RD
SC1
* Hệ VXL sử dụng 8Kx8bit bộ nhớ chơng trình ngoài và 8Kx8bit bộ nhớ
dữ liệu.
ROM 8Kx8bit: 2764
RAM 8Kx8bit: 6264
* Các chân dữ liệu AD
0
-AD
7
của RAM và ROM đợc nối với Bus dữ liệu
của hệ thống (cổng Port 0 của 8051)
* ROM: - Chân OE của ROM 2764 đợc nối với PSEN của 8051
- V
pp

22
23
24
25
7
17
14
15
8
18
19
20
21
16
12
2
3
5
4
28
1
27
26
A 2
A 1
A 0
RD_ADC
WR_ADC
INT 0
PORT 0

* Các đặc trng cơ bản của ADC 0809:
- Đầu ra có bộ điện 3 trạng thái để ghép trực tiếp vào kênh dữ liệu
của hệ VXL.
- Giải tín hiệu ra vào tơng tự SV khi nguồn nuôi là +5V. Có thể mở
rộng thang đo bằng các giải pháp kỹ thuật cho từng mạch cụ thể.
- Không đòi hỏi điều chỉnh 0.
- Thời gian biến đổi 100às.
- Sai số tổng cộng 1/2LSB.
- Sử dụng nguồn nuôi đơn +5V, hiệu suất cao.
- Đảm bảo sai số tuyến tính trang dải nhiệt đồ từ -40
o
C-+85
o
C.
b.Ghép nối
* ADC 0809 đợc ghép với hệ VXL đợc thể hiện nh trên hình vẽ.
bùi anh tuấn TĐH2-k45
11

BàI tập vi xử lý
- Đầu ra dữ liệu 2.1-2.7 đợc nối với Port 0 của 8051
- Các kênh vào anolog đợc nối với các đầu IN_0->IN7 tơng ứng của
ADC.
- Mỗi kênh vào có địa chỉ riêng do tổ hợp 3 bit ADD_A, ADD_B,
ADD_C quy định. 3 đầu địa chỉ này đợc nối tơng ứng với 3 dây A
0
, A
1
, A
2

9
7
12
13
14
15
C
B
A
E1
E2
E3
74HC138
VCC
A B C CS0 CS1 CS2 CS3 CS4 CS5 CS6 CS7 /CS
bùi anh tuấn TĐH2-k45
12

BàI tập vi xử lý
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0 1 1 1 1 1 1 1
1 0 1 1 1 1 1 1
1 1 0 1 1 1 1 1

/OE /LE IN OUT Chức năng
L L D Q
-1
L H D D
H X Hi-z Hi-z
Chốt đệm
Chốt đệm
Trở kháng cao
bùi anh tuấn TĐH2-k45
13

BàI tập vi xử lý
- Khi 8051 truy nhập bộ nhớ ngoài, luôn sử dụng địa chỉ 16 bit thông
qua cổng Port 0 và Port 2 -> Dùng chốt để tạo Address Bus 16 bit.
- Sử dụng chốt là IC 74LS373 có bảng trạng thái đợc thể hiện nh trên
hình vẽ.
Chân OE đợc nối đất.
Chân LE đợc nối với ALE của 8051. Xung chốt ALE đợc phát 2 lần
trong một chu kỳ máy nhằm chốt 8 bit thấp của địa chỉ đợc lấy ra từ Port 0
cộng với 8 bit cao của địa chỉ đợc xuất ra từ Port 2 tạo thành địa chỉ 16 bit.
5. Cổng vào ra - vi mạch PPI 8255.
- Vi mạch 8255 A là vi mạch cỡ lớn ISI thờng đợc gọi là mạch phối
ghép vào/ra song song lập trình đợc. Do khả năng mềm dẻo trong các ứng
dụng thực tế, nó là mạch phối ghép đợc dùng rất phổ biến cho các hệ VXL
8_16_32bit. 8255 có các chân đợc bố trí nh trên hình vẽ trong đó có chứa 24
đờng dẫn lớn vào ra đợc xếp thành 3 cổng song song (port A, port B, portC).
Một nửa của cổng Port C (PC4 . . . PC7) thuộc vào nhóm A còn nửa kia thuộc
nhóm B.
- Các chân của 8255 đợc ghép với hệ VXL nh trên hình.
+ Các chân vào dữ liệu từ D

* Xác định địa chỉ các thanh ghi, chế độ và chiều của cửa.
- Do dùng hai bit thấp nhất A0, A1 của Address Bus làm tín hiệu chọn
thanh ghi bên trong 8255 tên ta có.
PA có địa chỉ 00h (A1=A0=0)
PB có địa chỉ 01h (A1=0, A0=1)
PC có địa chỉ 02h (A1=1, A0=0)
Thanh ghi điều khiển có địa chỉ 03h (A1=1, A0=1)
* Xác định lỗi điều khiển:
Vì PA là cửa ra -> D4=0, chế độ 0 -> D5=D6=0
PB là cửa ra -> D1=0, chế độ 0 -> D2=0
1/2 C thấp là của ra -> D0=0
1/2 C cao là cửa ra -> D3=0. Vậy từ điều khiển chế độ là:
D7 D6 D5 D4 D3 D2 D1 D0
1 0 0 0 0 0 0 0 80h
bùi anh tuấn TĐH2-k45
15


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status