Thiết kế hệ vi xử lý 8 bit - Triệu Tuyên Hoàng

Download miễn phí Đề tài Thiết kế hệ vi xử lý 8 bit - Triệu Tuyên Hoàng





MỤC LỤC

 Giới thiệu chung .

 Mục lục

PHẦN 1 : THIẾT KẾ HỆ VI XỬ LÝ 8 BIT

 

CHƯƠNG 1 . Tìm hiểu yêu cầu công nghệ

 

CHƯƠNG 2 . Lựa chon hệ vi xư lý

 

CHƯƠNG 3. Lựa chọn thiết bị

1 - Thiết kế bộ nhớ

2 - Thiết kế cổng vào ra số

3 - Thiét kế vào ra tương tự

 4 - Ngoại vi logic

 

CHƯƠNG 4. Thiết kế sơ đồ chi tiết hệ thống

 

PHẦN 2 : XÂY DỰNG PHẦN MỀM

 

CHƯƠNG 1 : Lưu đồ thuật toán

1 - Tìm hiểu yêu cầu lập trình

2 - Bố trí dữ liệu

3 - Xây dựng lưu đồ thuật toán

 

CHƯƠNG 2 : Viết chương trình

 

 





Để tải tài liệu này, vui lòng Trả lời bài viết, Mods sẽ gửi Link download cho bạn ngay qua hòm tin nhắn.

Ket-noi - Kho tài liệu miễn phí lớn nhất của bạn


Ai cần tài liệu gì mà không tìm thấy ở Ket-noi, đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:



Phần chính của vi mạch là đơn vị xử lý trung tâm CPU gồm có :
Thanh ghi tích luỹ (A)
Thanh ghi tích luỹ phụ (B) dùng cho phép nhân và chia
Đơn vị lôgic số học ALU
Từ trạng thái chương trình PSW
4 bank thanh ghi
Con trỏ ngăn xếp SP cũng như con trỏ dữ liệu DTPR định địa chỉ cho bộ nhớ dữ liệu bên ngoài
Ngoài ra còn có bộ đếm chương trình PC , bộ giải mã lệnh , bộ điều khiển thời gian và logic
Đơn vị xử lý trung tâm nhận trực tiếp xung nhịp từ bộ tạo dao động được lắp thêm vào .
Bộ vi xử lý có một bộ chương trình bên trong dung lượng 8Kbyte , 128 byte RAM trong để có thể sắp xếp dữ liệu và thông tin điều khiển . Ngoài ra còn có 2 bộ định thời 16 bit Timer 0, Timer1, chúng cũng có thể được sử dụng như là các bộ đếm sự kiện. Có 4 cổng P0 áP3 8 bit độc lập với nhau được sử dụng cho những mục đích điều khiển rất đa dạng . Khi làm việc với bộ nhớ bên ngoài cổng P0 dùng để truyền nửa dưới của các địa chỉ nhớ được sử dụng giống như dùng cho các dữ liệu 8 bit .Sau đó qua cổng P2 sẽ diễn ra quá trình xuất ra nửa trên của các địa chỉ 8 bit . Cổng P1 và P3 có chứa mỗi cổng một cổng vào/ ra 8 bit có thể sử dụng cho những mục đích điều khiển khác nhau . ở cổng P3 còn có thêm các đường dẫn điều khiển dùng để trao đổi với một bộ nhớ bên ngoài , để đấu nối giao diện nối tiếp cũng như các đường dẫn ngắt bên ngoài.
Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng bộ làm việc độc lập với nhau.Bằng cách đấu nối với các bộ đệm thích hợp , ta có thể hình thành một cổng nối tiếp RS232 đơn giản . Tốc độ truyền qua cổng nối tiếp có thể đặt được trong một vùng rộng và được ấn định bằng một bộ định thời .
Sơ đồ khối của chip 8051
ãTổ chức bộ nhớ trong 8051
8051 có 2 khoảng địa chỉ độc lập cho bộ nhớ chương trình và bộ nhớ dữ liệu . 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 lưu 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ộn nhớ ngoài có thể đọc được nhờ tín hiệu chốt của chân PSEN.
Bộ nhớ dữ liệu độ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 :
Sau khi reset CPU bắt đầu thực hiện từ địa chỉ 0000H. Bảng vector ngắt bắt đầu từ địa chỉ 0003H đến 002BH. Mỗi một ngắt được xác định tại một vị trí cố định trong bộ nhớ chương trình . Khi một ngắt xảy ra PCU sẽ nhảy tới vị trí nơi mà nó yêu cầu phục vụ . Mỗi một vector ngắt có độ dài 8 Byte .Nếu chương trình này đủ ngắn thì ta chứa trong 8 Byte này , nếu chương trình đủ dài thì nó chứa một lệnh nhảy tới chương trình phục vụ .
4 Kbyte (hay 8 Kbyte , 16Kbyte ) phần thấp nhất của bộ nhớ chương trình có thể ở ROM trong hay ROM ngoài . Điều này được thực hiện bởi nối chân EA lên mức 1 hay mức 0 (nếu bằng 1 thì ROM ngoài , nếu bằng 0 thì ROM trong) . 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 . Nó sẽ phát ra Byte thấp của bộ nhớ chương trình giồng như địa chỉ phần thấp . P2 sẽ phát ra địa chỉ phần cao.
Địa chỉ của bộ nhớ chương trình luôn có độ rộng là 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 .
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.
c/ Cổng vào ra song song:
8051 có 4 cổng vào ra song song , cả 4 cổng đều có thể định
chiềuứng với nó là bộ điều khiển đầu ra và bộ đệm đầu vào .
Điều khiển đầu ra của cổng P0 , cổng P2 và bộ đệm đầu vào của cổng P0 được sử dụng cho việc xử lí bộ nhớ ngoài . Trong ứng dụng này đầu ra của cổng P0 là byte thấp của địa chỉ bộ nhớ ngoài . Đầu ra của cổng P2 là địa chỉ của byte cao.
Cổng 1,2,3 có các điện trở pull_up bên trong . Cổng 0 có đầu ra cực máng để hở . Mỗi đường I/O có thể sử dụng độc lập giống như đầu vào hay đầu ra . Khi sử dụng là đầu vào thì bộ chốt bit của cổng phải được lạp ở mức logic 1 , điều này sẽ đóng FET điều khiển đầu ra . Đối với cổng 1,2,3 thì mức logic 1 ở các chân được kéo lên mức logic cao bởi điện trở pullup trong , nhưng nó cũng có thể được kéo xuống mức logic thấp bởi nguồn ngoài .
Cổng 0 không có điện trở pullups ở phía trong . Điện trở FET pullups trong bộ điều khiển đầu ra P0 chỉ được sử dụng khi cổng đang phát ở mức logic cao trong suốt quá trình xử lí bộ nhớ ngoài . Trong các trường hợp khác thì FET pullups sẽ khoá.
Tất cả bộ chốt các cổng đều được viết ở mức logic 1 bởi chức năng reset. Khi mức logic 0 được viết vào bộ chốt nếu cổng muốn làm đầu vào thì mức logic 1 phải được viết vào nó.
Sơ đồ chân của 8051
ξ2. Bộ nhớ ngoài :
Sử dụng bộ vi xử lý 8051 đã có sẵn trong chip 128 byte RAM và 4K ROM, yêu cầu thiết kế hệ thống 8KB ROM (0000h-1FFFh) và 4KB RAM có địa chỉ tuỳ chọn. Ta có thể chọn các vi mạch nhớ như sau:
ROM trong 4KB địa chỉ vật lý từ : 0000H – 0FFFH
ROM ngoài 4KB 2732 địa chỉ vật lý từ : 1000H – 1FFFH
RAM ngoài 4KB 6232 địa chỉ vật lý từ : 3000H – 3FFFH
Địa chỉ của 8255:CWR,PA,PC : 5000H – 5003H
Địa chỉ của ADC 0809 (8 cửa vào) : 6000H – 6007H
. Bộ nhớ ngoài ROM
Trong vi điều khiển bộ nhớ chơng trình của nó có 4K byte ROM trong, với yêu cầu sử dụng thêm EPROM2732 có dung lợng lớn hơn. Đâ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. Với dung lợng 4K byte nh vậy nó có 13 đờ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à 2000 á2FFF
Sơ đồ chân của EPROM
EPROM 4KB 2732 (AMD)
. 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 4K byte, đồng thời cũng có 12 đường địa chỉ 8 đường dữ liệu. Nó có địa chỉ 3000á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 #CS1. 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 EPROM Sơ đồ chân của RAMM
EPROM 4KB 2732 (AMD) RAM 2KB 6116 (AMD)
ξ3. Thiết bị ngoại vi :
a . Thiết bị ngoại vi số (digital) :
1 .Ghép nối với 8255
Tổng quan IC 8255 (Intel)
8255A là một vi mạch ghép nối song song 8 bit, được dùng phổ biến trong các hệ vi xử lý để làm vi mạch ghép nố vào /ra song song. Nó có thể ghép nối trực tiếp với 8085, 8051, Z80 hay M6800 và cũng có thể ghép nối với các họ vi xử lý 8 bit.
8255 có 40 chân xếp thành 2 hàng đối xứng, nguồn nuôi 5V.Gồm:
Các cổng vào/ra: 3 cổng A, B, C. Trong đó, cổng A(từ PA0 đếnPA7) và cổng B(PB0 đến PB7) là cổng 8 bit, còn cổng Ccó thể chia thành 2 nhóm độc lập bằng chương trình: nửa cao(PC4 áPC7) và nửa thấp(PC0áPC3).
Các tín hiệu điều khiển:
RD : vi xử lý đọc số liệu từ cổng này.
A0, A1: lấy từ 2 bit địa chỉ của vi xử lý và tổ hợp tín hiệu của A0,
A1 sẽ xác định cho ta cổng vào thanh ghi điều khiển.
CS: (chi select) tín hiệu chon vỏ.
WR:viết số liệu vào cổng I/O.
RESET:dùng để đặt lại hệ thống.
GND:chân nối đất.
Vcc: nguồn nuôi +5v.
Các chân số liệu :(D0 áD7): 8 bit số liệu.
Sơ đồ chân 8255 (Intel interface) :
Cổng P3 của 8085 sẽ dùng 2 chân RD và WR để nối trực tiếp với 2 chân RD và WR tương ứng ở 8255A. Các đường A0, A1 được nối trực tiếp từ BUS vào 8255A, và được giải mã bên trong 8255A để chọn ra các cửa vào/ra A,B,C và thanh ghi điều khiển của 8255A.
Như vậy ta thấy rằng khi dùng 8255A, thì việc ghép nối giữa vi xử lý với các thiết bị phần cứng khác sẽ đơn giản hơn, ít phải dùng các mạch phụ hơn. Đây là một ưu điểm lớn của 8255A
Sơ đồ khối 8255 :
Bên trên là sơ đồ cấu trúc của 8255 . Thiết bị ngoại vi này có 3 chế độ hoạt động các chế độ này được lựa chọn bởi các chân chọn A0 , A1 . Ta có bảng chân lý như
A0
A1
Chế độ
0
0
CWR
0
1
PORT A
1
0
PORT B
1
1
PORT C
Dữ liệu vào ra thiết bị qua data bus D0-D7 quan hệ hai chiều. Các cửa ra của thiết bị có trạng thái tuỳ từng trường hợp vào thanh ghi điều khiển CWR (control word registor) cụ thể như sau :
CWR
1
MA1
MA0
A
CH
MB
B
CL
Các bit MA0 , MA1 đặt chế độ cho cửa ra nhóm A bao gồm A,CH
MA0
MA1
Chế độ
0
0
MODE 0
0
1
MODE 1
1
0
MODE 2
1
1
MODE 2
Các bit A,B,CH,CL thiết lập chế độ và ra cho các cổng tươ...

Music ♫

Copyright: Tài liệu đại học ©